我试图预测这个程序的输出:
#include
void fun(int x)
{
if (x > 0)
{
fun(--x);
printf("%d\t", x);
fun(--x);
}
}
int main()
{
int a = 4;
fun(a);
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
该程序的输出是:
0 1 2 0 3 0 1
Run Code Online (Sandbox Code Playgroud)
我知道很难用术语来解释,但我想知道的是当4作为参数传递而不是第一个语句fun(4--)即fun(3)执行时,所以从这里做一个调用fun(3)或者3打印然后fun(3--)语句被执行,因为基本上我是对以下顺序感到困惑:
fun(--x);
printf("%d\t", x);
fun(--x);
Run Code Online (Sandbox Code Playgroud)
执行这3个语句.
int main(){
int N, i, j=0;
float MA, MB, asum=0, bsum=0, y;
printf("\number of pairs: "); scanf("%d", &N);
int a[N+1], b[N+1], c[N+1];
for(i=1; i<N+1; i++){
printf("\na%d",i); printf("=");
scanf("%f", &a[i]);
printf("b%d",i); printf("=");
scanf("%f", &b[i]);
printf("\n aSUM= %.6f \n",asum);
asum+=a[i];
printf("\n aSUM= %.6f \n",asum);
}
Run Code Online (Sandbox Code Playgroud)
这段代码的想法很简单.用户输入int或float值,然后将它们相加并输出为浮点值.然而,我立即获得了天文数字.铁.如果它试图添加0和7,它输出值1088421888.000000.到底他妈发生了什么??:d
#include<stdio.h>
void main(){
int i;
i = 011;
printf("%d",i);
}
Run Code Online (Sandbox Code Playgroud)
该程序输出为9.我不知道原因.请帮我弄清楚为什么这个程序提供这个输出.
我有
dic = {'value': '123','sort': 'desc','type': 'float'}
Run Code Online (Sandbox Code Playgroud)
我希望它变成字符串:
str = 'value=123&sort=desc&type=float'
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
谢谢
我正在编写一个返回指向数组数组的指针的函数.为了能够使用指针迭代数字,我将最后一个元素设置NAN为标记数组的结尾.
My Loop就像是
for(int* it=ptr;!isnan(*it);++it)
//print *it
Run Code Online (Sandbox Code Playgroud)
但它一直持续到它崩溃所以我写了一些测试代码:
int* test = new int[1];
*test = NAN;
cout << isnan(NAN) << endl;
cout << isnan(*test) << endl;
Run Code Online (Sandbox Code Playgroud)
结果是:
1
0
Run Code Online (Sandbox Code Playgroud)
我已经看到很多NAN在数组中用作"塞子"的例子.那为什么不起作用?
#include<stdio.h>
int main()
{
int a[3][4]={2,5,3,2,6,9,0,1,8,10,11,12};
printf("%u, %u, %u",a,a+1,&a+1);
return 0;
getch();
}
Run Code Online (Sandbox Code Playgroud)
此代码的输出是:
2293472, 2293488, 2293520
Run Code Online (Sandbox Code Playgroud)
有人能解释我怎么得到这个?
如果"//"适用于整数,为什么此函数会打印浮点数?
>>> minimum = int((a + b) - math.fabs(a-b))//2
>>> print(type(minimum))
Run Code Online (Sandbox Code Playgroud) 我对字符串对象的创建感到有点困惑.有人能告诉我,在下面两种情况下会创建多少个String对象?
1)
String s = new String("abc");
s = s + "xyz";
Run Code Online (Sandbox Code Playgroud)
2)
String s = new String("abc");
String s1 = "xyz";
Run Code Online (Sandbox Code Playgroud) 我有一个32-bit数字而不使用for循环,我想将m位设置为 n位.
例如:
m位可以是2nd或5th或9th或10th.
n位可以是 22nd或27或11th位.
我假设(m <n).
请帮帮我.谢谢
在C,C++和Objective-C中,我们可以使用.或->访问值或函数.两者之间有什么区别或缺点?