3.21 以下程序的输出结果是 main() { int a=21,b=11; printf("%d\n",- -a+b
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/07/17 21:56:43
3.21 以下程序的输出结果是 main() { int a=21,b=11; printf("%d\n",- -a+b,- -b+a); }
A)30
B)31
C)32
D)33
A)30
B)31
C)32
D)33
选A、30
现场编译得出的答案
c语言是一门科学,要注重实验;
会得出30 的原因是printf函数中,输出表达式的运算顺序是由右到左的,先计算后面的(--b+a),此时,b的值自减1,变为10,再计算前面的(--a+b).对于--a和a--的区别应该不用我说了吧.所以最后结果是30.
而编译程序只是在检查printf中的格式化参数后才确定有几个输出项,并按次序输出,所以最后输出的是(--a+b)的值
现场编译得出的答案
c语言是一门科学,要注重实验;
会得出30 的原因是printf函数中,输出表达式的运算顺序是由右到左的,先计算后面的(--b+a),此时,b的值自减1,变为10,再计算前面的(--a+b).对于--a和a--的区别应该不用我说了吧.所以最后结果是30.
而编译程序只是在检查printf中的格式化参数后才确定有几个输出项,并按次序输出,所以最后输出的是(--a+b)的值
3.21 以下程序的输出结果是 main() { int a=21,b=11; printf("%d\n",- -a+b
以下程序的输出结果是 main() { int a=21,b=11; printf("%d\n",- -a+b,- -b
以下程序的输出结果是( ).main( ){ int a=011;printf("%d\n",++a);} A) 12
以下程序运行后的输出结果是?main(){int a=1,b=2,c=3;if(c=a)printf("%d\n",c)
以下程序运行后的输出结果是 main() {int a,b,c; a=1;b=3;c=5; printf(“%d,%d\
以下程序运行后的输出结果是 main() {double a; int b; b=a=10/4; printf(“%d,
以下程序的输出结果是______. main() { int a=0; a+=(a=8); printf("%d\n",
4.下列程序的输出结果是___B____.main() { int a = 011; printf( "%d\n",++
以下程序的输出结果是 int a=5,b=4,c=6,d; printf("%d\n",d=a>b?(a>c?a:c)b
以下程序的运行结果是(D ).void main( ) { int a; if(a=6) printf("%d\n",a
int a=5,b=7; printf(“%d,”,--a+b++); 程序的输出结果是_________
以下程序的运行结果是.main(){int k=4,a=3,b=2,c=1;printf(“%d\n”,k