1025: 最大字符
题目描述
给你三个ASCII字符(不含空白字符:包括空格、制表符\t、回车换行符\n),找出其中最大的那个
输入
输入包含三个字符,之间有一个空格隔开。
输出
输出ASCII码最大的那个字符,占一行。
样例输入 Copy
a b c
样例输出 Copy
c
提示
注意对输入序列中空格的处理,空格也是合法的字符
解法一:替换法
#include <stdio.h>
int main() {
char ah, bh, ch;
scanf("%c %c %c", &ah, &bh, &ch);
if (bh > ah)
ah = bh; //如果bh字符的ascll码要大于ah字符的,那么就用bh字符把ah字符给替换掉,这样始终保持ah字符的ascll值最大
if (ch > ah)
ah = ch; //操作同上
printf("%c", ah);
return 0;
}
此题的方法和oj 1021三个整数的最大值 的解题思路一样,始终保证第一的字符的ascll值最大就可以了,如果碰到比他ascll值大的字符就更新一下。
解法二:将所有的情况全部列举出来
#include <stdio.h>
int main() {
char ah, bh, ch;
scanf("%c %c %c", &ah, &bh, &ch);
if (ah >= bh && ah >= ch)
printf("%c", ah);
if (bh >= ah && bh >= ch)
printf("%c", bh);
if (ch >= bh && ch >= ah)
printf("%c", ch);
return 0;
}
此方法就是把所有的情况列出来然后将ascll最大的字符输出就可以了。