C语言编程轰炸,利用C语言编写一个数字炸弹小游戏

利用C语言编写一个数字炸弹小游戏

发布时间:2020-11-30 15:57:34

来源:亿速云

阅读:173

作者:Leah

这篇文章将为大家详细讲解有关利用C语言编写一个数字炸弹小游戏,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

具体内容如下# 内容

#include

#include

int main(){

//变量

char c_TheRequest = 1;//开始界面的字符

int in_Deltar = 1,in_EnteredNumber,in_Sig;//游戏中输入数字及其判定所需要的数字

int in_GivenNum = 0,in_An = 0,in_Bn = 0;//出的数字,和数字区间

int in_Mid1,in_Mid2;//用来交换An、Bn的值以满足An

int in_DistantAn,in_DistantBn;//An与Bn离num的距离

int in_TemporaryAnSaver,in_TemporaryBnSaver;//临时用于比较的An、Bn储存器

//开始界面

printf("If you just happen to open the game and do not have the intention to play it.\n");

printf("You can enter a q to quit or you can enter an s to start the game now!\n");

scanf("%c",&c_TheRequest);

getchar();

while (c_TheRequest != 's' && c_TheRequest != 'q'){

printf("Please do not enter a irrelevant letter.\n");

scanf("%c",&c_TheRequest);

getchar();

}

if(c_TheRequest == 'q'){

printf("So sad then.Hope you can play with me next time.\n");

getchar();

}

//游戏

if(c_TheRequest == 's'){

//输入“数字炸弹”

system("cls");

printf("(^ o ^) # *** NOW LET\'S PLAY! *** # (^ o ^)\nAttention!You can only enter numbers in the following steps.\nEnter to start.\n");

getchar();

system("cls");

printf("Game : The number boom!(Another Life.)\n");

printf("Rule:\n");

printf("The first player should enter a number.Then he should give to numbers and guarantee the number above is between them.\n");

printf("The rest should guess and enter the numbers.And the one who enter the exact number the first player entered\n");

printf("is supported to be the winner!\n");

printf("Please Enter a number to start the game.(You is ought not to expose it to other players.The number should bigger than 0.)\n");

printf("__________\b\b\b\b\b\b\b\b\b\b\b");

while(scanf("%d",&in_GivenNum) != 1 || in_GivenNum 

system("cls");

printf("Please Enter a NUMBER which is bigger than 0.\n");

printf("num:___________\b\b\b\b\b\b\b\b\b\b\b");

getchar();

}

system("cls");

//判定是否为数字

//输入“数字炸弹”所在的区间

printf("And where is the number?Please enter two numbers,and ensure that the number above is between them.\n");

printf("Additionally,there should be at least 100 numbers between the two numbers you will enter.\n");

do{

printf("num = %d\n",in_GivenNum);

printf("A:__________\b\b\b\b\b\b\b\b\b\b");

while(scanf("%d",&in_An)!=1){

printf("Please Enter a NUMBER which is bigger or smaller than the \"num\"!!!!\n");

printf("A:__________\b\b\b\b\b\b\b\b\b\b");

scanf("%d",&in_An);

getchar();

}

printf("B:__________\b\b\b\b\b\b\b\b\b\b");

while(scanf("%d",&in_Bn)!=1){

printf("Please Enter a NUMBER which is bigger or smaller than the \"num\"!!!!\n");

printf("B:__________\b\b\b\b\b\b\b\b\b\b");

scanf("%d",&in_Bn);

getchar();

}//记录An和Bn

if(!(( in_An  in_GivenNum ) || ( in_An > in_GivenNum && in_Bn 

system("cls");

printf("Your math is so poor.Enter a again!\nThe \"num\" must be between the two numbers.\n");

printf("Enter to restart.\n");

getchar();

getchar();

system("cls");

}//区间如果错误就会报错

}while(!(( in_An  in_GivenNum ) || ( in_An > in_GivenNum && in_Bn 

//排序

in_Mid1 = (in_An > in_Bn)?in_Bn : in_An;

in_Mid2 = (in_Bn > in_An)?in_Bn : in_An;

in_An = in_Mid1;

in_Bn = in_Mid2;

//开始猜数字

system("cls");

printf("Now the game starts!\n");

printf("The number is somewhere between %d and %d\n",in_An,in_Bn);

printf("Please enter the number.\n");

printf("__________\b\b\b\b\b\b\b\b\b\b");

while(in_Deltar != 0){

while(scanf("%d",&in_EnteredNumber)!=1){

printf("Please Enter a NUMBER!!!!\n");

scanf("%d",&in_EnteredNumber);

getchar();

}//判断是否为数字

//差的运算

in_Deltar = ((in_GivenNum - in_EnteredNumber)<0)?in_EnteredNumber - in_GivenNum:in_GivenNum - in_EnteredNumber;

in_Sig = in_GivenNum - in_EnteredNumber;

in_DistantAn = in_GivenNum - in_An;

in_DistantBn = in_Bn - in_GivenNum;

//判定差的大小

if(in_Deltar >= 1000){

if(in_Sig > 0)

printf("Too small!Next!\n");

else

printf("Too big!Next!\n");

}

else if(in_Deltar >= 100){

if(in_Sig > 0)

printf("Small.Next!\n");

else

printf("Big.Next!\n");

}

else if(in_Deltar >= 10){

if(in_Sig > 0)

printf("A little small.Next!\n");

else

printf("A little big.Next!\n");

}

else if(in_Deltar > 0){

printf("Almost there!NEXT!!!\n");

}

//临时存储,以便后面判断所给数字是否满足条件

in_TemporaryAnSaver = in_An;

in_TemporaryBnSaver = in_Bn;

if(( in_Deltar  0 ) || ( in_Deltar 

if(in_Sig > 0)

in_An = in_EnteredNumber;

else

in_Bn = in_EnteredNumber;

}//这是修改上下限

if((in_TemporaryAnSaver == in_An && in_TemporaryBnSaver == in_Bn) && in_Deltar){

system("cls");

printf("Do not cheat!\nYou should play it again.\n");

}//判定所猜的数字是否在区间内

if(in_Deltar == 0)

break;//猜中

printf("Enter to continue.\n");

getchar();

getchar();

system ("cls");

printf("Between %d and %d\n__________\b\b\b\b\b\b\b\b\b\b",in_An,in_Bn);//区间修正

}

printf("You are the one !!!");

getchar();

getchar();

}

}

总结

学习C的时候为了巩固所学知识而编得一个小游戏,内容全英文。

小编再为大家分享一段代码:#define _CRT_SECURE_NO_WARNINGS 1

#include

#include

#include

#include

void menu()

{

printf("###########################\n");

printf("### 1. play 0. exit ###\n");

printf("###########################\n");

}

void game()

{

//1.生成一个随机数

int ret = 0;

int guess = 0;

//拿时间戳来设置随机数的生成起点  //时间戳——(当前计算机的时间-计算机的起始时间(1970.1.1.0时0分0秒))=(xxxx)秒

//time_t

//srand((unsigned int)time(NULL));

ret=rand()%100+1; //生成随机数 0---0x7fff(32767)

//printf("%d\n",ret);

//2.猜数字

while (1)

{

printf("请猜数字: ");

scanf("%d", &guess);

if (guess > ret)

{

printf("big\n");

}

else if (guess 

{

printf("small\n");

}

else

{

printf("you are die\n");

break;

}

}

}

int main()

{

int input = 0;

srand((unsigned int)time(NULL));

do

{

menu();

printf("请输入>:");

scanf("%d", &input);

switch (input)

{

case 1:

game();

break;

case 0:

printf("退出游戏\n");

break;

default:

printf("输入错误\n");

break;

}

} while (input);

return 0;

}

关于利用C语言编写一个数字炸弹小游戏就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值