
3个回答
展开全部
18 这段代码
int x[]={2,3,4,5,6,7},*p=x;//初始化数组X,把数组首地址X赋值给P
int i,s=0; //i是计数用 s是求和用
for(i=1;i<5;i++)
s+=p[i++]; //i从1开始 所以第一个加数是X[1],循环后就是3+4+5+6=18
int x[]={2,3,4,5,6,7},*p=x;//初始化数组X,把数组首地址X赋值给P
int i,s=0; //i是计数用 s是求和用
for(i=1;i<5;i++)
s+=p[i++]; //i从1开始 所以第一个加数是X[1],循环后就是3+4+5+6=18
更多追问追答
追问
可是它提供的答案不是呀,它的选择就:① 20 ② 14 ③ 8 ④ 6
追答
你代码是不是打错了,for里面的i 是从几开始的?要是for(i=1;i<5;i++)就是18,你打错了话for(i=0;i<5;i++)就是20
展开全部
3+5=8,这种程序作为考题就是误导初学者,学习C语言的目的是规范化程序书写方法,只要规范了变量和程序的书写,很多问题根本不会出现。像这种在循环体内修改循环变量I的方式,只是为了考试++,--而存在的,在实际应用中极少有人用这种方式来编程,现在的考试题已经跑偏了,不专注程序理念的培养,而以偏门怪方为荣,为了考试而考试。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-04-18
展开全部
正确答案是③8,你要正确理解
第一轮循环之后i=3;
第二轮循环之后i=5,然后跳出循环
全部只执行两次循环,x[1]+x[3]=3+5=8
要记住在循环里变量i是一次循环自增两次的,你也要分清一下i++与++i的区别
第一轮循环之后i=3;
第二轮循环之后i=5,然后跳出循环
全部只执行两次循环,x[1]+x[3]=3+5=8
要记住在循环里变量i是一次循环自增两次的,你也要分清一下i++与++i的区别
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询