求助= = while镶嵌while只循环了一遍就结束了= =
c++吧
全部回复
仅看楼主
level 3
yxw1993
楼主
int a = 0, b = 0;
int c[4][5] = { 0 };
while (a < 4) {
while (b < 5) {
c[a][b] = (a + 1)*(b + 1);
++b;
}
++a;
}
for (auto &d : c)
for (auto &e : d)
cout << e<<' ';
cout << endl;
为什么这里while不在循环了呢= =
只循环了内部的就结束了= =
2015年11月30日 17点11分
1
level 3
仝Wv
你用for循环调试一下。
2015年11月30日 17点11分
2
level 12
yy435220791
内层while前b没置0
2015年11月30日 17点11分
3
level 12
六道鸣鸣
下面b=0
2015年11月30日 20点11分
4
level 2
maxer025
b为全局变量 程序执行顺序是先执行完while(b<5){}这层循环 再++a;因此执行完之后b的值已经等于5了 所以第二次执行while(a<4)的时候因(b<5)这个条件不成立 不再执行while(b<5)里的赋值语句 直接就再次++a;
2015年11月30日 22点11分
5
level 9
玄道迷月
g++编译失败
2015年12月01日 00点12分
6
level 11
儒雅的Rootkit
第一次循环完以后b已经是5了 自然不会再次进入循环
2015年12月01日 00点12分
7
level 11
儒雅的Rootkit
第一次循环完b已经是6了
2015年12月01日 00点12分
8
儒雅的小小清扬
2015年12月01日 01点12分
level 9
玄道迷月
自古3l出真相
2015年12月01日 01点12分
10
level 9
玄道迷月
内层b在=5后会一直保持5
2015年12月01日 01点12分
11
1