目录
7-2 取石子(二) (10 分)
Tom 和 Mary 玩取石子的游戏:n 颗石子码成一堆,从 Tom 开始,两人轮流取石子,最少取 1 颗、最多取 2 颗,谁取到最后一颗石子,谁就失败。两个人都极聪明,不会放过任何取胜的机会。请同样聪明的你编写程序,输入石子的数量,输出胜者的名字。
输入格式
石子的数量
输出格式
胜者的名字
输入样例1
1
输出样例1
Mary
输入样例2
2
输出样例2
Tom
经典巴什博弈 给对面留下(2+1)的倍数就能赢
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
if(n%3==1)
{
printf("Mary");
}
else if (n%3==2)
{
printf("Tom");
}
else
{
printf("Tom");
}
}
7-3 大小写字符转换 (6 分)
输入一个字符,如果是大写字母,将它转换成小写字母并输出;如果是小写字母,将它转换成大写字母并输出;如果都不是,则输出:error
输入样例:
a
输出样例:
A
输入样例:
B
输出样例:
b
输入样例:
1
输出样例:
error
输出字符数字实质上是输出ASCII码对应值
而大小写ASCII码值相差32
#include <stdio.h>
#include <math.h>
#include<stdbool.h>
int main()
{
char c;
scanf("%c",&c);
if(c>=97&&c<=122)
{
c=c-32;
printf("%c",c);
}
else if(c>=65&&c<=90)
{
c=c+32;
printf("%c",c);
}
else
{
printf("error");
}
return 0;
}
下面是一道一样的题目
分支结构——大小写字母判断 (5 分)
键盘输入一个英文字母,如果是大写字母,输出ASCII码,如果是小写字母输出对应的大写字母。(其它情况没有输出)
输入格式:
输入一个英文字母。
输出格式:
根据输入的字母,输出ASCII码或者大写字母
输入样例1:
A
输出样例1:
65
输入样例2:
a
输出样例2:
A
#include<stdio.h>
int main()
{
int year;
char a,b,c;
int t,s;
scanf("%c",&a);
if(a>=97&&a<=122)
{
printf("%c",a-32);
}
if(a>=65&&a<=90)
{
printf("%d",a);
}
return 0;
}
7-4 冠军魔术 (10 分)
2018年FISM(世界魔术大会)近景总冠军简纶廷的表演中有一个情节:以桌面上一根带子为界,当他将纸牌从带子的一边推到另一边时,纸牌会变成硬币;