C程序-等差数列

我是新手,求教,
Description:
求等差数列的公差和前N项的和。
Input:
等差数列的首项A0 等差数列的末项AN 项数N
Output:
公差d
前N项和Sn

#include <stdio.h>
#include <math.h>
int main()
{
    int a1,an,n,sn,d;//a1首项,an末项,N项数,sn等差数列前n项和,d公差
    printf("请输入等差数列首项:");
scanf("%d",&a1);
printf("请输入等差数列末项:");
scanf("%d",&an);
printf("请输入等差数列项数:");
scanf("%d",&n);
d=(int)((an-a1)/n+1);
sn=(int)(a1*n)+((n*n-n*1)/2*d);
    printf("公差=%d\n",d);
printf("等差数列前%d项和S%d=%d\n",n,n,sn);
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-12
#include<stdio.h>
#include<math.h>
void main()
{ double a0,an,d,sn,x;
int i,n;
printf("请输入A0,An,N: "); scanf("%lf,%lf,%d",&a0,&an,&n);
d=(an-a0)/n;
for ( i=0,x=a0,sn=0;i<n;i++,x+=d ) sn+=x;
printf("公差%lf\n前%d项和%lf\n",d,n,sn);
}本回答被网友采纳
相似回答