请高手帮我解答一下这个程序

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:40:58
小弟我C语言初学者,今天下午在电脑上运行书本上一道题目
以下程序片段运行后,a,b,c正确选项为__
int x=10,y=9;
int a,b,c;
a=(--x==++y)?--x;++y;
b=x++;
c=y;
A:a=8,b=8,c=11 B:a=9,b=8,c=11
C:a=8,b=11,c=11 D:a=8,b=8,c=10
在电脑上运行时加了main()
{ }
运行后没有结果输出,我又在句子末尾加上printf("%d,%d,%d,"&a,&b,&c);
运行后电脑显示为-62,-60,-58,我哪个地方出错了?
我没有把选项放进去,另外订正一下最后一个为 printf("%d,%d,%d,"&a,&b,&c); 刚才输入错了

int x=10,y=9; //简单定义赋值
int a,b,c; //....具体的++a跟a++ 看看书容易明白
a=(--x==++y)?--x;++y; //判断语句格式 a?b:c //a=(9==10)?8:11
//由于9不等于10 所以把11赋给了a;
b=x++; //上面X=8了所以赋值8个了b
c=y; //y=11赋值给了c
//结果 a=11,b=8,c=11. 答案AB接近一点 知道是我算错不
A:a=8,b=8,c=11 B:a=9,b=8,c=11
C:a=8,b=11,c=11 D:a=8,b=8,c=10

你不要告诉我你把A:a=8,b=8,c=11 B:a=9,b=8,c=11
C:a=8,b=11,c=11 D:a=8,b=8,c=10
也放进去了啊,这个是选择的答案啊,格式应该是:
main()
{
int x=10,y=9;
int a,b,c;
a=(--x==++y)?--x;++y;
b=x++;
c=y;
printf("%d,%d,%d,"&a,&b,&c);
}

a=(--x==++y)?--x;++y; 中--x后面是‘冒号‘

then a=(9==10)?8;11----->a=11;
b=9;
c=11

正确答案:11,9,11

没正确答案

printf("%d,%d,%d,"&a,&b,&c);
是输出a,b,c的地址,而且格式也不对
你改成printf("%d,%d,%d",a,b,c); 就可以看到正确答案了,ABCD4个都不对

printf("%d,%d,%d",a,b,c);你怎么输出地址了....