| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1691 人关注过本帖
标题:新手求助,看了半天实在找不到原因,谢谢
取消只看楼主 加入收藏
hao123mh
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-16
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
新手求助,看了半天实在找不到原因,谢谢
原始题目:有abcde,5个不同的球,准备分给甲乙丙丁戊5人,已知甲不要a球,乙不要b球,丙不要c球,问共有多少种分法。

我的问题: 怀疑是continue的用法不对,程序陷入了死循环,但是我不知道为什么会陷入死循环。想请教大神告诉我原因,谢谢。(解题不是目的,参考书上有答案,主要是想知道为什么自己编的这段程序会死循环,所以不要告诉我其他的写法,只是想知道我这么写的问题所在,谢谢了)

程序代码:
#include<stdio.h>

void main()
{
    int a,b,c,d,e,i,j;//abcde 即代表甲乙丙丁戊;  abcde 五个球用01234代表
    int x[10];
    int n=1;
    
    for(i=0;i<10;i++)
        x[i]=1;

    for(a=0;a<5;a++)
    {
        if(a=0) continue;
        x[a]=0;     //防止重复

        for(b=0;b<5;b++)
        {
            if(b=1) continue;
            if(x[b])            
            {
                x[b]=0;        //防止重复
                for(c=0;c<5;c++)
                {
                    if(c=2) continue;
                    if(x[c])
                    {
                        x[c]=0;      //防止重复
                        for(d=0;d<5;d++)
                        {
                            if(x[d])
                            {
                                x[d]=0;   //防止重复
                                for(e=0;e<5;e++)
                                    n++;

                            }
                            x[d]=1;        //未找到解,重新赋1,下同
                        }                        
                    }
                    x[c]=1;
                }                            
            }
            x[b]=1;
        }
        x[a]=1;
        
    }

    printf("n=%d\n",n);

}


[此贴子已经被作者于2018-11-16 17:53编辑过]

搜索更多相关主题的帖子: 原因 continue int for 防止重复 
2018-11-16 17:51
hao123mh
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-16
收藏
得分:0 
回复 2楼 幻紫灵心
推不出来啊,可能我陷入思维误区或者一叶障目了。 我试了程序只能发现是因为陷入了死循环,但是我觉得逻辑没问题
2018-11-16 18:58
hao123mh
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-16
收藏
得分:0 
回复 4楼 C基础
天啊,感谢感谢,我就说哪里不对但是我自己看了半天没有反应过来。
2018-11-16 19:29
快速回复:新手求助,看了半天实在找不到原因,谢谢
数据加载中...
 
   



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

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