从num个字符串中找出最长的一个字符串,我这fun函数哪里有错误🙏

#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>

char fun(char (a)[81], int num, char max)
{
int t=strlen(a[0]);
int i,j;
for(i=0;i<num;i++)
if(t<strlen(a[i]));
{
t=strlen(a[i]);
max=a[i];
}
return max;
}
void main()
{
char ss[10][81],ps=NULL;
int i=0,n;
printf("输入若干个字符串:");
gets(ss[i]);
puts(ss[i]);
while(!strcmp(ss[i], "
")==0)
/用4个星号作为结束输入的标志/
{
i++;
gets(ss[i]);
puts(ss[i]);
}
n=i;
ps=fun(ss,n,ps);
printf("\nmax=%s\n",ps);
}

img


char *fun(char (*a)[81],int num,char *max)
 
{
 
int i=0;
 
max=a[0];
 
for(i=0;i<num;i++)   /*找出最长的一个字符串*/
 
if(strlen(max)<strlen(a[i]))
 
max=a[i];
 
return max;   /*传回最长字符串的地址*/
 
}