咱们这个游戏是个啥呢?程序中随机生成1~100范围的数,让玩游戏的人输入一个数字,判断是否与随机生成的数相同,大了提示一下,小了提示一下。对,就是这个简单的游戏,咱们今天就上我的脚步,一起写写这个代码,看看到底有多简单。
首先我们要知道这个程序分几个步骤:
0.选择程序(是否玩游戏)
1.打印菜单
2.判断随机数与自己输入的数字是否相同(重点)
3.结束程序
上代码啦
#include<stdio.h> #include<stdlib.h> #include<time.h> void menu() { printf("*********************************\n"); printf("********1.play 0.exit**********\n"); printf("*********************************\n"); } void play() { int input = 0; //输入的值初始化 int red = rand() % 100 + 1; //实现1~100的随机数 while (1) //死循环 { scanf("%d", &input); //用户的输入 if (input == red) { printf("恭喜你猜成功啦 ^-^ \n"); break; } else if (input > red) { printf("大了大了\n"); } else { printf("小了小了\n"); } } } int main() { int n = 1; srand((unsigned)time(NULL)); while (n) { menu(); //打印菜单 printf("请选择-->:"); //用户选择 scanf("%d", &n); //读取选择 switch (n) //选择语句 { case 1: play(); //选择1,玩游戏 break; case 0: //选择2,退出程序 printf("退出\n"); break; default: printf("输入错误,请重新选择\n"); //输入其它,提示输入错误 } } return 0; }
注意:
首先srand是一个函数,用于设置随机数生成器的种子,time(NULL)是一个函数,用于获取当前时间的秒数,它需要一个指向time_t类型的指针参数,如果传入NULL则返回当前时间的秒unsigned是一个关键字,表示无符号整数类型。
不知不觉就到了尾声啦,写的不是很好,不对的地方还请指点指点。