北大青鸟APTECH 北大青鸟广州天河培训中心
所在位置:北大青鸟,漫谈软件技术流 >>一个猜数字的游戏!
收藏本站
推荐给好友
北大最新招生信息
一个猜数字的游戏!  
发布者:[本站编辑] 来源:[广州北大青鸟]  

一个猜数字的游戏!欢迎大家指正

#include<stdlib.h>
#include<stdio.h>
#include<time.h>

void display();//函数原型
void main()
{
        printf("*********************************************************/n/n");
        printf("/t/t/t猜数字/n/n");
        printf("*********************************************************/n");
        //对游戏规则的描述
        printf("规则:你所猜测的数字为一个4位的,每一位数字都不重复的正/n");
        printf("整数,如果你猜测数字的某一位和电脑数字的某一位大小相同而位/n");
        printf("置不同得到1B,大小位置都相同得到1A。得到4A即为胜利。/n/n/n");
        display();
}

void display()
{
        int a[4],b[4],p,j,m,n,t,k;
        char temp;
        do
        {
                srand((unsigned)time(NULL));
                t=(unsigned)time(NULL);
                //对生成的随机数进行判断
                while(1)
                {
                        a[0]=rand()%10;
                        if(a[0]!=0)
                        {
                                break;
                        }
                }
                while(1)
                {
                        k=0;
                        for(p=1;p<4;p++)
                        {
                                a[p]=rand()%10;
                        }
                        for(p=0;p<3;p++)
                        {
                                for(j=p+1;j<4;j++)
                                {
                                        if(a[p]==a[j])
                                        {
                                                k++;
                                        }
                                }
                        }
                        if(k==0)
                        {
                                break;
                        }
                }
                //对用户输入进行判断
                while(1) 
                {
                        printf("/n请输入你所猜测的数字:");
                        scanf("%d",&j);
                        k++;
                        m=0;
                        n=0;
                        if(j>1000&&j<10000)
                        {
                                for(p=3;p>=0;p--)
                                {
                                        b[p]=j%10;
                                        j/=10;
                                }
                                //按游戏规则进行判断
                                for(p=0;p<4;p++)
                                {
                                        if(a[p]==b[p])
                                        {
                                                m++;
                                                continue;
                                        }
                                        for(j=0;j<4;j++)
                                        {
                                                if(a[p]==b[j])
                                                {
                                                        n++;
                                                        break;
                                                }
                                        }
                                }
                                if(m==4)
                                {
                                        printf("%dA%dB恭喜你,猜对了!/n",m,n);
                                        printf("共计用时%d秒/n",(unsigned)time(NULL)-t);
                                        printf("共计猜了%d次/n",k);
                                        printf("成绩:");
                                        if(k<=5&&(unsigned)time(NULL)-t<=30)
                                        {
                                                printf("优秀!好样的!");
                                        }
                                        else if((k>5&&k<=10)||((unsigned)time(NULL)-t>30&&(unsigned)time(NULL)-t<=60))
                                        {
                                                printf("中等!再接再励!");
                                        }
                                        else
                                        {
                                                printf("较差!继续努力!");
                                        }
                                        break;
                                }
                                else
                                {
                                        printf("%dA%dB",m,n);
                                        continue;
                                }
                        }
                        else
                        {
                                printf("您的输入不正确,请重新输入");
                                continue;
                        }
                }
                printf("/n要继续游戏吗?(Y继续,其他任意键退出)");
                fflush(stdin);
                temp=getchar();
        }
        while(temp=='Y'||temp=='y');
}
用邮箱推荐给好友】- 北大青鸟
 ·暂无
学期
班别
日期
S1

脱产预科

5月8日

S1

业余预科

5月18日

S1

脱产

5月20日

S1

脱产预科

5月28日

S1

脱产

6月12日

S1
业余
6月8日
S2
脱产班
7月15日
Y2
脱产班
7月21日
我要在线报名

主题:职业规划(目标管理)
与软件发展

时间:周六、日 14:00
内容:
1.如何设计职业生涯规划
2.如何发现职业兴趣点?
3.如何成功实践职业规划?
4.IT与软件离我们有多远?
5.软件行业潜力和前景在哪里?
6.如何成为软件英才
7.accp课程免费体验

 让总部职业规划师为你
一一打开问号!!!

订座热线:020-85566216
  ©版权所有2005 北大 青鸟APTECH(广州天河)授权培训中心 粤ICP备05043791号
地址:广州市中山大道91号B座8楼(华景软件园后) 510630
电话:020-85566215 85566216 85563631 85567987
传真:020-85567986-224
网址:http://www.accp-teem.com.cn