用C语言写了个拆弹益智游戏
作为一个C语言还没入门的准大二学生,闲来无事,用C语言写了一个小游戏。游戏是猜一个八位密码,有五十次机会,每次输入后会告诉你对了几位,但不会告诉你是哪几位。我第一次看到这个游戏还楞了一会,知道方法以后其实很简单。感觉还挺有趣,就用C语言把他写了出来。代码无规范辣眼睛,大佬见谅。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
char a[8],b[8];
void randomPassword()//生成8位随机密码
{
int i;
srand(time(0));
for(i=0;i<8;i++)
a[i]='0'+(rand()%10);
}
int judge()//判断正确的位数
{
int i;
int count=0;
for(i=0;i<8;i++)
{
if(b[i]>'9'||b[i]<'0') return -1;
if(a[i]==b[i]) count++;
}
return count;
}
int main()
{
printf("勇敢的拆弹者你好,来做个游戏吧!这里有一个炸弹,解除炸弹需要输入正确的八位密码。你只有50次尝试的机会。系统会提示本次输入有几位密码正确,但不会告诉具体是哪几位。开始拆弹吧!\n");
int times;//剩余次数
int correct;//正确的位数
randomPassword();
for(times=50;times>0;times--)
{
printf("你还剩余%d次机会,请输入密码:",times);
gets(b);
correct=judge();
if(correct==8)
{
printf("恭喜你,密码正确\n");
break;
}
else if(correct==-1)
printf("你输入的密码位数不正确\n");
else if(correct!=8&×==1)
printf("很遗憾,拆弹失败!\n");
else
printf("该密码有%d位正确\n",correct);
}
return 0;
}