伪善丿 2022-04-14 16:24 采纳率: 80%
浏览 31
已结题

c语言一个简单程序运行有点晕

#include <stdio.h>
int a[]={0,1,2,3,4,5,6,7,8,9};
int f(int n)
{
if(n==1) return a[0];
else return((n*f(n-1)+a[n]/(n+1)));
}
int main()
{
int n=6;
printf("f(%d)=%d",n,f(n));

}

过程有点懵 求解答
为什么等于f(6)=0;

  • 写回答

4条回答 默认 最新

  • flower in code 2022-04-14 16:41
    关注

    计算机运算有优先级不能用数学方法看待比如3*(2*(1)+2/3),这里2/3先运算为0了所以最后加法后的都是零结果也就是0了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月22日
  • 已采纳回答 4月14日
  • 创建了问题 4月14日