
一.游戏前置
向其他游戏一样,在游戏开始前,我们需要一个菜单让玩家进行选择
所以我们需要以下功能
1.一个能让玩家进行选择的函数(switch)
2.玩完一次后还想玩第二次(do while)
3.一个简易的菜单(menu)
int main()//主函数
{
int input = 0;
printf("猜数字,1--100之间\n");
//do...while循环
do
{
menu();//菜单函数
printf("请选择数字:>");
scanf("%d", &input);
switch (input)
{
case 1:
game();//游戏函数
break;
case 0:
printf("已退出游戏\n");
break;
default:
printf("输入错误,请重新输入\n");
break;
}
} while (input);
return 0;
}
菜单函数
void menu()
{
printf("*******************************\n");
printf("******* 1.开始游戏 *******\n");
printf("******* 0.退出游戏 *******\n");
printf("*******************************\n");
}
二.游戏实现
1.让电脑生成随机数
void game()
{
srand((unsigned int)time(NULL));
int ret = rand() % 100;//生成100以内的随机数
}
2.让玩家重复输入
void game()
{
int n = 0;
srand((unsigned int)time(NULL));
int ret = rand() % 100;
while (1)
{
printf("猜数字:");
scanf("%d", &n);
if (n > ret)
{
printf("猜大了\n");
}
else if (n < ret)
{
printf("猜小了\n");
}
else
{
printf("猜对了\n");
break;
}
}
}
加入while循环,让玩家一直猜,这里代码很简单,相信大家一看就懂
3.输赢判断
我们这里设置如果猜了5次还没猜中就输了。
如果在5次里猜中就胜利
这里就是一个简单的猜数字游戏啦
#include<stdio.h>
void menu()
{
printf("*******************************\n");
printf("******* 1.开始游戏 *******\n");
printf("******* 0.退出游戏 *******\n");
printf("*******************************\n");
}
void game()
{
int count = 0;
int n = 0;
srand((unsigned int)time(NULL));
int ret = rand() % 100;
while (1)
{
printf("猜数字:");
scanf("%d", &n);
if (n > ret)
{
printf("猜大了\n");
}
else if (n < ret)
{
printf("猜小了\n");
}
else
{
printf("猜对了\n");
break;
}
count++;
if (count > 5)
{
printf("再接再厉哦\n");
break;
}
}
}
int main()//主函数
{
int input = 0;
printf("猜数字,1--100之间\n");
//do...while循环
do
{
menu();//菜单函数
printf("请选择数字:>");
scanf("%d", &input);
switch (input)
{
case 1:
game();//游戏函数
break;
case 0:
printf("已退出游戏\n");
break;
default:
printf("输入错误,请重新输入\n");
break;
}
} while (input);
return 0;
}