给定程序MODI1.C中函数fun的功能是:将字符串中的字符按逆序输出,但不改变字符串中的内容。 例如,若字符串为abcd,则应输出:dcba。 请改正程序中的错误,使它能计算出正确的结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构

admin2013-09-15  20

问题 给定程序MODI1.C中函数fun的功能是:将字符串中的字符按逆序输出,但不改变字符串中的内容。
例如,若字符串为abcd,则应输出:dcba。
请改正程序中的错误,使它能计算出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include <stdio.h>
/**********found**********/
fun  (char a)
{  if(*a)
    {  fun(a+1);
/**********found**********/
       printf("%c"  *a);
    }
}
main()
{  char s[10]="abcd”;
  printf("处理前字符串=%s\n处理后字符串=",S);
  fun(s);printf("\n");
}

选项

答案(1)void fun(char *a) (2)p ri nt f("%c", *a);

解析 (1)主函数中“fun(s);”语句中的s是数组名,所以在fun函数中参数的定义应该是指针型,“fun(chara)”改为“void fun(char *a)”。
    (2)printf函数的调用形式是:printf(格式字符串,输出项表),在格式字符串和输出项表之间有“,”,因此第二个标识处应该是“printf("%c",*a);”。
转载请注明原文地址:https://jikaoti.com/ti/21n0FFFM
0

最新回复(0)