为了账号安全,请及时绑定邮箱和手机立即绑定

各位大神们,这个程序输出s是等于20,可是我左思右想就是想不透。

#include"stdio.h"
main()
{
int k,j,s=0;
for(k=1;k<15;k+=4)
for(j=3;j<=19;j+=4)
  s++;
printf("%d\n",s);







}

正在回答

1 回答


外循环for(k=1;k<15;k+=4) :从1开始,每次加4,即1、5、9、13共4层。内循环for(j=3;j<=19;j+=4) :从3开始,每次加4,即3、7、11、15、18共5层。循环嵌套的规则是,进入外循环一次,便执行所有的内循环。回到这个题,进入第一次外循环,所有5层内循环都执行,每执行一层内循环s的值自增1,故执行完所有5层内循环s的值变成5(亦即执行了一层外循环)。之后便结束内循环,进入第2层外循环,此时又重复执行所有5次内循环,当执行完所有5层内循环是,s的值又加5(到这个时候s的值变成10)......以此类推,外循环4层全部执行完之后,内循环共执行了4×5=20次,故s自增了20次,故s的值就是20

0 回复 有任何疑惑可以回复我~
#1

3f0 提问者

你真是个天才
2017-02-20 回复 有任何疑惑可以回复我~
#2

horbyn4zZ 回复 3f0 提问者

我也是大一,不过循环这种东西很简单,你多琢磨一下打印****(4*5的图案),九九乘法表等等,你会明白很多的
2017-02-20 回复 有任何疑惑可以回复我~
#3

3f0 提问者

我刚刚学,今天是第七天了
2017-02-20 回复 有任何疑惑可以回复我~
#4

3f0 提问者

就是为了考证
2017-02-20 回复 有任何疑惑可以回复我~
#5

horbyn4zZ 回复 3f0 提问者

哦哦,我第7天的时候还没你了解得这么多......
2017-02-20 回复 有任何疑惑可以回复我~
#6

3f0 提问者

很急的,3月25日就考试了,一天到晚都在学,因为时间关系,没办法,逼自己学。
2017-02-20 回复 有任何疑惑可以回复我~
#7

horbyn4zZ 回复 3f0 提问者

......加油了你。
2017-02-20 回复 有任何疑惑可以回复我~
#8

3f0 提问者

谢谢了
2017-02-20 回复 有任何疑惑可以回复我~
#9

3f0 提问者

谢谢了
2017-02-20 回复 有任何疑惑可以回复我~
查看6条回复

举报

0/150
提交
取消

各位大神们,这个程序输出s是等于20,可是我左思右想就是想不透。

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信