| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 633 人关注过本帖
标题:在家学习一本用c写游戏书!看了第一个游戏!觉得简单就自己写了!
取消只看楼主 加入收藏
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
结帖率:95.74%
收藏
 问题点数:0 回复次数:3 
在家学习一本用c写游戏书!看了第一个游戏!觉得简单就自己写了!
想不到论坛还可以用手机登!还能发附件!
搜索更多相关主题的帖子: 游戏 
2011-07-22 20:04
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
回复 楼主 小鱼儿c
那我就不知道!用手机传了!我也不知道在哪里!呵呵!

用心做一件事情就这么简单
2011-07-22 20:32
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
偶的错啊
程序代码:
#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);
}

 

用心做一件事情就这么简单
2011-07-23 10:56
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:0 
我一个地方没有改,把答案写出来了,大家自己出掉把,没流量了啊。~~~~~~~~~

用心做一件事情就这么简单
2011-07-23 10:57
快速回复:在家学习一本用c写游戏书!看了第一个游戏!觉得简单就自己写了!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017915 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved