
int n=0; // 这句是这样吧
while(n++<=2); // 执行循环,循环条件是n++<=2;先进行n比较再++
printf("%d",n) ; // 上述条件退出判断是n=3,n<=2不成立所以退出,然后在++,所以输出是4
运行结果为:
2
4
p=a; //指针p指向数组a的首地址
k=&p;//k指向p的地址,也就是指针的地址,所以k也就是指向p指向的地址
printf("%d\n",(p++));
对于p++处理,是先将当前p的值代入表达式进行计算,再进行++处理,
所以先输出的是p当前指向的地址中的数据,也就是a[0]的值,即2
再进行++处理,也就是将p指向p的下一个地址,也就是a[1]的地址
又由于k指向p的地址,也就是指针的地址,所以k也就是指向p指向的地址,
所以在printf("%d\n",(p++)); 处理完毕后,k也就指向了a[1]的地址
所以:
printf("%d\n",k);
输出的是a[1]的值,也就是4
所以,输出结果为:
2
4
为什么你不给点分呢要我做一些无用功
=====================================================
数据结构,队列
从程序来看,其队列是
(头)h,r,c,h,a(尾)
其中h,r已经被d出队列了(执行了两次out_queue(q))也就是说,现在的队列就只有c,h,a
加上最后输出一个变量x,
所以输出的是
char
in_queue(q,'r');和
in_queue(q,y)没什么不同其函数原型都是
in_queue(sequeue
q,
char
c)
'r'是char型的常量,y是char型的变量
x
=
out_queue(q);就是把队列的头元素d出队列,并存放在变量x中
至于为什么要进行这一步printf("%c",y),如果你不喜欢进行这一步,你大可不必进行惟一的区别就是,你看不到结果是什么而已
m[]={4,9,10,6,13,5}
m[0]=4 ,m[1]=9 ,m[2]=10 ,m[3]=6 ,m[4]=13, m[5]=5
i=1
循环为9-2=7,10-2=8,6-2=4,为4时不再循环。
所以,4,7,8,4,13,5
4
n=0,n++是先用0去和2比,然后再加1,n变成1。
n=1,n++<=2,1<=2成立,n+1变成2
n=2,n++<=2,2<=2成立,n+1变成3
n=3,n++<=2,3<=2不成立,n+1变成4,循环结束
以上就是关于程序段运行的结果是多少 int 0; while(n++<=2); printf("%d",n)全部的内容,包括:程序段运行的结果是多少 int 0; while(n++<=2); printf("%d",n)、程序运行的结果是、写出下列程序段的运行结果等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)