| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 446 人关注过本帖
标题:[讨论]这个程序最后输入字符的语句为什么为顶用啊?
只看楼主 加入收藏
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
收藏
 问题点数:0 回复次数:4 
[讨论]这个程序最后输入字符的语句为什么为顶用啊?

#include<stdlib.h>
int same(int str[4])
{int i,j,m=0;
for(i=0;i<4;i++)
for(j=i+1;j<4;j++)
if(str[i]==str[j]) m=1;
return(m);
}
void ran(int str[4])
{int i;
do
{for(i=0;i<4;i++)
str[i]=random(9);
}while(same(str));
}
main()
{int i,j,a=0,b=0,count=0,str1[4],str2[4];
char c;
ran(str1);
loop: printf("\nplease input four numbers:");
do
{a=0; b=0;
for(i=0;i<4;i++)
{scanf("%D",&str2[i]);
if(str1[i]==str2[i]) a++;
}
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(str1[i]==str2[j]) b++;
b=b-a;
printf("\nA=%d,B=%d\n",a,b);
count++;
}while(count!=9&&a!=4);
printf("the correct answer is:");
for(i=0;i<4;i++)
printf(" %d",str1[i]);
if(a==4) printf("Congratulations");
else printf("you fail the game\n");
printf("would you try again(y/n)");
scanf("%c",&c);
if(c=='y') goto loop;
}
这个程序最后输入字符的语句为什么为顶用啊?

搜索更多相关主题的帖子: 语句 字符 顶用 输入 
2007-03-21 21:45
mayudong1
Rank: 2
等 级:论坛游民
威 望:1
帖 子:348
专家分:21
注 册:2006-4-18
收藏
得分:0 
goto只是个跳转,不过建议用do...while结构

2007-03-21 21:51
wh2000292
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-3-19
收藏
得分:0 
回复:(mayudong1)goto只是个跳转,不过建议用do......
我想知道为什么最后一个scanf没作用啊

2007-03-21 21:53
mayudong1
Rank: 2
等 级:论坛游民
威 望:1
帖 子:348
专家分:21
注 册:2006-4-18
收藏
得分:0 
应该是它把前面输入中的回车当作它的输入了吧

2007-03-21 21:56
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
收藏
得分:0 
fflush(stdin);

在scanf前加一句这试试,清除缓存
如果还不行,将scanf语句改成这样,在%c前加一空格

scanf(" %c",&c);

雁无留踪之意,水无取影之心
2007-03-21 22:50
快速回复:[讨论]这个程序最后输入字符的语句为什么为顶用啊?
数据加载中...
 
   



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

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