ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

c程序设计语言第五章第7题答案

2021-05-10 12:54:59  阅读:157  来源: 互联网

标签:遍历 limits 求和 sum 整数 第五章 答案 程序设计 100


7.\(\sum\limits_{k=1}^{100}k\) +\(\sum\limits_{k=1}^{50}{k}^2\) +\(\sum\limits_{k=1}^{10}{\frac{1}{k}}\) 。

答案解析:

对于\(\sum\limits_{k=1}^{100}k\)而言,指的是求从1到100的和。每个数字为整数,求和也为整数

对于\(\sum\limits_{k=1}^{50}{k}^2\)而言,指的是求从12到502的和。每个数字为整数,求和也为整数。

对于\(\sum\limits_{k=1}^{10}{\frac{1}{k}}\)而言,指的是求从\(\frac{1}{1}\)到\(\frac{1}{10}\)的和。每个数字不是整数,求和也不是整数。

综上所述:求和结果不是整数,所以定义求和变量是需要定义为带有精度的变量double

该题目,最大的求和是从从1到100,所以需要一个循环,从1遍历到100。针对第一种情况,则遍历100次停下来。针对第二种情况,则遍历50次的时候停下来,针对第三种情况,则遍历10遍就停下来。

最后,在遍历每一个数字的时候,针对三种不同的情况求和。最后将三种不同请求的和加起来就是总体的和

代码示例:

#include <stdio.h>

int main()
{
	double total_sum = 0, sum1 = 0, sum2 = 0, sum3 = 0.0;
	for (int k = 1; k <= 100; k++)
	{
		sum1 += k;
		//遍历50次就不在执行情况2
		if (k <= 50)
		{
			sum2 += k * k;
		}
		//遍历10次就不在执行情况3
		if (k <= 10)
		{
			sum3 += 1.0 / k;
		}
	}
	total_sum = sum1 + sum2 + sum3;
	printf("三种情况求和结果为:%lf\n", total_sum);
	return 0;
}

运行截图:

+ +

标签:遍历,limits,求和,sum,整数,第五章,答案,程序设计,100
来源: https://blog.51cto.com/u_14828537/2765203

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有