一、说说小时候:
还记得,我小时候,成天跟着小伙伴疯玩,在那个时代,没有智能手机,没有王者农药,孩子们凑在一起,最喜欢的游戏除了丢手绢躲猫猫以外,猜中指游戏可谓独得宠爱,肯定有人问,啥是猜中指游戏??
//
二、猜中指游戏:
很简单,拿出一只手,这五根手指,不管你怎么扯,怎么掰,怎么打乱顺序都行,每个人中指只有一个,排好以后,拿另一只手紧紧握住,只留几个手指“头”在外面,让别人猜,屡试不爽,童年的友谊就这么紧紧地捏在一起。
//
现在,我上了大学,走上了程序员的道路,原来,猜中指游戏可以用程序模拟编出来(开心到飞起来)。
三、猜数字游戏:
它是由计算机随机产生一个数,相当于那时候的中指,然后玩家可以来猜这个数字,难度可以设置为不同的等级(初级,中级,高级),也就是“中指依然只有一个,但其余指头个数变多了”,也许是出于小时候对猜中指游戏的热爱和着迷,以至于我没事的时候,还会打开代码玩几把。
下面,我把自己写的源代码分享给大家,俗话说,独乐乐不如众乐乐 。
四、游戏源代码分享
#include<stdio.h>
#include <stdlib.h>
#include <time.h>
void menu1()//选择游戏是否开始菜单
{
printf("******************************\n");
printf("********* 1.play **********\n");//1为开始游戏
printf("********* 0.exit **********\n");//0为退出
printf("******************************\n");
}
void StartorNot()//再次询问是否真的要退出
{
printf("\n");
printf("********1.继续游戏***********");
printf("\n");
printf("********2.退出游戏***********");
printf("\n");
printf("请选择");
}
void menu2()
{
printf("##############################\n");
printf("######## 1.low #########\n");//初级
printf("######## 2.mid #########\n");//中级
printf("######## 3.high #########\n");//高级
printf("##############################\n");
}
int game1()
{
int input=0;
int num=rand()%101;
return num;
}
int game2()
{
int input=0;
int num=rand()%1000;
return num;
}
int game3()
{
int input=0;
int num=rand();
return num;
}
void game()
{
int difficult;
int input=0;
int num=0;
menu2();
printf("请选择游戏难度:〉");
//menu2();
scanf("%d",&difficult);
switch(difficult)
{
case 1:num=game1();break;
case 2:num=game2();break;
case 3:num=game3();break;
}
while(1)//死循环
{
printf("\n");
printf("请输入您所猜数字:>\n");
scanf("%d",&input);
if(input== num)
{
printf("\n");
printf("恭喜您,答对了\n");
printf("\n");
break;
}
else if(input > num)
{
printf("您输入数字偏大\n");
printf("再接再厉哟,请重新输入");
printf("\n");
}
else
{
printf("您输入的数字偏小\n");
printf("猜小了呢,重新输入吧");
printf("\n");
}
}
}
void remain()
{
int input2=0;
printf("************************************");
printf("\n");
printf("********您真的要退出游戏吗?*********");
StartorNot();
scanf("%d",&input2);
if(input2==1)
game();
if(input2==0)
return;
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));
printf("请选择是否开始游戏:>\n");
do
{
menu1();
scanf("%d",&input);
switch(input)
{
case 1:game();break;
case 0:remain();break;
default:printf("输入错误\n");break;
}
}while(input);
return 0;
}
五、进入界面,程序要求用户选择是否开始游戏,通过键盘输入:
(一)、若选择1,便开始玩游戏,选择游戏难度,初级,中级,还是高级
1、难度选择后,便开始猜数字,若猜小了、猜大了,系统都会提示用户重新输入
2、直到猜对以后,系统提示恭喜您猜对了,用户选择是否进行下一局。
(二)、若用户不想玩游戏,选择0,计算机提示是否真的退出游戏
1、若选择1,继续游戏,便则进入游戏界面,选择难度,开始游戏
2、若选择2,则按任意键退出游戏
(三)若最开始用户不选1.play,也不选0.exit ,则系统提示输入错误,提醒用户重新输入
五、程序分析:
对于该代码,我敢说,只要是学过C语言的人,在这里面没有不认识的语句,如果说有,那么应该就是rand()和srand,这是用于生成随机数的函数。另外,本函数主要采用switch(表达式)…case选择结构,if(表达式)…else判断结构,while(表达式)循环结构,算法相对简单,适合初学者。有利于激发初级学者的编程兴趣。
好了,到这里,又没有想玩一把的冲动勒??有的话要么就自己动手,把我这里的源代码拷下来,在VS环境下过把瘾,要么,就等过段时间俺学下前端,把它打包成软件,分享给大家吧。