⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c game.txt

📁 上次站长没用!今次打包几个ACM的资料在上传
💻 TXT
字号:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{
int a[4],b[4];
int k=0,t=0,r=0,i,j,p=0;
char ch;

do{ if(p==0)     {printf("\n*********************\n");
                printf("*welcome to the game*\n");
       printf("*********************\n");}

       do{
            srand((unsigned)time(NULL));
         a[0]=rand()%10;
         a[1]=rand()%10;
         a[2]=rand()%10;
         a[3]=rand()%10;
    }while(a[0]==a[1]||a[0]==a[2]||a[0]==a[3]||a[1]==a[2]||a[1]==a[3]
    ||a[2]==a[3]);

do{
   printf("\nplease input four number(0-9):");
   scanf("%d %d %d %d",&b[0],&b[1],&b[2],&b[3]);
                 getchar();
                 if(b[0]==b[1]||b[0]==b[2]||b[0]==b[3]||b[1]==b[2]||b[1]==b[3]
    ||b[2]==b[3])
     printf("error!!!!please in put four different number!");
   else
   {
    r++;
       for(i=0;i<4;i++)
    for(j=0;j<4;j++)
    {if((j==i)&&(b[j]==a[i])) k++;
     if((j!=i)&&(b[j]==a[i])) t++;
    }
    printf("%dA%dB",k,t);
    if(k!=4)
    {k=0;
    t=0;}
         }
}while((r<=8)&&(k!=4));
if((r==9)&&(k!=4))
         printf("\n try you best next time!!!\nthe trut answer is:%d %d %d %d",a[0],a[1],a[2],a[3]);
if(k==4) printf("\n you are so smart!!!!");
p++;
printf("\ndo you want play it again(Y/N)?");
ch=getchar();
getchar();
r=0;
}while(ch=='y'||ch=='Y');
}

/*说明:直接放在c中就可以运行 */


























/****************************************************
***********         猜数字游戏       ****************
***********   by:wenzuqin            ****************
***********   date:2006/10/19        ****************
*********** 如发现不足请大家修改,谢谢****************
*****************************************************/
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define  N  4
#define  MAX_TIMES  7
/* 随机出要猜的数字,四个数字都不相同 */
void create_rand_num ( int * rand_num )
{
    int  num[10]={0,1,2,3,4,5,6,7,8,9};/* 每位数的范围 */
    int  i;
    int  rand_n;        /* 产生的随机数 */
    int  temp;
    randomize();        /* 随机种子发生器 */
    /* 产生四个不同随机数 */
    for(i=0 ;i < N; i++)
    {
        /* 对数组的下标来随机,而不是对它的元素,请仔细思考 */
        rand_n = rand()%(10-i) + i;
        *(rand_num + i) = num[ rand_n ];
        temp = num[i];  /* 随机到了的数字往前推,以后的随机中它不再出现 */
        num[i] = num[ rand_n ];
        num[ rand_n ] = temp;
    }
}
/* 判断输入数据的合法性 */
int input_check ( int * guess )
{
    int  i=0;
    for(;i < N; i++)
    {
        if(*(guess + i)>9 || *(guess + i)<0)
        {
            printf("Error! Input the right number!\n");
            return 0;
        }
    }
    return 1;
}
/* 判断玩家猜的数字,返回猜的次数,超过7次返回0 */
int guess_num ( int * rand_num )
{
    int  guess[N];  /* 玩家猜的数字 */
    int  times = 1;
    int  i, j;
    int  A, B;      /* A表示数值且位置正确的个数,B只表示数值正确的个数 */
    for(;times <= MAX_TIMES; times++)/* 最多猜可以7次 */
    {
        printf("\t%d:", times);
        for(i=0 ;i < N; i++)         /* 输入要猜的4个数字 */
            scanf("%d", &guess[i]);
        if( !input_check(guess) )
            { times --; continue;}   /* 非法输入,重输 */
        /* 判断用户所猜的数字 */
        A = B = 0;
        for(i=0 ;i < N; i++)
        {
            for(j=0 ;j < N; j++)
            {
                if(i==j && guess[j] == *(rand_num+i))  /* 数值和位置正确 */
                    {A ++; break; }
                else if( guess[j] == *(rand_num+i) )   /* 数值正确 */
                    {B ++; break; }
            }
            if( i == N-1 ) /* 猜对了,返回猜的次数 */
                if( A==N ) {printf("\n\t\t\tRight!\n");  return times;}
        }
        printf("\t\t\t%dA %dB\n", A, B);
    }
    return  0; /* 7次内没猜对 */
}
/* 统计结果 */
void result( int times , int * score )
{
    switch( times )
    {
        case 1:case 2:case 3:
             printf("\tVery Good!");
             printf("\tScore +%d", 110-times*10 );
             *score += 110-times*10; break;
        case 4:case 5:case 6:
             printf("\tGood!");
             printf("\tScore +%d", 100-times*10 );
             *score += 100-times*10; break;
        case 7:
             printf("\tPass!");
             printf("\tScore +%d",20 );
             *score += 20;           break;
        default:  printf("\tCome On!");
    }
}
/* 是否继续游戏 */
int  go_on ()
{
    char  c;
    printf("\n\n\tContinue game?(\'y\'or\'n\'):");
    getchar();
    if((c=getchar()) == 'y' || c == 'Y')
       return 1;
    return 0;
}
main()
{
    int  rand_num[N];   /* 产生的四个随机数 */
    int  times;         /* 猜对结果所用的次数 */
    int  score = 0;     /* 得分 */
    int  flag = 1 ;     /* 继续游戏 */
    while( flag )
    {
        clrscr();
        printf("\tGUESS NUM GAME\tscore=%d\n", score);
        create_rand_num ( rand_num );
        times = guess_num(rand_num );
        result( times , &score );
        flag = go_on ();
    }
}

















