给定程序MODI1.C中函数fun的功能是:按以下递归公式求函数值。 例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得

admin2017-07-27  27

问题 给定程序MODI1.C中函数fun的功能是:按以下递归公式求函数值。

    例如,当给n输入5时,函数值为18;当给n输入3时,函数值为14。
    请改正程序中的错误,使它能得出正确结果。
    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
1  #include<stdio.h>
2   /**********found**********/
3  int fun(n)
4  {  int c;
5   /**********found**********/
6    if(n=1)
7   c=10;
8   else
9    c=fun(n-1)+2;
10    return(c);
11   }
12  main()
13  { int n;
14    printf(’’Enter n:’’);scanf(’’%d’’,&n);
15   printf(’’The result:%d\n\n’’,fun(n));
16   }

选项

答案(1)int fun(int n) (2)if(n==1)

解析 函数功能是按题目中给出的递归公式求函数值。
    (1)定义函数fun时,形参n并没有指定参数类型,因此,“int fun(n)”改为“int fun(int n)”。
    (2)根据题目要求,原题中的“if(n=1)”应该是用于判断n是否等于1,但是被错误表示成赋值表达式。因此,“if(n=1)”应该改为“if(n==1)”。
转载请注明原文地址:https://kaotiyun.com/show/YKDp777K
0

最新回复(0)