- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实训一用C语言设计一个猜数字游戏
实训一 用C语言一个猜数字游戏
这是一个模仿“文曲星”中猜数字游戏的小程序,其主要是随机生成4个不同的数字,然后由玩家键入数字,同时系统给予一定的提示帮助,当输入错误次数超过最大次数时游戏结束。
猜数字游戏是一个比较长见的游戏,其最基本的是生成几个不同的随机数,当玩家不能在规定次数内输入正确时系统自动结束游戏,并给出正确答案。并询问是否继续。
在实现过程中,应用到了时间函数来生成随机数并与10取余来生成一位随机数,然后再自定义一个函数来判断所生成随机数是否有重复,当无重复时做为机给定答案。如果所生成的数字有重复则重新生成。
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
4、程序清单参考
#include stdio.h
#include stdlib.h
#include time.h
#define MANY 4
#define TIME_OUT 8
/*定义变量及函数*/
int a,b,u ;
void game();
void ab(int answer[],int guess[]);
void same(int num[]);
/*主目录*/
void menu()
{
char choice,ch ;
do
{
do
{
system(cls);
printf(\t\t\t\t简单猜数字\n\n\n\n);
printf(\t\t\t\t1.开始游戏\n\n);
printf(\t\t\t\t2.使用说明\n\n);
printf(\t\t\t\t3.退出\n\n);
printf(\t\t\t请输入(1-3): );
fflush(stdin);
choice=getchar();
}
while(choice!=1choice!=2choice!=3);
switch(choice)
{
case 1 :
{
game();
break ;
}
case 2 :
{
system(cls);
printf(\t\t\t\t欢迎使用本程序\n\n\n);
printf(游戏说明:输入%d位数字,输入后会有提示XaYb,X表示有几个数字与答案数字相同且位置相同.\n,MANY);
printf(Y表示有几位数字与答案数字相同但位置不正确。\n);
printf(例如:答案数字是5764,如果输入5481,则会提示1a1b。\n);
printf(按任意键返回主目录……\n);
fflush(stdin);
ch=getchar();
break ;
}
case 3 :
{
printf(确定要退出吗?(y/n):);
fflush(stdin);
ch=getchar();
if(ch==y||ch==Y)exit(0);
else continue ;
}
}
}
while(1);
}
/*游戏部分*/
void game()
{
int guess[MANY],answer[MANY];
int times,i,m,j ;
int key;
time_t t ;
char wantplay,temp ;
srand((unsigned)time(t));
do
{
/*生成MANY个随机数*/
do
{
u=0 ;
for(i=0;iM
文档评论(0)