c语言数组求3个字符串(每串不超过20个字符)中的最大者。补充完善程序,以实现其功能。
时间: 2024-03-14 18:46:59 浏览: 48
以下是一个示例程序,可以用数组的方式求出3个字符串中的最大者:
```
#include <stdio.h>
#include <string.h>
int main() {
char strs[3][20];
printf("请输入三个字符串,每个字符串不超过20个字符:\n");
for (int i = 0; i < 3; i++) {
scanf("%s", strs[i]);
}
int max_len = strlen(strs[0]);
int max_index = 0;
for (int i = 1; i < 3; i++) {
int len = strlen(strs[i]);
if (len > max_len) {
max_len = len;
max_index = i;
}
}
printf("最大的字符串是:%s\n", strs[max_index]);
return 0;
}
```
该程序定义了一个二维字符数组 `strs`,用于存储输入的三个字符串。通过 `for` 循环和 `scanf` 函数从标准输入中读入三个字符串。接下来使用 `strlen` 函数分别求出三个字符串的长度,并通过一个循环找到最长的字符串所在的下标。最后将最长的字符串输出即可。
相关问题
c语言求3个字符串(每串不超过20个字符)中的最大者。补充完善程序,以实现其功能。
以下是一个示例程序,可以求出3个字符串中的最大者:
```
#include <stdio.h>
#include <string.h>
int main() {
char str1[20], str2[20], str3[20];
printf("请输入三个字符串,每个字符串不超过20个字符:\n");
scanf("%s%s%s", str1, str2, str3);
int len1 = strlen(str1);
int len2 = strlen(str2);
int len3 = strlen(str3);
if (len1 >= len2 && len1 >= len3) {
printf("最大的字符串是:%s\n", str1);
} else if (len2 >= len1 && len2 >= len3) {
printf("最大的字符串是:%s\n", str2);
} else {
printf("最大的字符串是:%s\n", str3);
}
return 0;
}
```
该程序首先定义了三个字符串 `str1`、`str2` 和 `str3`,分别用于存储输入的三个字符串。然后通过 `scanf` 函数从标准输入中读入三个字符串。接下来使用 `strlen` 函数分别求出三个字符串的长度,并通过比较得到最长的字符串。最后将最长的字符串输出即可。
C语言利用字符数组编程:用户输入3个字符串,程序找出其中最大者,并输出。
好的,这是一个比较简单的问题。你可以使用字符数组实现这个功能。可以用scanf()函数获取用户输入的三个字符串,然后使用strcmp()函数比较字符串大小,最后输出最大的字符串。
下面是示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char s1[100], s2[100], s3[100];
char max_str[100];
printf("请输入第一个字符串:");
scanf("%s", s1);
printf("请输入第二个字符串:");
scanf("%s", s2);
printf("请输入第三个字符串:");
scanf("%s", s3);
if (strcmp(s1, s2) > 0) {
strcpy(max_str, s1);
} else {
strcpy(max_str, s2);
}
if (strcmp(max_str, s3) < 0) {
strcpy(max_str, s3);
}
printf("最大的字符串为:%s\n", max_str);
return 0;
}
```
当你运行这段代码时,会提示你输入三个字符串,然后输出最大的字符串。