在c语言中定义一个字符串数组,输出里面最长字符串,以及他的长度
时间: 2024-12-20 17:18:07 浏览: 11
C语言求两个字符串的最长公共子串
5星 · 资源好评率100%
在C语言中,你可以通过以下几个步骤定义一个字符串数组,并找到其中最长的字符串及其长度:
1. 首先,你需要定义一个字符串数组。例如:
```c
#include <stdio.h>
#include <string.h>
#define MAX_STRINGS 5
char strings[MAX_STRINGS][50]; // 假设每个字符串最多包含49个字符加上结束符'\0'
```
2. 然后,给这个数组填充一些字符串:
```c
int main() {
strcpy(strings[0], "short");
strcpy(strings[1], "medium string");
strcpy(strings[2], "longest_stringEver");
strcpy(strings[3], "short again");
strcpy(strings[4], " ");
}
```
3. 定义一个函数来找出最长的字符串和它的长度:
```c
char* find_longest_string(char str_array[][50], int num_strings) {
char longest[50] = "";
int max_length = 0;
for (int i = 0; i < num_strings; i++) {
if (strlen(str_array[i]) > max_length) {
strcpy(longest, str_array[i]);
max_length = strlen(str_array[i]);
}
}
return longest;
}
int main()继续... {
...
char longest_string[] = find_longest_string(strings, MAX_STRINGS);
printf("Longest string is: %s\n", longest_string);
printf("Its length is: %d\n", strlen(longest_string));
...
}
```
在这个程序中,`find_longest_string` 函数遍历数组,每次遇到比当前最长字符串更长的就更新 `longest` 和 `max_length`。
阅读全文