标题:求解答,关于while循环。
取消只看楼主
闲客一位
Rank: 1
等 级:新手上路
帖 子:13
专家分:5
注 册:2022-2-4
结帖率:100%
 问题点数:0 回复次数:4 
求解答,关于while循环。
程序代码:
#include <stdio.h>
int main()
{
    int i=1,j=1,z;
    while(i<=9&&j<=9){
        z=i*j;
        printf("%d*%d=%d\n",i,j,z);
        j++;
        while(j=9&&i<=9){
            j=1;i++;break;
        }
    }
    return 0;
}

学到了循环嵌套,试着写了九九乘法表,但是结果是这样的。
调试的时候看到第一个while在做完j++就进入了下一个while,不理解为什么。while不是符合条件才会进入循环体吗?我该怎么用while解决呢?

1*1=1
2*1=2
3*1=3
4*1=4
5*1=5
6*1=6
7*1=7
8*1=8
9*1=9
搜索更多相关主题的帖子: 九九 int 循环 条件 while 
2022-02-16 14:52
闲客一位
Rank: 1
等 级:新手上路
帖 子:13
专家分:5
注 册:2022-2-4
得分:0 
拜托大佬
2022-02-16 15:00
闲客一位
Rank: 1
等 级:新手上路
帖 子:13
专家分:5
注 册:2022-2-4
得分:0 
噢,我忘了==
2022-02-16 15:02
闲客一位
Rank: 1
等 级:新手上路
帖 子:13
专家分:5
注 册:2022-2-4
得分:0 
回复 4楼 See_Sea
程序代码:
#include"stdio.h"
int main(){
    int i=1,j=1,z=0;
    while(i<=9&&j<=9){
        printf("%d*%d=%d\t",i,j,i*j);
        j++;
        while(j==10&&i<=9){
            j=1;i++;}
    }
    return 0;
}

谢谢提醒,这个是后来发现==错了之后改的。结果就没有错了。
程序代码:
#include"stdio.h"
int main(){
    int i=1,j=1,z=0;
    while(i<=9&&j<=9){
        printf("%d*%d=%d\t",i,j,i*j);
        j++;
        if(j==10&&i<9){
            j=1;i++;}
    }
    return 0;
}
后来想想还是觉得if比较合适又改的if。用for和do-while都做了一遍,觉得原来的第二个while里的i<=9改成了if里面的i<9比较适合。最后while就成了这样。
2022-02-18 11:29
闲客一位
Rank: 1
等 级:新手上路
帖 子:13
专家分:5
注 册:2022-2-4
得分:0 
回复 5楼 apull
感谢,这样输出比我书上看到的好多了。
2022-02-18 11:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-508366-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.134336 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved