100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 用C语言实现简单的猜数字小游戏

用C语言实现简单的猜数字小游戏

时间:2023-03-31 09:20:28

相关推荐

用C语言实现简单的猜数字小游戏

1.要求:

(1)游戏开始页面可以选择是否开始游戏;

(2)将系统产生的随机数控制在1~100;

(3)根据玩家输入数字的大小进行提示;

(4)玩家可以一直游玩,不用重复运行游戏。

2.设计思路及知识点:

(1)首页实现:使用 printf 将符号及相关提示输出即可;

(2)功能实现:

rand():生成一个 0~32767 的随机数,将随机数 ret = rand() %100 + 1;即将系统生成随机数进行处理,转变成1~100的随机数;然而,调用rand() 函数前需要使用srand() 对生成器进行设置;

srand():设置一个随机起点;如果将括号内写入具体数字,每次生成随机数将一样,括号里也需要一个随机值,这时可以使用“时间戳”来完成,但是需要强制类型转换为 unsigned int 。因为我们只需要获取一次时间戳,所以将此函数调用放在主函数的循环外。

time():获取时间戳。

while()循环:设置一个循环,让玩家可以一直猜数字,直到猜对为止。

scanf("%d",&i):定义一个变量 i ,用于存储玩家输入的数字。

if...else...:用于判断玩家所猜数字是否正确,若正确则使用 break 语句跳出循环,不正确则提醒玩家猜大了还是猜小了。

(3)游戏实现:

do while() 循环:因为程序需要先执行一遍再进入循环。

scanf():让玩家根据提示输入数字决定是否进入游戏。

switch()分支语句:根据玩家输入的选项进行相应的操作。

3.代码展示:

#define _CRT_SECURE_NO_WARNINGS#include <stdio.h>#include <stdlib.h>#include <time.h>void menu() {printf("************************\n"); //首页printf("******按'1'进入游戏*****\n");printf("*******否则将退出*******\n");printf("************************\n");}void game() {int i = 0;int ret = rand()%100+1; //将随机数控制在1~100while (1) {printf("请输入数字:");scanf("%d", &i);//玩家输入数字,然后程序进行比较if (i < ret) {printf("猜小了,大胆点!!!\n");}else if (i > ret) {printf("猜大了,收敛点!!!\n");}else {printf("恭喜你猜对了!!!\n");break;//猜对之后结束本次游戏,回到首页}}}int main(){int k = 0;srand((unsigned int)time(NULL));//获取一次时间戳,生成随机值do {menu();//开始菜单页面printf("是否开始游戏:");//选择是否开始游戏,‘1’开始,任意键退出scanf("%d", &k);switch (k) {case 1:game();//开始游戏,调用游戏功能函数break;default:printf("您已退出游戏\n");break;}} while (k == 1); //可循环进行游戏return 0;}

4.运行结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。