目录
前言
一、游戏要求:
二、游戏实现
1.游戏界面
2.游戏主体
3.主函数
4.运行结果:
总结
前言
前面我们学到了C语言随机数的相关知识,我们今天用这个知识做一个有趣的小游戏,会有一点函数的知识,不过后面会讲;
一、游戏要求:
1. 电脑⾃动⽣成1~100的随机数;
2. 玩家猜数字,猜数字的过程中,根据猜测数据的⼤⼩给出⼤了或⼩了的反馈,直到猜对,游戏结束。
二、游戏实现
1.游戏界面
我们可以用printf()来实现游戏界面的打印:
void menu()
{
printf("***********************\n");
printf("********1.play*********\n");
printf("********0.exit*********\n");
printf("***********************\n");
}
2.游戏主体
我们可以在函数里加入一个变量count来限制我们输入的次数;
void game()
{
int r = rand() % 100 +1;
int guess = 0;
int count = 5;
while (count)
{
printf("\n你还有%d次机会\n", count);
printf("请输入数字》:");
scanf("%d", &guess);
if (guess < r)
{
printf("猜小了\n");
}
else if (guess > r)
{
printf("猜大了\n");
}
else
{
printf("恭喜了,猜中了\n");
break;
}
count--;
}
if (count == 0)
{
printf("你失败了,正确值是:%d\n", r);
}
}
3.主函数
考虑到我们要先打印菜单,在等待用户选择,所以我们这里使用do while语句:
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
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;
}
4.代码示例:
void menu()
{
printf("***********************\n");
printf("********1.play*********\n");
printf("********0.exit*********\n");
printf("***********************\n");
}
void game()
{
int r = rand() % 100 +1;
int guess = 0;
int count = 5;
while (count)
{
printf("\n你还有%d次机会\n", count);
printf("请输入数字》:");
scanf("%d", &guess);
if (guess < r)
{
printf("猜小了\n");
}
else if (guess > r)
{
printf("猜大了\n");
}
else
{
printf("恭喜了,猜中了\n");
break;
}
count--;
}
if (count == 0)
{
printf("你失败了,正确值是:%d\n", r);
}
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
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;
}
4.运行结果:
总结
这章我结合了上一章的随机数知识,制作出了一个小游戏,我觉得,学习中也可以找到乐趣,不只是孩子,我们每个人都应如此;夏日炎炎,只为考研。