#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<iostream>
#include<windows.h>
#include<stdlib.h>
#include<time.h>
int c_gol = 0;
void menu()
{
printf("********* guess game ********\n");
Sleep(100);
printf("*****************************\n");
Sleep(100);
printf("********* 1. play *********\n");
Sleep(100);
printf("********* 0. exit *********\n");
Sleep(100);
printf("*****************************\n");
Sleep(100);
}// 打印出我们的菜单界面
void prize()
{
printf("\n");
printf(" ************ \n");
printf(" ****************** \n");
printf(" *********** ************ \n");
printf("********* *********\n");
printf(" *********** ************ \n");
printf(" ****************** \n");
printf(" ************ \n");
printf("\n");
}// 成功猜对数字获得奖励
void game()
{
//猜数字游戏的实现
// 1. 生成随机数
// rand函数返回从0到rand_max(32767)范围内的一个伪随机整数。
// 使用srand函数对伪随机数生成器生成种子。
int ret = rand()%100 + 1;//范围就是100
//printf("%d\n", ret);
// 2. 猜数字
int guess = 0;
int i = 0;
int a = 0;
int b = 0;
while (1)
{
//printf("猜数字");
scanf("%d", &guess);
if (guess < ret)
{
printf("猜小了\n");
i++;
a++;
printf("第%d次guess\n", i);
}
else if (guess > ret)
{
printf("猜大了\n");
i++;
b++;
printf("第%d次guess\n", i);
}
else
{
printf("恭喜你,猜对了\n");
i++;
printf("第%d次guess\n", i);
prize();
printf(" 获得第%d个硬币 \n", c_gol);
break;
}
}
printf("猜小%d次 猜大%d次 总共%d次\n", a, b, i);
}
// 主体
int main()
{
srand((unsigned int)time(NULL));//srand函数接受的是unsigned int类型,
//time(null)/time(0)返回的就是现在的时间戳
int input = 0;
do
{
c_gol++;
menu();// 打印菜单
printf("请选择:>");
scanf("%d", &input);
switch (input)
{
case 1:
printf("猜数字\n");
game();
break;
case 0:
printf("退出游戏\n");
break;
default:
printf("选择错误,请重新选择\n");
break;
}
} while (input);
return 0;
}
[C语言]猜数字的编写
于 2023-12-26 08:43:29 首次发布