zoukankan      html  css  js  c++  java
  • 猜数字游戏

    #include<stdio.h>
    #include<time.h>
    int main(void){
        
          int systemNum[4];
          int userNum[4];
          int i,j,c=0;
        
          
      /*do{
                  srand(time(NULL));
                   for(i=0;i<4;i++){
                     systemNum[i]=rand()%9+0;
                }
          }while(systemNum[0]==systemNum[1]||systemNum[0]==systemNum[2]||systemNum[0]==systemNum[3]||
                 systemNum[1]==systemNum[2]||systemNum[1]==systemNum[3]||systemNum[2]==systemNum[3]);
          */
          printf("由系统随机生成一个不同的四位数,例如(1234),然后由用户输入四个不同的数字,如果输入的数字 与系统生成的数字相同并且位置相同 用 A 表示,如果数字相同位置不同用B表示,例如输入(1245)结果显示:2A1B  给用户10次输入的机会。 4A程序结束");
          while(1){
            srand(time(NULL));
              for(i=0;i<4;i++){
               systemNum[i]=rand()%9+0;    
            }
            
            int count=0;
            
            for(i=0;i<4;i++){
                int j;
                for(j=i+1;j<4;j++){
                    
                  if(systemNum[i]==systemNum[j]){
                     
                     count++;
                  }
                    
                }
            }
            
            if(count==0){
                break;
            }
            
        }
          
          
          
           
            for(i=0;i<4;i++){
                 //    printf("%d ",systemNum[i]);
               }
            printf(" ");
            
            int countNum=0;
     
             while(1){
                  int countA=0;
                   int countB=0;    
            do{
                 //system("cls");
                 printf("第%d次输入四个不同的数字(0-9):",countNum+1);
                  for(i=0;i<4;i++){
                     scanf("%d",&userNum[i]);    
                     }
                     
                   if(userNum[0]==userNum[1]||userNum[0]==userNum[2]||userNum[0]==userNum[3]||
                 userNum[1]==userNum[2]||userNum[1]==userNum[3]||userNum[2]==userNum[3]){
                     printf("sb 不能输入重复的数字");
                  }
                  //getch();  
                     
            }while(userNum[0]==userNum[1]||userNum[0]==userNum[2]||userNum[0]==userNum[3]||
                 userNum[1]==userNum[2]||userNum[1]==userNum[3]||userNum[2]==userNum[3]);
                   
                     
                //系统每个数都于用户输入的每一个数比较,所以循环4次
                for(i=0;i<4;i++){
                      //系统的每一个数字分别与用户输入的数字挨个比较
                    for(j=0;j<4;j++){
                           if(systemNum[i]==userNum[j]){
                                   if(i==j){
                                       countA++;
                                   }else{
                                       countB++;
                                      }
                             }
                      }
                }
            
          
                  printf("%dA%dB ",countA,countB);
                
                if(countA==4){
                    printf("恭喜你,猜对了!");
                    break;
                }else{
                    countNum++;
                }
                
                if(countNum==10){
                    int b;
                   printf("你的十次机会用完啦    请按1继续  请按其他键结束  ");
                   scanf("%d",&b);
                   if(b==1){
                       system("cls");
                       countNum=0;
                       continue;
                   } else{
                       break;
                   }
                }
               
             }  

    getch ();
        return 0;
        
    }

  • 相关阅读:
    leetcode 68 Text Justification
    了解HTTP协议
    对编码的一点理解
    极简WebSocket聊天室
    统一响应数据的封装
    BitMap
    SPI机制
    Holder类
    Java的标签
    二叉树的非递归遍历
  • 原文地址:https://www.cnblogs.com/hellokitty1/p/4067350.html
Copyright © 2011-2022 走看看