C语言 设有数组a的定义:

设有数组a的定义:inta[]={1,2,3,4};语句:a[3]=--a[0]?a[1]++:a[2]++;执行后,数组a的各元素依次为答案是:0,2,4,3为什么啊?... 设有数组a的定义:
int a[]={1,2,3,4};
语句:
a[3]=--a[0]?a[1]++:a[2]++;
执行后,数组a的各元素依次为
答案是:0,2,4,3 为什么啊?
展开
 我来答
慕容冰绡
2009-10-23 · TA获得超过1954个赞
知道小有建树答主
回答量:682
采纳率:50%
帮助的人:563万
展开全部
a[0]=1所以--a[0]=0,即条件语句的条件为false,所以相当于a[3]=a[2]++;也就是先把a[2]赋值给a[3],然后再自加1,即a[3]=a[2]=3
a[2]=a[2]+1=4,所以就是上面的结果了,计算的时候注意前自加和后自加的区别
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5120c2ff9
2009-10-23
知道答主
回答量:37
采纳率:0%
帮助的人:24.3万
展开全部
首先执行--a[0],所以a[0]=0;
然后因为a[0]=0 ,所以a[1]++这个不执行a[1]=2,执行a[2]++,
但由于++在后面,所以先执行a[3]=a[2],a[3]=3,最后算a[2]++,
所以a[2]=4,,,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式