L1-044 稳赢 (15 分)
大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则是:剪刀胜布,布胜锤子,锤子胜剪刀。
现要求你编写一个稳赢不输的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方输得太惨,你需要每隔K次就让一个平局。
输入格式:
输入首先在第一行给出正整数K(≤10),即平局间隔的次数。随后每行给出对方的一次出招:ChuiZi
代表“锤子”、JianDao
代表“剪刀”、Bu
代表“布”。End
代表输入结束,这一行不要作为出招处理。
输出格式:
对每一个输入的出招,按要求输出稳赢或平局的招式。每招占一行。
输入样例:
2
ChuiZi
JianDao
Bu
JianDao
Bu
ChuiZi
ChuiZi
End
输出样例:
Bu
ChuiZi
Bu
ChuiZi
JianDao
ChuiZi
Bu
#include<stdio.h>
#include<stdlib.h> //使用gets()、puts()时要包含该头文件
#include<string.h> //使用strcmp()时要包含该头文件,strcmp()是用来比较两个字符串是否一样
//另外还有常用的strlen()用来获取该字符串长度,不包括'\0。
//strcpy(s1, s2) 把s2复制到s1。
//strcat(s1, s2) 把s2加到s1的尾部
int main(){
char arr[10];
int i=0,x;
scanf("%d",&x);
getchar(); //吸收输入x产生的回车键
gets(arr);
while(strcmp(arr,"End")!=0){ //不等于0表示两个字符串不一样
if(i==x){
puts(arr);
i=0;
gets(arr);
continue; //跳回while()重新开始循环
}
else if(strcmp(arr,"ChuiZi")==0) //等于0表示这两个字符串是一样的
puts("Bu");
else if(strcmp(arr,"JianDao")==0)
puts("ChuiZi");
else if(strcmp(arr,"Bu")==0)
puts("JianDao");
gets(arr);
i++;
}
return 0;
}