- /*
- * 剪刀石头布——>游戏规则
- * *剪刀干掉布
- * *石头干到剪刀
- * *布干掉石头
- * *剪刀平局剪刀
- * *石头平局石头
- * *布平局布
- * 思路:
- * 计算机随机出拳
- * 自己选择出拳
- * 判断输赢
- * 0.剪刀 1.石头 2.布
- *
- ** 步骤:
- * 1、定义变量 保存计算机和我出的拳
- * 2、计算机 随机 出拳
- * 3、我出拳
- * 4、条件判断
- * 5、出结果
- */
- #include <stdio.h>
- #include <stdlib.h>
- int computerNum=-1;
- int personNum=-1;
- /**
- * 定义一个函数验证人类出拳是否正确,不正确就重新输入:
- * 这里出现了一个问题就是:如果输入字符而不是数字就会陷入死循环
- * 请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新输入:输入有误,请重新\350\276
- */
- void test(){
- if(!(personNum==0||personNum==1||personNum==2)){
- printf("输入有误,请重新输入:");
- scanf("%d",&personNum);
- test();
- }
- }
- int main(int argc, const char * argv[]) {
-
- //计算机出拳
- computerNum=arc4random_uniform(3);
- printf("人类出拳(请输入0:剪刀、1:石头或者2:布,三选一):");
- scanf("%d",&personNum);
- test();
- if (computerNum==0) {
- if (personNum==0){
- printf("平局");
- }else if(personNum==1){
- printf("人类胜出!");
- }else if(personNum==2){
- printf("计算机胜出!");
- }
- }else if (computerNum==1){
- if (personNum==0){
- printf("计算机胜出!");
- }else if(personNum==1){
- printf("平局");
- }else if(personNum==2){
- printf("人类胜出!");
- }
- }else if(computerNum==2){
- if (personNum==0){
- printf("人类胜出!");
- }else if(personNum==1){
- printf("计算机胜出!");
- }else if(personNum==2){
- printf("平局");
- }
- }
-
- return 0;
- }
复制代码
|
|