用C语言写的猜数游戏

标题@猜数游戏

计算机“想”一个数请人猜,分为难度等级1,2,3,难度1为1100的数字,难度2为11000,难度3为1~10000,如果猜对了,提示“Right!”;否则“Wrong!”,并告诉所猜的数是大还是小,直到猜对结束,最后给出猜测的次数。
#include<stdio.h>
#include<stdlib.h>//清屏操作所用到的头文件//
#include<time.h>//随机种子的产生所用到的头文件//
void nemu()//创建游戏菜单//
{
printf("-------------------------------------\n");
printf("-------------- 1.play ---------------\n");
printf("-------------- 2.exit ---------------\n");
printf("-------------------------------------\n");
}
void Game()//创建游戏函数//
{
int a=0;
int b=0;
int max=100,min=1;
int i=1;
int difficultyLevel=0;//设立难度等级//
printf(“请输入1~3难度等级\n”);
scanf("%d",&difficultyLevel);
switch(difficultyLevel)
{
case 1:
{
min=1;
max=100;
break;
}
case 2:
{
min=1;
max=1000;
break;
}
case 3:
{
min=1;
max=10000;
break;
}
default:
printf(“输入错误!请输入1~3难度等级!\n”);
break;
}
srand((unsigned)time(NULL));//强制类型转换,通过时间返回值来获取时间产生随机种子//
//time(),设置时间戳时间种子有符号的64位整数,返回现在的时间//
//随机种子发生变化,数字就会变化//
//srand是一个32位无符号的整数//
a=(rand()%(max-min+1))+min;//产生随机种子,先获取0max之间的随机数,然后对max-min+1取余,这样得到0max-min,再加上最小值min,就是需要的随机数//
do//循环游戏//
{
switch(difficultyLevel)
{
case 1:
{
printf(“请输入一个1~100之间的数字!\n”);
scanf("%d",&b);
break;
}
case 2:
{
printf(“请输入一个1~1000之间的数字!\n”);
scanf("%d",&b);
break;
}
case 3:
{
printf(“请输入一个1~10000之间的数字!\n”);
scanf("%d",&b);
break;
}
default:
return ;
break;
printf(“重新输入!”);
}
if(a>b)
{
i++;
printf(“Wrong!small!\n”);
}
else if(a<b)
{
i++;
printf(“Wrong!big!\n”);
}
else
{
printf(“Right!\n”);
printf(“您一共猜了%d次!\n”,i);
break;
}
}
while(a!=b);
}
int main(void)
{
int a=0;
do//循环菜单//
{
nemu();
printf(“请输入选项:\n”);
scanf("%d",&a);
switch(a)
{
case 1:
Game();
break;
case 2:
system(“cls”);//实现清屏操作//
break;
default://当用户输入不正确的数字时,很有必要//
printf(“您的输入有误!请重新输入!\n”);
break;
}
}
while(1);
system(“pause”);//停止游戏//
return 0;
}
新手小白一枚,这是我们实训的一道题,非常简单的猜数游戏,我在基础的猜数游戏上做了一点改动,因为疫情缘故,未能和小伙伴们一起完成,就当做纪念一下自己的第一次实训,加油!成为更好的自己!欢迎各位大神指点!

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值