當前位置:首頁 » 編程語言 » c語言遞加數列求和
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言遞加數列求和

發布時間: 2022-05-29 03:39:24

1. c語言編程:求數列的累加和

#include<stdio.h>
#define N 100
int main()
{
int n;
float sum=0,i;
printf("輸入n的值:");
scanf("%d",&n);
for(i=1;i<=n;i++)
sum=i/(n-i+1);
printf("%f",sum);
return 0;
}

2. C語言問題,數列求和:計算從m到n的和。

int sum( int m, int n)
{
int i = m;
int sum = m;

if ( m > n )
{
printf( "\n A mistake: m = %d > n = %d \n", m, n);
return;
}
else
{
while ( i < n )
{
i++;
sum += i;
}
}

return sum;
}

3. C語言編程數列求和

這是c語言的語法啊 sum += double(b) / a 等同於 sum = sum + double(b) / a
右邊的sum表示變數sum的地址 因為在等號的左邊所以也稱作左值
所以是把 sum的值加上 轉換成double類型的b和a的商 儲存於 sum變數的地址中
明白了嗎?

4. C語言數列求和

intmain()
{
doublex,sum,jd,xf=1,i=1,jc=-1,m;
scanf("%lf",&x);
sum=0;
do
{
jc=-jc*i;
xf*=x;
m=xf/jc;
jd=fabs(m);
sum=sum+m;
i++;
}
while(jd>0.00001);
printf("sum=%.2f",sum);
return0;
}

有兩點錯誤:

1、do-while之間沒有{},加上即可;

2、jc沒有賦初始值,在for循環前(do-while內)應加上jc=1;

另:上面代碼為我作的小小修改(稍微提高一點效率)

5. c語言數列求和:求1-2/3+3/5-4/7+5/9-6/11+...的前n項和,結果保留3位小數

i/deno只有當i
=
1
deno
=
1,i/deno
=
1,
其他情況得0,因為"/"對於int型數據來說,除後取整操作,即10/9=1.111111......,那麼實際結果為1,小數點後的全部丟棄(不是四捨五入,而是全舍)
要想得到你要的結果應該這樣
1.0
*
i
/
deno
//1.0是double型的,與i相乘還得double型的,這樣就能出正確結果

((double)
i
)
/
deno

6. 用c語言給數列:1,1,2,3,5,8…求和

#include <stdio.h>

#include <math.h>


int main() {

int array[41];

int i;

array[1] = 1;

array[2] = 1;

for(i=3;i<=40;i++) {

array[i] = array[i-1] + array[i-2];

}

printf("%d ", array[40]);

return 0;

}

7. 問個C語言題目

這尖有規律的數列求和問題在等級考試二級C機試中大量出現,解決它的關鍵在於找出求和的各個元素之間的規律!!!
本題各元素的規律是:
下一個元素=當前元素*10+a,其在程序中的實現就是兩條語句(tn=tn+a;和a=a*10;)!!!這就是乘10的用途
知道各元素間遞推關系並對應為C循環體中語句後,再在循環體中加累加求和語句:sn=sn+tn;

掌握了以上關鍵之後,此類題的其它注意問題就是:
1.通過一層FOR循環實現演算法!
2.注意元素及累加結果變數的初值
3.一定最後要檢查程序中第一、二次循環及最後一次循環對應的元素及和是否符合題目要求!

另:++i; 在這條語句里沒有區別!因為它並沒和其它子表達式構成復合表達式!當和其它子表達構成復合表達式時,如x=i++; 這時,i++是先計算整體表達式的值,再對i加1,所以先算x=i,之後才給i加1;而x=++i; 則相反,先計算i=i+1,然後再用新的i值計算x=i!

8. C語言數列的求和1-1/2+1/3-1/4.......的編寫

你的程序和題目是兩碼事。
先拋開題目,說說你程序的問題。
1、a=pow(-1,y),對於給定的n,則a的正負是一定的,起不到改變正負號的作用。
2、for循環需要用大括弧括起來。
3、其它不再贅述,下面是具體修改的方法。
修改:
#include<stdio.h>
#include<math.h> //沒有必要載入
int main()
{
double n,i,sum,y,a=1; //對a賦初值1,不需要變數y
while(scanf("%lf",&n)!=EOF)
{
sum = 0;
for(i=1;i<=n;i++)
{ //增加大括弧
//y = n+1;//此句刪除
//a = pow(-1,y);//此句刪除
sum = sum+(1.0/i*a);
a=-a;//增加此句
}//增加大括弧
printf("%.2lf\n",sum);
}
return 0;
}
再說題目。如果原題確實如你所寫,那麼應該是一直加下去,而不是讓你輸入項數。程序如下:
#include <stdio.h>
int main()
{
double i,s=0,a=1;
for(i=1;1/i>=1e-6;i++)
{s+=a/i;a=-a;}
printf("s=%f",s);
return 0;
}

9. c語言數列求和

#include <stdio.h>
main()
{
float sum;
int i, j=1, k=2;
for(i = 1; i <= 20; i++) {
printf("%d %d\n", j, k);
sum = 1.0 * j / k;
k += j;
j = k - j;
}
printf("前20項數列和是: %f\n", sum);
}

10. C語言數列求和問題

while(i<=n)之前


Sn沒有清0i清1