c语言:求1/2+2/3+3/4+……n-1/n的和|练习题

发布时间:2023年12月24日

一、题目
求1/2+2/3+3/4+……n-1/n的和
如图:

0e7082dd404349aea170fd3ba1f077c8.jpg

?

二、思路分析
1、1/2、2/3、3/4……可以用(i/i+1)
2、设置一个函数,求数的相加之和

?

三、代码截图【带注释】

4901098fa2f14ecfa206dc333fe1fad1.jpg

?

四、源代码【带注释】

#include <stdio.h>
int main()
{
? ? int num;
? ? printf("输入一个数:");
? ? scanf("%d",&num);

? ? //调用[分数序列和]函数
? ? fenShuXuLieHe(num);
}

//设置[分数序列和]函数,计算并打印总和
fenShuXuLieHe(int num)
{
? ? float count=0;//总和变量

? ? //算总和
? ? for(int i=2; i<=num; i++)
? ? {
? ? ? ? count=count+(float)i/(i+1);
? ? }

? ? //按照1/2+2/3+3/4……=的格式打印
? ? if(num<=4)
? ? {
? ? ? ? if(num==1)
? ? ? ? ? ? printf("和为1/2");
? ? ? ? if(num==2)
? ? ? ? ? ? printf("1/2+2/3=%.2f",count);
? ? ? ? if(num==3)
? ? ? ? ? ? printf("1/2+2/3+3/4=%.2f",count);
? ? ? ? if(num==4)
? ? ? ? ? ? printf("1/2+2/3+3/4+4/5=%.2f",count);
? ? }
? ? else
? ? {
? ? ? ? printf("1/2+2/3+3/4……+%d/%d=%.2f",num,(num+1),count);
? ? }
}

?

五、运行截图
【注意】各数打印效果不同
1、数为1时

8c2a9c608dc54b68b4eb9948af34fefa.jpg
2、数为2时

e33ca667ceb148bbb93516f8c7fdb4e6.jpg
3、数为3时

e0d9c28db6384bd58dc5f0d69586af8f.jpg
4、数为4时

d8e211bc79664a7f98a908a048c1aca7.jpg
5、数为5时

?edf3d56889a140efb963e3df981c4616.jpg

六、本题难点
难点在于如何随数字变化,打印出1/2+2/3或者1/2+2/3+3/4的结果。

?

关注我,?每天分享编程知识
?

文章来源:https://blog.csdn.net/2301_76173427/article/details/135180041
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。