查找最大元素
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 101211 Accepted Submission(s): 52708
Problem 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)
这道题,我是字符数组来做,这样就比较简单,我们只要找到输入的字符串中最大的字母就可以直接在它的后面加上(max)就可以。提示:字符可以相互比较大小。
思路:
1.确认字符串中的最大字符
2.输出时直接在最大字符的后面添加(max)。
#include<stdio.h> //查找最大元素
#include<stdlib.h>
#include<string.h>
int main(void){
char ch, *t;
t=(char *)malloc(sizeof(char)*100); //申请动态空间
while(scanf("%s",t) != EOF){
ch=t[0];
for(int i=0;i<strlen(t);i++){
if(ch<t[i]){
ch=t[i];
}
}
for(int i=0;i<strlen(t);i++){
if(t[i]==ch){
printf("%c(max)",t[i]);
}
else
printf("%c",t[i]);
}
printf("\n");
}
return 0;
}