编写程序,输入5个字符串,将这5个字符串的较大的字符串输出。要求用二 维字符数组存放这5个字符串,用指针数组元素分别指向这5个字符串。
时间: 2023-04-24 13:05:11 浏览: 246
好的,以下是程序的中文回复:
首先,我们需要定义一个二维字符数组,用来存放这5个字符串。同时,我们还需要定义一个指针数组,用来分别指向这5个字符串。
接下来,我们可以通过循环输入这5个字符串,并将它们存放到二维字符数组中。同时,我们也可以通过循环将指针数组的元素分别指向这5个字符串。
最后,我们可以通过比较这5个字符串的长度,找到其中最长的字符串,并将其输出。
下面是一个简单的示例代码:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
char str[5][MAX_LEN];
char *p[5];
int i, max_len = 0, max_index = 0;
// 输入5个字符串,并将它们存放到二维字符数组中
for (i = 0; i < 5; i++) {
printf("请输入第%d个字符串:", i + 1);
scanf("%s", str[i]);
}
// 将指针数组的元素分别指向这5个字符串
for (i = 0; i < 5; i++) {
p[i] = str[i];
}
// 找到最长的字符串
for (i = 0; i < 5; i++) {
if (strlen(p[i]) > max_len) {
max_len = strlen(p[i]);
max_index = i;
}
}
// 输出最长的字符串
printf("最长的字符串是:%s\n", p[max_index]);
return 0;
}
```
阅读全文