作业帮 > 综合 > 作业

求高手帮我看看我写的这道C语言程序哪里错了!

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/02 06:40:49
求高手帮我看看我写的这道C语言程序哪里错了!
/*
【问题描述】实验指导书 P42 第7题.可参考教材P32,使用for 循环累加.

输入一个正整数n,输出2/1 + 3/2 + 5/3 + 8/5 + …的前n项之和,保留2位小数.
(该序列从第二项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子)。

提示:每一项的分子和分母在变化,因此要定义两个整型变量分别保存分子和分母的值(假设为 int fenzi,fenmu; ),
将当前项加入sum中后,需要计算下一项的分子和分母,这时还需要一个整型变量假设为t.
计算下一项的分子和分母:
t=fenzi;
fenzi=fenzi+fenmu;
fenmu=t;


【输入形式】
从键盘输入一个正整数n.

【输入输出样例1】(下划线部分表示输入)
Input n: 20
s=32.66

【样例说明】
输入提示符后要加一个空格.其中“:”后要加一个且只能一个空格.
输出语句的“=”两边无空格.
英文字母区分大小写.必须严格按样例输入输出.
*/
# include
int main(void)
{
int i,n,fenzi,fenmu,t;
double item,sum;
printf("Input n: ");
scanf("%d",&n);
fenmu=1;fenzi=2;sum=0;
for(i=1;i
求高手帮我看看我写的这道C语言程序哪里错了!
你的分子和分母都是整数,它们相除的结果会是一个整数,比如:1/2=0,3/2=1,而不会像你预期的那样是一个小数的结果.把其中的一个改成double类型即可,或者item=(double)fenzi/fenmu