//求最大字符串 #include<string.h> #include<stdio.h> char* fun(char word[][10],int n) { //********begin***********// //*******end************// } int main(void) { int i; char color[5][10] = {"red", "blue", "yellow", "green", "black" }; char *maxstr; maxstr=fun(color,5); for(i = 0; i < 5; i++) { printf("%s\n", color[i]); } printf("\nthe max is: %s\n", maxstr); return 0; }
时间: 2023-07-01 11:12:33 浏览: 93
c代码-写一个函数,计算字符串 s中最大连续相同的字符个数。例如,若s 为"aaabbbb",则返回值为4;若s为"abcde",则返回值为1。int max_same_char( char* s)
这段代码中,函数`fun`的作用是找到二维字符数组`word`中长度最长的字符串,并返回该字符串的地址。
下面是完整的代码实现:
```c
#include <string.h>
#include <stdio.h>
char* fun(char word[][10], int n) {
int max_len = 0;
char* max_str = word[0];
for (int i = 0; i < n; i++) {
int len = strlen(word[i]);
if (len > max_len) {
max_len = len;
max_str = word[i];
}
}
return max_str;
}
int main(void) {
int i;
char color[5][10] = {"red", "blue", "yellow", "green", "black" };
char* maxstr;
maxstr = fun(color, 5);
for (i = 0; i < 5; i++) {
printf("%s\n", color[i]);
}
printf("\nthe max is: %s\n", maxstr);
return 0;
}
```
在函数`fun`中,我们首先定义了一个变量`max_len`用来记录目前找到的最长字符串的长度,以及一个指针`max_str`来指向目前找到的最长字符串。接着,我们遍历整个二维字符数组`word`,对于每个字符串,我们都计算其长度,如果其长度比`max_len`还大,就更新`max_len`和`max_str`。最后,函数返回`max_str`。
在`main`函数中,我们定义了一个二维字符数组`color`,并初始化了其中的五个元素。然后,我们调用`fun`函数来找出其中长度最长的字符串,并将返回的地址赋值给指针变量`maxstr`。最后,我们输出整个二维字符数组以及找到的最长字符串。
阅读全文