搜索
查看: 2025|回复: 3
打印 上一主题 下一主题

for循环嵌套问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-3-18 22:41:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
        int a=0;
        int b=0;
        int c=0;
        int n=0;
        int num=0;
        printf("所组成的各位不相同的三位数:\n");
        for(a=1;a<10;a++)
        {
                for(;b<10;b++)
                {
                        for(c=0;c<10;c++)
                        {
                                if(a==b||a==c||b==c)
                                {
                                        continue;
                                }
                                num=a*100+b*10+c;
                                printf("%d ",num);
                                n++;
                                if(n%5==0)
                                {
                                        printf("\n");
                                }
                        }
                }
        }
        printf("\n");
        return 0;
}


第二层循环的第一表达式省略 会导致第一层循环无法循环,同理 如果第三层循环第一表达式省略,会导致第二 第一层循环都无法循环 为什么啊 求大神赐教

最佳答案

查看完整内容

因为每次都要初始化 程序是这样子执行的 100 101 102 ... 109 内层的第一次到此结束,然后b+1 = 1 c这时候是10,所以需要重新初始化到0
沙发
发表于 2013-3-18 22:41:32 | 只看该作者
因为每次都要初始化
程序是这样子执行的

100
101
102
...
109

内层的第一次到此结束,然后b+1 = 1
c这时候是10,所以需要重新初始化到0
板凳
 楼主| 发表于 2013-3-19 21:45:16 | 只看该作者
rosynirvana 发表于 2013-3-19 11:48
因为每次都要初始化
程序是这样子执行的

恩  非常感谢
地板
发表于 2013-4-19 20:48:53 | 只看该作者
应该是初始化b的位置不对吧,b循环完第一次就没有再继续赋值了!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表