比较两个数组长度,输出较长数组

 

今天做题,要求是比较两个数组长度(不得使用c语言提供的求字符串函数),输出较长数组,结果提交后没有分,请大佬们帮忙看看哪里出问题了。

代码如下:

#include <stdio.h>
char  *fun ( char *s,  char *t)
{
    int m=0,n=0;
    char *u=s;
    while(*s!='\0')
    {
        s++;
        m++;
    }
    while(*t!='\0')
    {
        t++;
        n++;
    }
    if(n>m)
        u=t;
    return u;
}

void main ( )
{ char a[20],b[20];
  void NONO (  );
  printf("Input 1th string:");
  gets( a);
  printf("Input 2th string:");
  gets( b);
  printf("%s\n",fun (a, b));
  NONO ();
}

void NONO ( )
{/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */
  FILE *fp, *wf;
  int i ;
  char a[20], b[20];

  fp = fopen("in.dat","r");
  wf = fopen("out.dat","w");
  for(i = 0 ; i < 10 ; i++) {
    fscanf(fp, "%s %s", a, b);
    fprintf(wf, "%s\n", fun(a, b));
  }
  fclose(fp);
  fclose(wf);
}

(++t)后才赋值给u