int k, j, s; for (k=2; k<6; k++, k++) { s=1; for (j=k; j<6; j++) s+=J; } printf ("%d\n&qu
答案:4 悬赏:0
解决时间 2021-03-16 05:18
- 提问者网友:無奈小影
- 2021-03-15 11:12
int k, j, s; for (k=2; k<6; k++, k++) { s=1; for (j=k; j<6; j++) s+=J; } printf ("%d\n" ,s); 求详解
最佳答案
- 二级知识专家网友:寂寞的炫耀
- 2021-03-15 12:23
int k, j, s;//定义整型变量k,j,s
//将k赋值为2,k++,k++:每次循环将k自增两次,相当于k=k+2,直到k<6为否(循环2次)
for (k=2; k<6; k++, k++)
{
s=1;//将s赋值为1(每次循环都赋值)<----注意在这里,第一次循环的15被1取代
for (j=k; j<6; j++) //将k赋值给j(k第一次是2,第二次是4),每次j++(递增j),直至j<6为否
s+=J;//这里应该是j而不是J,s+=j相当于s=s+j
}
printf ("%d\n" ,s); //输出s的值,并换行
别听上面乱说,s就是10
//将k赋值为2,k++,k++:每次循环将k自增两次,相当于k=k+2,直到k<6为否(循环2次)
for (k=2; k<6; k++, k++)
{
s=1;//将s赋值为1(每次循环都赋值)<----注意在这里,第一次循环的15被1取代
for (j=k; j<6; j++) //将k赋值给j(k第一次是2,第二次是4),每次j++(递增j),直至j<6为否
s+=J;//这里应该是j而不是J,s+=j相当于s=s+j
}
printf ("%d\n" ,s); //输出s的值,并换行
别听上面乱说,s就是10
全部回答
- 1楼网友:花一样艳美的陌生人
- 2021-03-15 14:22
执行第一次循环k=2,s=15清空;第二次循环重新装载s=1;当j=k=4,j<6;s=1+4+5;j=6,k=6结束循环
- 2楼网友:心与口不同
- 2021-03-15 13:31
当k=2时符合k<6,执行下面的语句进行叠加得s=1+2+3+4+5=15
两次k++后k=4符合k<6的条件执行下面的语句进行叠加得s=1+4+5=10
两次k++后k=6不符合k<6,终止循环
- 3楼网友:飘零作归宿
- 2021-03-15 12:34
由于s=1语句的存在,每次循环开始时s都被置为1,所以此题的外层循环只需要考虑最后一次循环,那么,最后一次循环时k的值是几呢?我们很容易看出,k一定是偶数,而k==6时则不再执行循环,则可知执行最后一次循环时k==4。 即,原代码段可转化为下面代码: int j,s; s=1; for(j=4;j<6;j++)s+=j; printf("%d\n",s); 这个简单吧1+4+5=10
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |