C语言
求解析这段代码如何实现需求的 本帖最后由 Cool_Breeze 于 2020-4-11 17:21 编辑
#include <stdio.h>
int F(int x);
int SunFun(int n);
int main(void)
{
printf("%d\n",SunFun(10));
return 0;
}
int F(int x)
{
return x*x+1;
}
int SunFun(int n)
{
int x,s=0;
for (x=0;x<=n;x++) s+=F(x);
return s;
} Cool_Breeze 发表于 2020-4-11 16:18
所以书上for循环那里是x<n是吧?书上打印错误? #include<stdio.h>
int F(int x)//定义一个F函数,返回F(x)
{
return x*x+1;//F(x)=x*x+1
}
SunFun(int n)//定义求和函数SunFun()(我觉得是SumFun()打错了)
{
int x,s=0;
for(x=0;x<=n;x++)
s+=F(x);//循环求和
return s;//返回和s
}
int main(void)
{
printf("The sum=%d\n",SunFun(10));//调用SunFun()并输出SunFun(10)的值
return 0;//结束
} 本帖最后由 墨羽岚 于 2020-4-11 16:45 编辑
老牛来学习 发表于 2020-4-11 16:37
所以书上for循环那里是x
是<=,求10以内包括10的F(x)和
你这么写答案虽然是对的,但是逻辑上不对
按你这么写还不如不定义F直接丢进去算 墨羽岚 发表于 2020-4-11 16:42
是
这么算是求f(0)到f(10)的累加和是吧,之前想错了,一直想f(1)到f(10)的累加和。。 墨羽岚 发表于 2020-4-11 16:42
是
答案就是这样,不这样写还能怎么填答案? 老牛来学习 发表于 2020-4-11 17:05
答案就是这样,不这样写还能怎么填答案?
你看看我和楼上那位的答案和你的答案有啥区别{:10_277:} #include <stdio.h>
int F(int x) {
return x * x + 1;
}
int SunFun(int n) {
int x, s = 0;
for(x = 0; x <= n; ++x) {
s += F(x);
}
return s;
}
int main(void) {
printf("The sum = %d\n", SunFun(10));
return 0;
}
页:
[1]