#include<stdio.h> 
#include <conio.h> 
#include<stdlib.h> 
main() 
{ 
zhujiemian(); 
} 
zhujiemian() 
{ 
int pd;clrscr(); 
 loop: 
{ 
      printf("\t\t\t       GUESS THE RIGHT NUMBERS!\n"); 
      printf("\n\n\n\t\t\t***********************************\n"); 
      printf("\t\t\t*                                 *\n"); 
      printf("\t\t\t*  1.start                        *\n"); 
      printf("\t\t\t*  2.help                         *\n"); 
      printf("\t\t\t*  3.instruction                  *\n"); 
      printf("\t\t\t*  4.quit                         *\n"); 
      printf("\t\t\t*                                 *\n"); 
      printf("\t\t\t***********************************\n"); 
      printf(" please choose one :"); 
      scanf("%d",&pd); 
         switch(pd) 
         { 
  case 1:start();break; 
          case 2:help();break; 
          case 3:instruction();break; 
          case 4:quit();break; 
          default:clrscr();printf("\n\n\t\t\tERROR!");getch();clrscr();goto loop; 
         } 

} 
} 
help() 
{ 
 clrscr(); 
 printf("Please input 4 numbers .Then you get xAxB.A means the place and the amount are both right.B means only the amount is right.When you get 4A0B,you do a good job.\nREMEMBER:You only have 8 chances.\n\n\n\nPress any key to return.\n"); 
 getch(); 
 zhujiemian(); 
} 
instruction() 
{ 
 clrscr(); 
 printf("GUESS THE RIGHT NUMBERS V1.00\n\nMADE BY BEST1000\n\n\n\nPress any key to return."); 
 getch(); 
 zhujiemian(); 
} 
quit() 
{ 
 clrscr(); 
 return(0); 
} 
start() 
{ 
 int a1,a2,a3,a4; 
 int b1,b2,b3,b4; 
 int i,j,n,g,h; 
 int A=0;int B=0; 
 int count=0; 
 clrscr(); 
 printf("Let's begin the game\n"); 
   do{ 

    randomize();a1=rand()%9;a2=rand()%9;a3=rand()%9;a4=rand()%9; 
   }while(!(a1!=a2&&a1!=a3&&a1!=a4&&a2!=a3&&a2!=a4&&a3!=a4)); 
while(count<=8) 
{ 
    do{ 
       printf("\ninput 4 numbers:"); 
       scanf("%d%d%d%d",&b1,&b2,&b3,&b4); 
      }while(!(b1<=9&&b2<=9&&b3<=9&&b4<=9&&b1>=0&&b2>=0&&b3>=0&&b4>=0&&b1!=b2&&b1!=b3&&b1!=b4&&b2!=b3&&b2!=b4&&b3!=b4)); 
    printf("%d %d %d %d",b1,b2,b3,b4);printf("       "); 
    if(b1==a1)A++; 
    if(b2==a2)A++; 
    if(b3==a3)A++; 
    if(b4==a4)A++; 
    if(b1==a2||b1==a3||b1==a4)B++; 
    if(b2==a1||b2==a3||b2==a4)B++; 
    if(b3==a1||b3==a2||b3==a4)B++; 
    if(b4==a1||b4==a2||b4==a3)B++; 
    count++; 
    if(A==4) 
break; 
    else 
{ 
printf("%dA%dB",A,B);A=0;B=0; 
} 
} 
  printf("\nRight answer:%d %d %d %d",a1,a2,a3,a4); 
  getch(); 
  zhujiemian(); 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -