二建成绩合格证明:C语言编程题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 09:36:34
编写函数int fun(char (*ss)[N],int m,char *s),功能是:形参ss指向一个
m行N列的二维字符数组,每行存放一个字符串.求出最长的字符串,复制到s所指
的字符数组中,然后返回此最长字符串的长度. */
#define N 30
int fun(char (*ss)[N],int m,char *s)
{
}
main()
{char a[8][N],b[N];
int i,len;
for(i=0;i<8;i++)
gets(a[i]);
len=fun(a,8,b);
printf("len=%d,str=%s\n",len,b);
}

/*编写函数int fun(char (*ss)[N],int m,char *s),功能是:形参ss指向一个
m行N列的二维字符数组,每行存放一个字符串.求出最长的字符串,复制到s所指
的字符数组中,然后返回此最长字符串的长度. */
#define N 30
#include <string.h>
#include <stdio.h>
#include <conio.h>
int fun(char (*ss)[N],int m,char *s)
{
int i,len;
int max = -1; //初始化最大长度
for(i=0;i<m;i++)
{
len = strlen(ss[i]);
if(len >max ) {
max=len;
strcpy(s,ss[i]);
}
}
return max;
}
main()
{char a[8][N],b[N];
int i,len;
for(i=0;i<8;i++)
gets(a[i]);
len=fun(a,8,b);
printf("len=%d,str=%s\n",len,b);
}

int fun(char (*ss)[N],int m,char *s)
{
int i,t,l=0;
char *temp=ss[0];
for (i=0;i<m;i++)
{
t=strlen(ss[i]);
if (t>l) {t=l; temp=ss[i];}
}
strcpy(s,temp);
return l;

}

int fun(char **ss,int m,char *s)
{
int i,j,max;
max=strlen(*ss);
for(i=1;i<m;i++)
if(max<strlen(*ss+i))
{max=strlen(*ss+i);
s=*ss+i;}
return max;
}