猜数字小游戏中 主要难点是生成随机数
生成随机数要用rand()
函数 rand()又需要 包含stdlib这个头文件
用rand()又需要初始化它
初始化它要用 srand(无符号数字)
我们可以利用时间轴来初始化rand 保证每次启动程序都会出现不同的值
也就是用
#include<stdio.h> #include<stdlib.h> #include<time.h> srand((unsigned)time(NULL)); int rnum = rand() % 100 1;
来生成1-100的随机数(NULL 是空指针)
完整程序
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<time.h> void meau() { printf("*****************n"); printf("* 1.play *n"); printf("* 0.exit *n"); printf("*****************n"); } void game() { int rnum = rand() % 100 1; int inum = 0; while(1) { printf("请输入>>"); scanf("%d", &inum); if (inum > rnum) printf("大了n"); else if (inum < rnum) printf("小了n"); else if (inum == rnum) { printf("对了n"); break; } } } int main() { int Iput = 1; srand((unsigned)time(NULL)); while (Iput) { meau(); scanf("%d", &Iput); switch (Iput) { case 1: game(); break; case 0: break; default: printf("输入错误n"); } } return 0; }