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

c語言計算數列1是什麼

發布時間: 2022-07-05 13:51:17

c語言計算數列1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + …的前n項之和

手邊沒有電腦,沒法調試。代碼邏輯看起來沒什麼問題,應該是對的。就是你這樣用scanf不太好。標准輸入始終都會有一個換行符,可能會導致輸入的問題。
建議你加個getchar可以解決這個問題。
另外就是你的邏輯,感覺有點難理解,建議改為for(i=1;i<=n;i++)
if就可以寫成i%2
你覺得呢?

② c語言:求數列:1,1+2,1+2+3,...,1+2+3+...+n 的前n項之和.(n從鍵盤輸入)

#include<stdio.h>
intslSum(intn);//數列求和1+2+3...n返回和
intmain()
{
intn,i,sum=0;
printf("輸入n:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
sum=sum+slSum(i);
}
printf("%d項之和為:%d ",n,sum);
return0;
}
intslSum(intn)//數列求和1+2+3...n返回和
{
inti=1,sum=0;
for(i=1;i<n;i++)
{
sum=sum+i;
printf("%d+",i);
}
sum=sum+i;
printf("%d,",i);

returnsum;
}

③ c語言編程計算數列1/2,-2/3,3/5,-5/8,8/13,…的前20項和!!大神~~~求求求

// 求數列的前n項之和,數列初始元素為1/2
//下一元素的分子是上一元素的分母
//下一元素的分母是上一元素的分子分母絕對值之和
//偶數項為負,奇數項為正
double sum(unsigned int n)
{
int i = 0;
double sum = 0;
double numerator, denominator, tmp;
numerator = 1.0; //分子
denominator = 2.0; //分母
if (n <= 0)
return 0;
sum = 0.5; // 1/2 數列中第一個元素,分子為1, 分母為2
for (i = 1; i < n; ++i)
{
if (i % 2 == 0)
{
sum += denominator / (denominator + numerator);
}
else
{
sum -= denominator / (denominator + numerator);
}
// 計算數列中下個元素的分子分母,下一個元素的分子是上一個元素的分母
// 下一個元素的分母,是上一個元素的分子分母絕對值之和
tmp = denominator;
denominator += numerator;
numerator = tmp;
}
return sum;
}

④ 怎樣用c語言函數的方法來編程:數列1,1,2,3,5,8……,求第20 項

基本是「斐波拉契數列」最原始的是0,1,1,2,3,……
從第3項後每項的值是前兩項的和。
下面用函數的遞歸調用求第20項的值。
——————————————————————————
#include <stdio.h>
int sn(int n);
int main()
{
int n=20;
printf("s20=%d\n",sn(n));
getch();
return 0;
}
int sn(int n) /*定義的求第n項的函數*/
{
int s;
s=n>2?sn(n-1)+sn(n-2):(n>1?2:1); /*遞歸調用部分,重點在這*/
return s;
}

⑤ C語言如何輸出數列1,1,2,2,3,3……求演算法

for( int i = 1 ; i <= n ; i++ )
{
printf("%d,%d,",i,i) ;
}
這樣可以嗎

⑥ 求大神分析:C語言:求數列1!+3!+5!+7!+9!

1,for循環的使用,建議無論循環體有幾句,都加上花括弧,這是一個好習慣。

for()
{
for()
{
;
}
;
}


2,對於k的使用,需要注意,k存放的是j!的結果,因此在j改變之後,需要對k重新賦值。

修改後代碼如下:

#include <stdio.h>
main()
{
int i,j,s,k;
s=1;k=1;
for(i=3;i<=5;i+=2)
{
k=1;
//每次計算j!時,k初始化為1,樓主原來只在最開始初始化k,最終導致結果超過int表示範圍,而變成負數
for(j=2;j<=i;j++)
{
k=k*j;
}
s=s+k;
}
printf("%d",s);
}

⑦ c語言程序設計 計算數列1/2,2/3,3/5,5/8,8/13,……的前20項和。

#include<stdio.h>
int main()
{
int i;
double a=1.0,b=2.0;
double s=0;
for (i=1;i<=20;i++)
{
s+=t*a/b;
b=b+a;
a=b-a;
}
printf("%lf\n",s);
return 0;
}
———————————————————————————————
希望答案能幫到你,要是你有疑問可以追問
當然,採納也是您的美德,謝謝

⑧ c語言計算數列1!2!3!4!前20項的和

#include<stdio.h>
#define MAX 20
int main()
{
int i,j,sum=0,jiecheng;
for(i=1;i<MAX+1;i++)
{
jiecheng=1;
for(j=1;j<i+1;j++)
{
jiecheng=jiecheng*j;
}
sum=sum+jiecheng;
}
printf("%d\n",sum);
return 0;
}

⑨ 求數列1,1,2,3,5……前20項的和,用C語言編寫

哦,這是求Fibonacci數列前20項的和
樓上的方法沒錯,只是演算法有些復雜,下面的演算法就可以解決這個問題
#include
"stdio.h"
#include
"conio.h"
main()
{
int
temp1=1;
int
temp2=1;
int
temp3=0;
int
sum=temp1+temp2;
for(int
i=1;i<=20;i++)
{
temp3=temp2+temp1;
sum+=temp3;
temp2=temp3;
temp1=temp2;
}
printf("sum=%d",sum);
getch();
}