Problem H: 零起点学算法103——查找最大元素
Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 10265 Solved: 4942
Description
对于输入的每个字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。
Input
输入数据包括多个测试实例,每个实例由一行长度不超过100的字符串组成,字符串仅由大小写字母构成。
Output
对于每个测试实例输出一行字符串,输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入"(max)"。
Sample Input
abcdefgfedcba
xxxxx
Sample Output
abcdefg(max)fedcba
x(max)x(max)x(max)x(max)x(max)
#include <stdio.h>
#include <string.h>
int main()
{
char str[110],ch[10];
//gets()函数把一行字符存入str中 ,最后的回车符会被舍弃
while (gets(str) != NULL)
{
char max = str[0];
int i = 1;
while (str[i] != '\0')
{
if (max < str[i])
max = str[i];
i++;
}
for (i = 0;str[i] != '\0';i++)
{
if (max != str[i])
printf("%c",str[i]);
else
printf("%c(max)",str[i]);
}
printf("\n");
}
return 0;
}
这个就是字面意义上的最大,不管大写字母还是小写字母,最大应该是指asicll码中最大(纯属本人猜测,这些题出的莫名其妙)