求讲解输出 #include void main() { int x; printf("%d\n",(x=5*8,x*2
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/29 03:35:41
求讲解输出 #include void main() { int x; printf("%d\n",(x=5*8,x*2,x+20)); }输出结果为60
这个考的是逗号操作符
逗号表达式的结果是其最右边表达式的值,计算方式由左至右依次计算
首先x=40
然后x*2(对x不产生影响)
最后输出x+20,即为60
再问: #include void fun(int i1,int i2,int i3) {printf("%d %d %d",i1,i2,i3);} int main() {int i=10; fun(i++,i++,i++); return 0; } 求讲解这个程序
再答: i++是先取值操作后再自增 在vc的编译环境下其结果是10 10 10 从反汇编之后的代码来看,在传参的时候将i的值压栈3次之后才进行的自增,也就是说,传参的时候都是10。 如果改成++i,++i,++i则结果会根据编译器不同有所变化
逗号表达式的结果是其最右边表达式的值,计算方式由左至右依次计算
首先x=40
然后x*2(对x不产生影响)
最后输出x+20,即为60
再问: #include void fun(int i1,int i2,int i3) {printf("%d %d %d",i1,i2,i3);} int main() {int i=10; fun(i++,i++,i++); return 0; } 求讲解这个程序
再答: i++是先取值操作后再自增 在vc的编译环境下其结果是10 10 10 从反汇编之后的代码来看,在传参的时候将i的值压栈3次之后才进行的自增,也就是说,传参的时候都是10。 如果改成++i,++i,++i则结果会根据编译器不同有所变化
求讲解输出 #include void main() { int x; printf("%d\n",(x=5*8,x*2
void main() {int x=4;if(x++>=5)printf("%d/n",x);else printf(
#include void main ( ){int x;x=4;printf("%d",x);}编译:--------
#include int main(void) { float x,printf("输入x:\n"); scanf("=
# include void main( ) { int x = 4 ; do { printf( " %d \t "
void main() {int m=3,n=4,x; x=-m++; x+=8/++n; printf("%d\n",
下列程序的输出是( ).main() {int x; printf("%d\n",(x=3*5,x*2,x+10));}
void main() { int x=0,y=5,z=3; while() printf("%d,%d,%d\n",x
#define f(a,b,x) a*x+b #include void main() printf("%d,%d\n"
#include "stdio.h"void main(){int x=3,y=5; if (x=y-4) printf
#include"stdio.h"main(){int a=-1 printf("%d,%u,%o,%x\n",a,a,
下面程序的输出结果是() #include main() {int x=10,*p=&x; printf("%d,%d"