本帖最后由 black747521 于 2015-11-4 15:33 编辑
// // main.c // 剪刀石头布小游戏 // switch和if语句的使用 // Created by black on 15/10/21. // Copyright © 2015年 black. All rights reserved. //
#include <stdio.h> #include <stdlib.h>
//显示赢 int win(){ printf("恭喜你,你赢了!\n"); return 0; }
//显示输 int lose(){ printf("很遗憾,你输了!\n"); return 0; }
//显示平局 int ping(){ printf("平局!\n"); return 0; }
int game(){
// 定义两个变量,computer电脑出拳 player 玩家出拳 int computer = -1,player = -1;
//为电脑出拳获取随机数 computer = arc4random_uniform(3);
//定义三种拳对应的值 printf("请出拳:0 剪刀 1 石头 2 布\n"); scanf("%d",&player); //判断输入是否有误 while (player!=0&&player!=1&&player!=2) { printf("输入有误,请重新输入\n"); printf("请出拳:0 剪刀 1 石头 2 布\n"); scanf("%d",&player); }
int i; //用来判断输赢 i = computer - player; //i == 0时 为平局 if (i == 0) { ping(); } //i == 1 或者-2是电脑胜 else if (i == 1||i == -2){ lose(); } //i == 2 或者-1时 万家胜 else win(); //显示玩家出拳 switch (player) { case 0: printf("你出的是剪刀\t"); break; case 1: printf("你出的是石头\t"); break; case 2: printf("你出的是布\t"); break;
default: break; }
//显示电脑出拳 switch (computer) { case 0: printf("电脑出的是剪刀\n"); break; case 1: printf("电脑出的是石头\n"); break; case 2: printf("电脑出的是布\n"); break;
default: break; }
return 0; }
int main(int argc, const char * argv[]) {
system("clear"); printf("\t欢迎来到剪刀石头布游戏!\n"); int i = 1; //i用来判断是否要重玩游戏或者结束 do { game(); printf("0 结束游戏 1 再来一次 \n"); scanf("%d",&i); system("clear"); } while (i==1); printf("游戏结束!\n");
return 0; }
|