实现猜数字的游戏:
要用程序完成以下几步:
1、电脑自动生成随机数(1到100之间的数字)
2、玩家输入自己猜的数字(输入0 —— 100之间的数字)
3、猜对了就输入:猜对了
猜错了就输入:猜大了,或者是猜小了
4、可以多次玩这个游戏。
任何程序都要从main函数开始去看:
找到下面程序中的main函数从那里开始分析:
#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>#include <time.h>void menu() //void 表示无返回值 —— 就不需要用到return{printf("########################\n");printf("##### 0、退出游戏 ######\n");printf("##### 1、玩游戏 ######\n");printf("########################\n");}void game(){//生成随机数int ret = rand() % 100 + 1;//生成的随机数对100取余 —— 是0到99之间数 —— 加一之后范围就变成了1到100//猜数字int guess = 0;printf("请输入所猜数字:");while (1)//这个循环完成 —— 猜数字 —— 猜对了就打印:猜对了 —— 猜错了就输入:猜大了,或者是猜小了{scanf("%d", &guess);if (guess < ret){printf("猜小了\n");}else if (guess > ret){printf("猜大了\n");}else{printf("恭喜你!猜对了\n");break;}}}int main(){int input = 0;srand((unsigned int)time(NULL)); //生成随机数要用到rand()//用rand()要调用srand()//srand()其中()中要用到不断变化的量 —— 用时间戳来做不断变化的量 —— 时间戳可以用time()函数来实现//(unsigned int) —— 是强制类型转换//srand()函数不用引用多次,所以放在循环的前面就可以了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;}