在家学习一本用c写游戏书!看了第一个游戏!觉得简单就自己写了!
想不到论坛还可以用手机登!还能发附件!
程序代码:#include "stdio.h"
#include "stdlib.h"
#include "windows.h"
#include "time.h"
int Answer[4];
int InitGame();
int Random(int n);
void GameProc(int n);
void main()
{
int Num;
InitGame();
printf("%d%d%d%d\n",Answer[0],Answer[1],Answer[2],Answer[3]);
while(TRUE){
printf("如果你是猪一样的输入几个相等的数字和输入跟多字数,反正也不可能赢的,那你就是一个大PIG\n");
printf("请输入你认为可能的数字:");
scanf("%d",&Num);
GameProc(Num);}
}
int InitGame()
{int temp=0;
srand(time(0));
printf(" 此游戏为猜字游戏 \n");
printf(" 游戏规则如下: \n");
printf("通过电脑随机出题(四个数字(0~9)):猜出数字并有相应的回馈信息\n 比方:题目9542 你猜是9528 就会反馈2A1B");
printf("A代表数字正确并且位置也正确,B代表数字正确但位置不对\n");
while(temp<3)
{ if(temp==0)
{printf("电脑正在出题中·");
Sleep(500);
printf("\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b");
}
if(temp==1)
{printf("电脑正在出题中··");
Sleep(500);
printf("\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b");
}
if(temp==2)
{printf("电脑正在出题中···\n");
}
temp++;
}
for(temp=0;temp<4;temp++)
{
oo:Answer[temp]=rand()%9;
if(temp>0)
if(!Random(temp))
goto oo;
}
return TRUE;
}
int Random(int n)
{int temp=n;
n=n-1;
for(;n>=0;n--)
if(Answer[temp]==Answer[n])
return FALSE;
return TRUE;
}
void GameProc(int n)
{int Num[4];
static int _n=0;
int Compar;
int ResultA=0;
int ResultB=0;
int Temp;
int Total=0;
Num[0]=n/1000;
Num[1]=(n-Num[0]*1000)/100;
Num[2]=(n%100-n%10)/10;
Num[3]=n%10;
for(Temp=0;Temp<4;Temp++)
for(Compar=0;Compar<4;Compar++)
if(Num[Temp]==Answer[Compar])
{
++ResultB;
break;//因为4个数字是没有重复的数字,所以相等以后就不可能有相等的数字就直接跳出来,进行第二轮比较。
}
Total=ResultB;
for(Temp=0;Temp<4;Temp++)
if(Num[Temp]==Answer[Temp])
++ResultA;
ResultB=Total-ResultA;
if(ResultA==4)
{
printf(" 恭喜游戏胜利 \n");
printf(" 你好厉害只用了%d次就找出答案来了,小熊好崇拜你啊 \n",_n);
Sleep(1000);
exit(0);
}
_n++;
printf("%d A %d B\n",ResultA,ResultB);
}