栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言计算规律题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言计算规律题

计算123+345+…99100101的值
  • 寻找每一项的规律,再求和。
#include 

int main()
{
	int i,sum = 0,term;
	for (i = 1;i <= 99;i += 2)
	{
		term = i * (i + 1) * (i + 2);
		sum += term;
	}
	printf("sum=%d",sum);
	return 0;
}
计算a+aa+aaa…的值
  1. 方法1。计算第一个值、求和、第二个值用第一个值乘以10加上第一个值。
#include 

int main()
{
	int n,a,sum = 0,term = 0;
	printf("请输入n和a的值:n");
	scanf("%d,%d",&n,&a);
	for (int i = 1;i <= n;i++)
	{
		term += a;
		sum += term;
		a *= 10;
	}
	printf("sum=%d",sum);
	return 0;
}
  1. 方法2。第二个值用第一个值乘以10加上第一个值,求和。
#include 

int main(void)
{
	int n,a,term=0,sum=0;
	printf("请输入n和a的值:n");
	scanf("%d,%d",&n,&a);
	for (int i = 1;i <= n;i++)
	{
		term = term * 10 + a;
		sum += term;
	}
	printf("sum=%d",sum);
	return 0;
}
计算1-1/2+1/3-1/4…,直到最后一项绝对值小于10^-6。
  • 把握精度。
#include 

int main(void)
{
	int i = 1;
	float sign = 1;
	double sum = 0;
	while ((1.0/i) >= 1e-6 || (1.0/i) <= 1e-6)
	{
		sum += sign / i;
		i++;
		sign = -sign;
	}
	printf("sum=%lf",sum);
	return 0;
}
计算sin(x)=x-x ^3/3!+x ^5/5!-x ^7/7!..,直到最后一项绝对值小于10 ^-5。
  • 防止溢出
#include 
#include 

int main(void)
{
	int n = 1,count = 1;
	float x;
	double sum,term;
	printf("请输入x值:n");
	scanf("%f",&x);
	sum = x;
	term = x;
	do{
		term = -term * x * x / ((n + 1) * (n + 2));
		sum += term;
		n += 2;
		count++;
	}while (fabs(term) >= 1e-5);
	printf("sin(x)=%f,count=%d",sum,count);
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1000975.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号