重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1+3+5+...+(2n-1) = n(1+2n-1)/2 = n^2
开平网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。成都创新互联公司于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司。
1^2+2^2+3^2+n^2 = n(n+1)(2n+1)/6
所以编程实现的话如下:
#include "stdio.h"
int main ()
{
int n,ret;
printf("please input a integer n:");
scanf("%d",n);
while(n 0)
{
ret = n*(n+1)*(2*n+1)/6;
printf("result : %d\n",ret);
printf("please input a integer n:");
scanf("%d",n);
}
return 0;
}
#includestdio.h
int
fun(int
n);
/*函数的声明(在main()函数后面定义的函数,一般要在调用他之前声明一下)*/
int
main(void)
{
int
n,s;
printf("n=");
scanf("%d",n);
/*输入项数n*/
s=fun(n);
/*调用函数求和*/
printf("Sum=%d",s);
}
int
fun(int
n)
{
int
i,a=0,s=0;
for(i=1;i=n;i++)
{
a=a+i*2-1;
/*用变量a来存放级数的第i项(A(i)=A(i-1)+i*2-1)*/
s=s+a;
/*用s存放前i项的和*/
}
return
s;
}
#include stdio.h
double fun(double x,int n)
{
double result = 1.0;
double item = 1.0;
int i;
for (i = 1; i = n; i++)
{
item = item * x / i;
result += item;
}
return result;
}
int main()
{
double x;
int n;
scanf("%lf%d",x,n);
printf("%lf\n",fun(x,n));
}
#include stdio.h
#include math.h
int main(void)
{
double f = 1;
double x, k, x2, power = 1;
int i = 2;
scanf("%lf", x);
power += x;
k = x;
do {
x2 = power;
f *= i++;
x *= k;
power += x / f;
} while(fabs(power-x2) 1e-8);
printf("%f", power);
}
/////////////////////////
你那个代码,1、pow函数可以不用自己写,你写的精度也不够;2、保存阶乘最好用double,不然要溢出。
修正了以上2点就没问题了,代码如下:
#include stdio.h
#include math.h
double f1(int n)
{
double s = 1;
int i;
for ( i=1; i=n; i++)
s *= i;
return s;
}
main()
{
int x,i, n;
double ex = 1;
scanf("%d%d",x,n);
for ( i=1; i=n; i++)
ex += pow(x, i) / f1(i);
printf("%lf %lf\n",ex, exp(x));
}