一. 游戏菜单的生成
void menu()
{
printf("********************\n");
printf("*****1.开始游戏*****\n");
printf("*****0.退出游戏*****\n");
printf("********************\n");
}
使用简单的printf函数输出游戏菜单。
二.游戏具体内容的实现
void game()
{
int ret = rand() % 100 + 1;
int guess = 0;
while (1)
{
printf("请猜数字\n");
scanf("%d", &guess);
if(guess<ret)
{
printf("猜小了\n");
}
if (guess > ret)
{
printf("猜大了\n");
}
if (guess == ret)
{
printf("恭喜你,猜对了\n");
break;
}
}
}
关键是随机数的生成,需要使用rand函数,要用srand函数设置随机数的生成器,可以把时间time(NULL)放到srand内使得生成的数随机。本代码主要是实现在1~~100内的随机数生成,降低了游戏难度。
三.游戏的执行
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
menu();
printf("请选择>:");
scanf("%d", &input);
switch(input)
{
case 1:
{
printf("开始游戏\n");
{ game();
break;
}
}
case 0:
{
printf("退出游戏\n");
break;
}
default:
{
printf("选择错误,请重新选择\n");
break;
}
}
} while (input);
return 0;
}
四.完整游戏代码
#include<stdlib.h>
#include<time.h>
#include<stdio.h>
void menu()
{
printf("********************\n");
printf("*****1.开始游戏*****\n");
printf("*****0.退出游戏*****\n");
printf("********************\n");
}
void game()
{
int ret = rand() % 100 + 1;
int guess = 0;
while (1)
{
printf("请猜数字\n");
scanf("%d", &guess);
if(guess<ret)
{
printf("猜小了\n");
}
if (guess > ret)
{
printf("猜大了\n");
}
if (guess == ret)
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
do
{
menu();
printf("请选择>:");
scanf("%d", &input);
switch(input)
{
case 1:
{
printf("开始游戏\n");
{ game();
break;
}
}
case 0:
{
printf("退出游戏\n");
break;
}
default:
{
printf("选择错误,请重新选择\n");
break;
}
}
} while (input);
return 0;
}