c语言输入五个字符串,输出最长的字符串
时间: 2023-09-15 08:06:03 浏览: 179
获取最长字符串
### 回答1:
您好!可以使用以下代码实现您的需求:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LENGTH 100 // 假设最长的字符串长度不超过100
int main() {
char str[5][MAX_LENGTH];
int max_index = 0;
int i;
// 输入五个字符串
for (i = 0; i < 5; i++) {
printf("请输入第%d个字符串:", i+1);
scanf("%s", str[i]);
}
// 比较五个字符串的长度
for (i = 1; i < 5; i++) {
if (strlen(str[i]) > strlen(str[max_index])) {
max_index = i;
}
}
// 输出最长的字符串
printf("最长的字符串是:%s\n", str[max_index]);
return 0;
}
```
代码中使用了一个字符串数组 `str` 来存储五个输入的字符串,然后通过遍历比较字符串长度的方式找到最长的字符串。其中 `MAX_LENGTH` 定义了字符串的最大长度,可以根据实际情况进行修改。
### 回答2:
要解决这个问题,我们可以使用C语言中的字符串操作函数来比较并找到最长的字符串。
首先,我们需要定义5个字符串类型的变量,表示输入的五个字符串。假设这五个字符串分别为str1、str2、str3、str4和str5。
接下来,我们可以使用strlen()函数来获取每个字符串的长度,并将其与之前找到的最长长度进行比较。我们可以创建一个变量maxLen,并将其初始值设为0,用于保存当前最长字符串的长度。
然后,我们可以使用if语句来比较每个字符串的长度,并更新maxLen的值。如果某个字符串的长度大于maxLen,我们将maxLen的值更新为该字符串的长度。
最后,我们可以使用printf()函数来输出最长的字符串。根据之前比较得到的maxLen的值,我们可以使用if语句来确定哪个字符串的长度是最长的,并将其打印出来。
下面是一个解决方案的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str1[100], str2[100], str3[100], str4[100], str5[100];
int maxLen = 0;
printf("输入五个字符串:\n");
scanf("%s %s %s %s %s", str1, str2, str3, str4, str5);
if (strlen(str1) > maxLen)
maxLen = strlen(str1);
if (strlen(str2) > maxLen)
maxLen = strlen(str2);
if (strlen(str3) > maxLen)
maxLen = strlen(str3);
if (strlen(str4) > maxLen)
maxLen = strlen(str4);
if (strlen(str5) > maxLen)
maxLen = strlen(str5);
printf("最长的字符串是:");
if (maxLen == strlen(str1))
printf("%s\n", str1);
else if (maxLen == strlen(str2))
printf("%s\n", str2);
else if (maxLen == strlen(str3))
printf("%s\n", str3);
else if (maxLen == strlen(str4))
printf("%s\n", str4);
else if (maxLen == strlen(str5))
printf("%s\n", str5);
return 0;
}
```
以上就是一个简单的解决方案,能够输入五个字符串,并输出最长的字符串。
### 回答3:
首先,我们定义一个字符数组 `str[5][100]`,可以存储五个最大长度为99的字符串。然后,我们使用 `for` 循环来输入五个字符串并存储到这个数组中。接着,我们使用另一个循环来比较这五个字符串的长度,找到最长的字符串。
下面是具体的代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[5][100];
int max_len = 0; // 最长字符串的长度
int max_index = 0; // 最长字符串的下标
// 输入五个字符串
for (int i = 0; i < 5; i++) {
printf("请输入第%d个字符串:", i + 1);
scanf("%s", str[i]);
}
// 比较五个字符串的长度找到最长的字符串
for (int i = 0; i < 5; i++) {
int len = strlen(str[i]);
if (len > max_len) {
max_len = len;
max_index = i;
}
}
// 输出最长的字符串
printf("最长的字符串是:%s\n", str[max_index]);
return 0;
}
```
以上代码会依次提示用户输入五个字符串,并找到其中最长的字符串输出。注意,这里假设输入的每个字符串不超过99个字符长。如果需要更长的字符串长度,请相应调整 `char str[5][100]` 这一行的代码。
阅读全文