网站首页 > 基础教程 正文
C语言游戏小项目
C语言C++学习交流群 590750544,本程序只是部分基本功能,可以加群交流,群里有大量学习资源。
游戏名称:猜数字
使用语言: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);
}
猜你喜欢
- 2024-10-19 Python3 datetime模块指南:日期时间操作、时区管理与实战案例
- 2024-10-19 C++及数据结构复习笔记,类和对象很简单?为啥好多程序员还不会
- 2024-10-19 Linux时间和日期 linux 时间 表示方法
- 2024-10-19 C/C++的8种时间度量方式以及代码片段
- 2024-10-19 Python实战:使用 datetime模块处理时间日期的全方位指南
- 2024-10-19 C++编程的 42 条建议(四) c++编程100例
- 2024-10-19 mount with noatime - 合理关闭atime提高服务器性能
- 2024-10-19 linux下连续三次fork()——深度理解进程创建函数
- 2024-10-19 C函数time和clock的计时区别 c计时器函数
- 2024-10-19 win进程弹出Microsoft Visual C++ Runtime Library的解决办法
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)