问答题 请编一个函数fun(char *s),函数的功能是把s所指字符串中的内容逆置。 例如:字符串中原有的字符串为:abcdefg,则调用该函数后, 串中的内容为:gfedcba。 注意: 部分源程序存在文件PROG1.C中。 请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include #include #define N 81 fun ( char *s ) { } 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( ); }
【正确答案】fun ( char *s ) { 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) ; }
【答案解析】