活动设计题  
    请编一个函数fun(char*s),函数的功能是把s所指字符串中的内容逆置。
    例如:字符串中原有的字符串为:abcdefg,则调用该函数后,串中的内容为:gfedcba。
    注意:部分源程序存在文件PROG1.C中。
    请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
    #include<string.h>
    #include<stdio.h>
    #define N 81
    fun(char *s)
    {

    }
    NONO()
    {/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。  */
    int i;
    char a[N];
    FILE *rf, *wf;
    rf=fopen('in.dat', 'r');
    wf=fopen('out.dat', 'w');
    for(i=0; i<10; i++) {
    fscanf(rf, '%s', a);
    fun(a);
    fprintf(wf, '%s\n', a);
    }
    fclose(rf);
    fclose(wf);
    }
    main()
    {char a[N];
    printf('Enter a string:'); gets(a);
    printf('The original string is:'); puts(a);
    fun(a);
    printf('\n');
    printf('The string after modified:');
    puts(a);
    NONO();
    }
 
【正确答案】char b [N]; int i=0, j; memset(b, 0, N); for(j=strlen(s)-1; j>=0; j--)b[i++]=s[j]; strcpy(s, b); 答案考生文件夹
【答案解析】该程序功能是字符串中的内容逆置。把字符串中字符逆置,就是把字符串中的第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,直到所有元素交换完成为止。 [考点] 字符数组和字符串、for循环结构。