c语言有五个字符串,在每个字符串中,找出最大字符按一一对应的顺序放入一维数组a中,即第i个字符串中的最大字符放入a[i]中,输出每个字符串中的最大字符,要求用函数实现。
时间: 2024-03-10 18:49:34 浏览: 108
好的,下面是代码实现:
```c
#include <stdio.h>
#include <string.h>
void findMaxChar(char *str, char *maxChar) {
int len = strlen(str);
int i;
char max = str[0];
for (i = 1; i < len; i++) {
if (str[i] > max) {
max = str[i];
}
}
*maxChar = max;
}
int main() {
char strs[5][100] = {"abcde", "fghij", "klmno", "pqrst", "uvwxy"}; // 五个字符串
char maxChars[5]; // 存储每个字符串中的最大字符
int i;
for (i = 0; i < 5; i++) {
findMaxChar(strs[i], &maxChars[i]); // 找出每个字符串中的最大字符
printf("字符串 %d 中的最大字符为:%c\n", i+1, maxChars[i]);
}
return 0;
}
```
首先定义了一个二维字符数组 `strs`,存储了五个字符串。接着定义了一个一维字符数组 `maxChars`,用于存储每个字符串中的最大字符。然后定义了一个函数 `findMaxChar`,用于在一个字符串中找出最大字符,并将其存储在一个字符指针变量 `maxChar` 所指向的地址中。
在 `main` 函数中,使用 `for` 循环遍历每个字符串,调用 `findMaxChar` 函数找出最大字符并存储在 `maxChars` 数组中。最后输出每个字符串中的最大字符。
需要注意的是,在调用 `findMaxChar` 函数时需要将 `maxChars[i]` 的地址作为参数传递,因为需要在 `findMaxChar` 函数中修改 `maxChars` 数组中的值。
阅读全文