讀取多行字串(僅含字母,長度 ≤ 100),找出 ASCII 碼最大的字元,在每個最大字元後插入 (max) 輸出。若有多個相同最大字元,全部插入。
gets() 讀取整行(含空格)max 字元max 即印出 (max)#include <stdio.h>
#include <string.h>
int main() {
int i, length;
char max, string[100];
while (gets(string) != NULL) {
length = strlen(string);
max = string[0];
for (i = 0; i < length; i++)
if (string[i] > max) max = string[i];
for (i = 0; i < length; i++) {
printf("%c", string[i]);
if (string[i] == max) printf("(max)");
}
printf("\n");
}
return 0;
}
gets() 已被 C11 標準移除,存在緩衝區溢位風險。實務上應改用 fgets(string, sizeof(string), stdin) 並手動移除換行符。
Input: abcdefgfedcba xxxxx Output: abcdefg(max)fedcba x(max)x(max)x(max)x(max)x(max)