下列程序的输出结果是【 】。 main() { int a[]={2 4 6} *ptr=&a[0]

大学专科 已帮助: 时间:2023-08-15 06:56:47

下列程序的输出结果是【 】。 main() { int a[]={2,4,6},*ptr=&a[0],x=8,y,z; for(y=0;y<;y++) z=(*(ptr+y)<x?*(ptr+y);x; printf("%d/n",z); }
请帮忙给出正确答案和分析,谢谢!

难度:⭐⭐⭐

题库:大学专科,电子信息,计算机类

标签:正确答案,请帮忙,下列

参考解答

用户头像

468***302

2023-08-15 06:56:47

正确答案:6
条件运算符的优选级高于赋值运算符,因此本题先计算关系表达式(*ptr+y)<x)*(ptr+y):x的值,再赋给变量z。当y=0时,*(ptr+y)=2,而x=8,(*(ptr+y)<x)条件为真,则整个条件表达式的值为*(ptr+y)=2,所以z=2;当y=1时,*(ptr+y)=4,(*ptr+y)<x)条件为真,则整个条件表达式的值为*(ptr+y)=4,所以z=4:当y=2时,*(ptr+y)=6,(*(ptr+y)<x条件为真,则整个条件表达式的值为*(ptr+y)=6,所以z=6;循环结束。因此输出z的结果为6。

上一篇 案情介绍:张某开了一家饺子店 王某声称自己吃了从张某处购买的饺子后 食物中毒得了急性肠胃炎 要求张某

下一篇 以下定义的结构体类型包含两个成员 其中成员变量info用来存放整型数据;成员变量link是指向自身结

相似问题