活动设计题      请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。例如,输入beijing<CR>shanghai<CR>(<CR>为回车键),函数将返回shanghai。
    请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
    给定源程序:
    #include<stdio.h>
    char*fun(char*s,char*t)
    {
    }
    main()
    {char a[20],b[20];
    printf('Input 1th string:');
    gets(a);
    printf('Input 2th string:');
    gets(b);
    printf('%s\n',fun(a,b));
    }
 
【正确答案】char *fun (char *s, char *t) { int i,j; for(i=0;s[i]!='\0';i++); /*求字符串的长度*/ for(j=0;t[j]!='\0';j++); if(i<=j) /*比较两个字符串的长度*/ return t; else return s; }
【答案解析】 本题中,第1个for循环的作用是求出s串的字符个数i,第2个for循环的作用是求出t串的字符个数j,因为任何循环都要控制一条语句,所以在每一个for循环语句后面加上一个分号以结束循环。