C语言游戏小项目
除代码外均由李明女完成,本程序只是部分基本功能
游戏名称:猜数字
使用语言:C语言
规则:电脑随机生成一个1-30之间的数字,人和电脑分别猜一个数字,看谁的数字较为接近生 成的数字.
要求:人和电脑各有10000分,玩家输入赌多少分,分数上限为500分,非正常值分数,提示错误 并要求重新输入,直到输入正确范围为止.运行游戏和一局完了的时候要显示游戏菜单.
菜单内容有:
游戏帮助:说明游戏规则.
开始游戏:进入游戏.
查询记录:查询程序开始到现在的输赢记录.记录最多为50条,超过便将上面的分数挤下去. 记录的内容有电脑生成的数,玩家和电脑猜的数,以及赌注.
退出游戏:结束程序.
一局完了,赢或输,都要输出相应的激励或鼓励的话,赢或输,输出的话不少于4种,输出顺序为随机.
例如
第一局赢了,输出:太棒了,你赢了!
第二局赢了,输出:太好了,你怎么做到的!
输的情况也类似.
当一方分数小于等于0时,判定一方输.
当在菜单下输入9999时,开启无敌模式,即无论怎么猜都是玩家赢.
1、产生随机数的方法:
本函数用来取得随机数值。本函数会自动的从 0 到 RAND_MAX-1中取一个随机数。值得注意的是为使随机数的乱度最大,每次在取随机数之前最好使用 srand() 以配置新的随机数种子。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/*要用到上面几个.h文件。*/
int i;
time_t t;
srand((unsigned) time(&t));
i=rand() % 500; //0~500
2、fflush(stdin)
fflush(stdin)刷新标准输入缓冲区,把输入缓冲区里的东西丢弃
函数名: fflush
功 能: 清除一个流
用 法: int fflush(FILE *stream);
#include <stdio.h>
int main()
{ int a;
char c;
do
{
scanf("%d",&a);
fflush(stdin);
scanf("%c",&c);
fflush(stdin);
printf("a=%d c=%c"n",a,c);
}while(c!='N');
}
3、system("cls");
system("cls");的意思就是调用DOS下的清屏命令“cls”。
源代码:
#include <stdio.h>
#include <time.h>
void main()
{
int i,j;
int times =0;
char ch;
do
{
srand((int)time(0));
for(i=0;i<10;i++)
{
j=1+(int)(10.0*rand()/(20+1.0));
printf(" %d ",j);
}
i=100 + j%201;
do
{
printf("输入一个100~300的数%d",i);
scanf("%d",&j);
if(i > j)
{
printf("过小"n");
}
else if(i < j)
{
printf("过大"n");
}
else
{
printf("答对了"n");
break;
}
times++;
if(times > 50)
{
printf("你太笨了,不要再猜了"n");
break;
}
}while(1);
printf("你还继续猜吗?");
fflush(stdin);
scanf("%c",&ch);
}while ((ch == 'Y' )||( ch== 'y'));
//printf("%d",i);
}