猜拳遊戲的製作-使用if製作

/*
 
 分析:
    要讓電腦出拳
    要讓玩家出拳
 
    玩家出拳讓玩家輸入
 
    電腦出拳應該隨機輸入
 
 
    約定:
            0--代表剪刀   1--代表石頭  2--布
 
 
    電腦也是 0--代表剪刀   1--代表石頭  2--布
 
    等於就是要讓玩家輸入0或者1或者2
 
    電腦要隨機出0或者1或者2
 
 
 所以,我們需要用到1個隨機數的函數
 
 怎麼用?
        1.導入頭文件  #include <stdlib.h>
        2.arc4random_uniform(u_int32_t);
        3.括號裏面填正整數,比如說你填的是n,那麼就會隨機產生從0-n-1的數裏的任何一個
            例:n=3   那麼就會在 0 1 2裏面隨機產生出一個數
 
 
    讓用戶輸入要猜的拳
 
 
    分析:
        如果玩家出得是剪刀
                如果電腦出得是剪刀  0
                        平局
                如果電腦出得是石頭  1
                        電腦贏
                否則
                        玩家贏
 
        如果玩家出得是石頭
                 如果電腦出得是剪刀  0
                        玩家贏
                 如果電腦出得是石頭  1
                        平局
                 否則
                        電腦贏
 
         如果玩家出得是布
             如果電腦出得是剪刀  0
                 電腦贏
             如果電腦出得是石頭  1
                 玩家贏
             否則
                 平局
 
*/


#include <stdio.h>


#include <stdlib.h> //隨機數第一步


int main(int argc, const char * argv[]) {
    
    //隨機數第二步
    int computer = arc4random_uniform(3);
    
    //讓用戶輸入要猜的拳
    int player;
    printf("請輸入您要猜的拳:0--代表剪刀   1--代表石頭  2--布\n");
    scanf("%d",&player);
    
    
    if(player == 0){//玩家出得是剪刀
        
        if(computer == 0){
            
            printf("玩家出的是剪刀,電腦出的是剪刀,平局");
            
        }else if(computer == 1){
            
            printf("玩家出的是剪刀,電腦出的是石頭,電腦贏");
            
        }else{//else一定是2
            
            printf("玩家出的是剪刀,電腦出的是布,玩家贏");
        }
        
    }else if(player == 1){ //玩家出得是石頭
        
        if(computer == 0){
            
            printf("玩家出的是石頭,電腦出的是剪刀,玩家贏");
            
        }else if(computer == 1){
            
            printf("玩家出的是石頭,電腦出的是石頭,平局");
            
        }else{//else一定是2 電腦出得是布
            
            printf("玩家出的是石頭,電腦出的是布,電腦贏");
        }
        
        
    }else if(player == 2){ //玩家出的是布
        
        if(computer == 0){
            
            printf("玩家出的是布,電腦出的是剪刀,電腦贏");
            
        }else if(computer == 1){
            
            printf("玩家出的是布,電腦出的是石頭,玩家贏");
            
        }else{//else一定是2 電腦出得是布
            
            printf("玩家出的是布,電腦出的是布,平局");
        }
        
        
    }else{ //進到這裏證明玩家輸入的是不是0也不是1也不是2
        
        printf("非法輸入\n");
    }
    
    
    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章