C语言 猜数游戏 程序 课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
■课题:猜数游戏
■要求:计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直至猜到。
界面要求:图形方式界面(使用C语言绘制界面)■软件环境:C-Free / VC++
下面是整个完成之后的程序,我将分部做介绍:
①:首先是主程序,我调用了stdio.h,stdlib.h,time.h这三个程序来为下面的编程服务;
#include
#include
#include
void main()
②:定义一些最基本的变量,以及调用色彩,使界面变得更为丰富多样化。
{
③:将文件保存于上述的文件夹中,从中我学会了保存文件。
freopen("in.txt","r",stdin);
system("color 9f");
int i,g,l,j=1;
long t;
char y;
while(1)
{
srand((unsigned)time(NULL));
t=time(NULL);
④:在完成这些最基本的工作后,接下来就是绘制界面的过程了。由于所学的只是有限,所以只能使用一些最基本的符号来绘制这个相对来说比较简单的界面了。
printf("\n");
printf(" |-----------------------------------|\n");
printf(" | ★☆欢迎进入猜数字游戏☆★|\n"); printf(" |-----------------------------------|\n");
printf(" |------ 有时间规定的-----|\n"); printf(" | 要努力加油哦|\n"); printf(" |-----------------------------------|\n");
printf(" | |\n"); printf(" |-----------------------------------|\n");
printf(" |-----------------------------------|\n");
printf("\n");
printf(" 这是一个猜数字游戏,由电脑随即产生一个数字.\n");
printf("\n");
printf(" 游戏分3个难度:1.简单2.中等3.困难\n"); printf("\n");
printf(" 请选择游戏难度:");
scanf( "%d",&l);
printf(" |-----------------------------------|\n");
⑤:界面制作完成之后,便是对主程序的编写了。在这里,我选择设置了三个难度,分别说简单、中等、困难。适用于不同的人群,体现出了和谐的一面。同时,还编辑设置了计时装置,当你在不同的时间完成相同难度的题目时,系统会自动根据你完成该题所用的时间对你的表现给予一定的评价。分别为:("你太厉害了!真聪明!你只猜了%d次,仅用时%d秒。\n",),("恭喜你!回答正确。你猜了%d 次,用时%d秒。\n",j,t),("对不起,时间到了,下次继续努力哦~\n"),如此人情化的处理,会在增加游戏趣味的同时,给参与游戏的人以鼓励和赞扬。同时,每当游戏者猜一个数字时,系统便会根据所猜数字的大小给出提示:你猜的数字大了。请重输入;或者你猜的数字小了。请重输入:。以方便游戏者更好的猜中结果,减少游戏过程中所用的时间以便取得一个更好的游戏成绩。下面就请读者细看下面的程序了,其主要思考都反应在了上面的陈述中了:
⑥:第一个最简单的游戏难度:
{
if(l==1)
{
printf("请输入你猜的数字(0-10):");
scanf("%d",&g);
i = rand() % 10;
t=time(NULL);
while(g!=i)
{
if(g>i)printf("\n你猜的数字大了。请重输入:");
if(g
scanf("%d",&g);
j++;
}
t=time(NULL)-t;
if(t<=2)
printf("你太厉害了!真聪明!你只猜了%d次,仅用时%d秒。\n",j,t);
else if(t>3&&t<=6)
printf("恭喜你!回答正确。你猜了%d次,用时%d秒。\n",j,t);
else
printf("对不起,时间到了,下次继续努力哦~\n");
}
⑦:第二个中等难度的游戏设计:
if(l==2)
{
printf("请输入你猜的数字(0-100):");
scanf("%d",&g);
i = rand() % 100;
t=time(NULL);
while(g!=i)
{
if(g>i)printf("\n你猜的数字大了。请重输入:");
if(g
scanf("%d",&g);
j++;
}
t=time(NULL)-t;
if(t<=10)
printf("你太厉害了!真聪明!你只猜了%d次,仅用时%d秒。
\n",j,t);
else if(t>10&&t<=20)
printf("恭喜你!回答正确。你猜了%d次,用时%d秒。\n",j,t);
else
printf("对不起,时间到了,下次继续努力哦~\n");
}
⑧:第三个最高难度的游戏设计:
if(l==3)
{
printf("请输入你猜的数字(0-1000):");
scanf("%d",&g);
i = rand() % 1000;
t=time(NULL);
while(g!=i)
{
if(g>i)printf("\n你猜的数字大了。请重输入:");
if(g
scanf("%d",&g);
j++;