c语言while 嵌套while 为什么不会

void main (){
srand(time(0));
int a[2][2];
int x=0,y=0;
while(x<2){
while(y<2){
a[x][y]=rand();
printf("%d ",a[x][y]);
y++;

}
printf("\n");
x++;
}

出来的结果只有一行 没有第二行 求教

因为你第二个while循环结束后y的值为2,你在进行下一次循环时,第二个while循环条件是不会成立,所以只输出一行,
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-09
在进行第2次外重循环时,由于y值已经不能满足条件y<2了所以无法执行嵌套循环,建议在外重循环开始,内重循环前面加上y=0;的语句。本回答被提问者采纳
第2个回答  2019-12-11
先执行
表达式1
如果1为假则跳出while,1为真则执行
表达式2,如果2为真则执行表达式3,2为假则执行表达式4

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网