| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 678 人关注过本帖
标题:陷入困境,while无休止循环
只看楼主 加入收藏
awei062
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-9-30
收藏
 问题点数:0 回复次数:4 
陷入困境,while无休止循环
#include <stdlib.h>
#include <time.h>

main()
{
 int a[4],b[4];
 int i,j,k,count=0;
 int rightposition=0,rightdigit=0;
 srand(time(NULL));
 a[0]=rand()%10;
 do
 {
  a[1]=rand()%10;
 }while(a[0]==a[1]);
 do
 {
  a[2]=rand()%10;

  }while(a[0]==a[2]||a[1]==a[2]);
  do
  {
   a[3]=rand()%10;

  }while(a[0]==a[3]||a[1]==a[3]||a[2]==a[3]);

  printf("how time do you want to try:\n");
  scanf("%d",&k);
  do
  {
   count++;
   do
   {
    printf("input four diffrent numbers:\n");
    scanf("%d%d%d%d",&b[0],&b[1],&b[2],&b[3]);
    }while(b[0]==b[1]||b[0]==b[2]||b[0]==b[3]||b[1]==b[2]||b[1]==b[3]||b[2]==b[3]);
   for(i=0;i<4;i++)
    {if(a[i]==b[i]) rightposition++;}
    for(i=0;i<4;i++)
     for(j=0;j<4;j++)
      if(a[i]==b[j]&&i!=j) rightdigit++;
  }while(rightposition!=4&&count!=k);                 //这一步一直循环,不知道什么原因
 if(rightposition==4)
 printf("congtatulation!\n");
 else
 printf("game over!\n");
 for(i=0;i<4;i++)
 printf("%d",a[i]);
}
搜索更多相关主题的帖子: 困境 
2008-11-03 20:39
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
#include <stdlib.h>
#include <time.h>

main()
{
int a[4],b[4];
int i,j,k,count=0;
int rightposition=0,rightdigit=0;
srand(time(NULL));
a[0]=rand()%10;
do
{
  a[1]=rand()%10;
}while(a[0]==a[1]);
do
{
  a[2]=rand()%10;

  }while(a[0]==a[2]||a[1]==a[2]);
  do
  {
   a[3]=rand()%10;

  }while(a[0]==a[3]||a[1]==a[3]||a[2]==a[3]);

  printf("how time do you want to try:\n");
  scanf("%d",&k);
  do
  {
   count++;
   do
   {
    printf("input four diffrent numbers:\n");
    scanf("%d%d%d%d",&b[0],&b[1],&b[2],&b[3]);
    }while(b[0]==b[1]||b[0]==b[2]||b[0]==b[3]||b[1]==b[2]||b[1]==b[3]||b[2]==b[3]);
  rightposition=0,rightdigit=0;
   for(i=0;i<4;i++)
    {if(a[i]==b[i]) rightposition++;}
    for(i=0;i<4;i++)
     for(j=0;j<4;j++)
      if(a[i]==b[j]&&i!=j) rightdigit++;
  }while(rightposition!=4&&count!=k);                 //这一步一直循环,不知道什么原因
if(rightposition==4)
printf("congtatulation!\n");
else
printf("game over!\n");
for(i=0;i<4;i++)
printf("%d",a[i]);
}

2008-11-03 21:08
awei062
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-9-30
收藏
得分:0 
还是不行呀
2008-11-03 21:16
awei062
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2008-9-30
收藏
得分:0 
可以运行了
2008-11-03 22:04
baoxiang2007
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2008-10-30
收藏
得分:0 
没问题啊,可能你输入有问题吧,中间不能有逗号,用空格就行
2008-11-03 22:13
快速回复:陷入困境,while无休止循环
数据加载中...
 
   



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

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