#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<time.h>
#include<Windows.h>
void menu() {
printf("\t\t\t\t\t*************************************\n");
printf("\t\t\t\t\t*** 开始游戏>1 退出游戏>0 ***\n");
printf("\t\t\t\t\t*************************************\n");
}
void game() {
int r = 0;
int gess = 0;
r = rand() % 100 + 1;
while (1) {
scanf("%d", &gess);
if (gess < r)
printf("猜小了");
else if (gess > r)
printf("猜大了");
else
{
printf("恭喜你,猜对了\n");
Sleep(2000);
system("cls");
break;
}
}
}
int main() {
srand((unsigned int)time(NULL));
int choose = 0;
do {
menu();
scanf("%d", &choose);
switch (choose) {
case 1:
printf("进入游戏,请猜数字:");
game();
break;
case 0:
printf("退出游戏");
break;
default:
printf("输入有误请重新选择!\n");
Sleep(2000);
system("cls");
}
}
while (choose);
//写一个猜数字的代码 计算机随机出值,玩家猜数,进行反馈猜大猜小
//方法一:非模块化
/*int b = 0;
int i = 0;
int c = 0;
int ch = 0;
srand((unsigned int)time(NULL));
while (1) {
int a = rand()%100+1;
printf("请输入一个数字来猜一猜大小:");
for (i = 1; ; i++) {
scanf("%d", &b);
if (a < b)
printf("你猜大了,请重新猜");
else if (a > b)
printf("你猜小了,请重新猜");
else
{
printf("恭喜你,猜对了,一共猜了%d次!\n", i);
break;
}
}
printf("是否想重新玩,请输入(y/n)进行确认:");
while ((ch = getchar()) != '\n')
{
;
}
c = getchar();
if (c == 'y' || c == 'Y')
{
printf("确认成功,重新开始!");
}
else {
printf("看来您是不想玩了,再见!");
break;
}
}*/
//模块化 创建函数实现模块化
//菜单函数
return 0;
}
逐渐学习函数用法 对代码进行模块化,使得代码更加简洁思路清晰 容易更改
进行了优化 添加了 产生随机数srand rand 延迟执行 Sleep() 清屏 system("cls")