一、题目
求1/2+2/3+3/4+……n-1/n的和
如图:
?
二、思路分析
1、1/2、2/3、3/4……可以用(i/i+1)
2、设置一个函数,求数的相加之和
?
三、代码截图【带注释】
?
四、源代码【带注释】
#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时
2、数为2时
3、数为3时
4、数为4时
5、数为5时
?
六、本题难点
难点在于如何随数字变化,打印出1/2+2/3或者1/2+2/3+3/4的结果。
?
关注我,?每天分享编程知识
?