
a=p1==&m; //p1等于&k p1==&m; 为假。a=0
b=(-p1)/(p2)+7; // (-p1)/(p2)即-4/6等于0 b=7
a = 0;
b = 7;
解析:
a = p1 == &m;
根据运算符优先级,先运算 p1 == &m,条件为假,返回值为0,a为int型,转换为int即a = 0;
b= (p1)/(p2) + 7;
直接按指针目标,就是k/m +7结果是766……,b为int类型,转换时舍去小数,结果为7
结果为17
for(k=0;k<8;k+=2)
a+=(a+k);
这个循环是指的取a数组中下标为0,2,4,6的成员值累加,
得到的结果为5+7+1+4=17
不过,应该将数组a和变量a的名字定义成不同的,否则编译会报错
很简单,看一下吧
a++是先使用a(来比较)再赋值,而++b正好相当,是先赋值给b再进行比较
a=1;
b=0;
然后if(a++>++b)的结果是if(1>1)即if(0),注:这里0表示假,原因如上所述,而比较完之后肯定是a=2; b=1;
然后再因为if(0)执行b--,即b=0;
后面估计你也会明白了,a+=b;即为a=a+b;
a=2+0=2
第一次b=1,b%3==1成立 b+=3以后b%3==1还是成立的,直到b>=20才退出循环。比20大的最小模3为1的数字是22,这样总共要循环7次,也就a++了7次,所以a==8
以上就是关于执行以下程序后,a的值为____,b的值为______全部的内容,包括:执行以下程序后,a的值为____,b的值为______、c语言习题求解 执行以下程序后,a的值为 ,b的值为 。、执行以下程序段后,a的值是等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)