c语言输入五个字符串,长度不大于19,并输出最大的一个字符串
时间: 2024-11-06 16:17:47 浏览: 2
在C语言中,你可以通过动态内存分配、字符数组比较和循环结构来实现这个功能。以下是一个简单的示例程序:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 19
int main() {
char* strings[5];
int i, max_index = 0;
// 输入五个字符串
for (i = 0; i < 5; ++i) {
printf("请输入第 %d 个字符串 (长度不超过%d): ", i+1, MAX_LENGTH);
fgets(strings[i], sizeof(strings[i]), stdin); // 使用fgets防止换行符
strings[i][strlen(strings[i])-1] = '\0'; // 去掉fgets留下的换行符
}
// 找出最大长度的字符串
for (i = 1; i < 5; ++i) {
if (strlen(strings[i]) > strlen(strings[max_index])) {
max_index = i;
}
}
// 输出最大字符串
printf("最长的字符串是: %s\n", strings[max_index]);
// 清理内存
for (i = 0; i < 5; ++i) {
free(strings[i]);
}
return 0;
}
```
在这个程序里,我们首先创建一个字符串数组,然后让用户依次输入。每次输入后,检查当前字符串的长度是否大于之前的最大长度,如果是,则更新最大索引。最后,打印出找到的最大长度字符串,并记得释放所有动态分配的内存。
阅读全文