c语言编程题目_C语言题目
根据读取的整数值显示所出的拳(只接收0、1、2)
如:请选择出什么拳(0石头/1剪刀/2布):3回车
请选择出什么拳(0石头/1剪刀/2布):-2回车
请选择出什么拳(0石头/1剪刀/2布):1回车
你选择了剪刀
说明:如果输入的不是0、1、2,就一直询问下去,直到输入0、1、2中的其中一个,就输出相对应的结果石头、剪刀或者最佳答案
你要说明你要用的语言,以前我用JAVA写的,参考(注意我的是1~3)
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
System.out.println("-----猜拳游戏-----");
System.out.println("请出拳 (1.剪刀 2.石头 3.布)");
int a=in.nextInt();
int b=(int)(Math.random()*3)+1;
String c="拳头";
String d="拳头";
switch (a) {
case 1:
c="剪刀";
break;
case 2:
c="石头";
break;
case 3:
c="布";
break;
}
switch (b) {
case 1:
d="剪刀";
break;
case 2:
d="石头";
break;
case 3:
d="布";
break;
}
if (a==b) {
System.out.println("你出的是"+c+"电脑出的是"+d+"平局");
} else if (a==1&&b==2||a==2&&b==3||a==3&&b==1) {
System.out.println("你出的是"+c+"电脑出的是"+d+"你输了");
} else if (b==1&&a==2||b==2&&a==3||b==3&&a==1) {
System.out.println("你出的是"+c+"电脑出的是"+d+"你赢了");
}
}
我搞错了,你要的是C的
C的,稍改下就可以了#include #include #include int main(){ int a, b; time_t t; char c[5], d[5]; srand((unsigned) time(&t)); printf("-----猜拳游戏-----\n"); printf("请出拳 (1.剪刀 2.石头 3.布)\n"); scanf("%d", &a); b = rand() % 3 + 1; switch(a) { case 1: strcpy(c, "剪刀"); break; case 2: strcpy(c, "石头"); break; case 3: strcpy(c, "布"); break; } switch(b) { case 1: strcpy(d, "剪刀"); break; case 2: strcpy(d, "石头"); break; case 3: strcpy(d, "布"); break; } if(a == b) { printf("你出的是%s电脑出的是%s,平局\n", c, d); } else if(a == 1 && b == 2 || a == 2 && b == 3 || a == 3 && b == 1) { printf("你出的是%s电脑出的是%s你输了\n", c, d); } else if(b == 1 && a == 2 || b == 2 && a == 3 || b == 3 && a == 1) { printf("你出的是%s电脑出的是%s你赢了\n", c, d); }}
其他回答
暂无其它回答!