❶ c語言編程 求序列前N項和
2/1+3/2+5/3+8/5+...這個數列每項的分子、分母分別是Fibonacci數列的後一項與前一項。求這一數列前N項的和可採取N由鍵盤輸入,設一循環按Fibonacci數列規律求出分子與分母,將將分式轉換為浮點除法求值累加獲得最後結果。舉例代碼如下:
#include"stdio.h"
intmain(intargc,char*argv[]){
inta,b,i,N;
doubles;
printf("InputN(int0<N<44)... N=");//大於43時int范圍溢出
if(scanf("%d",&N)!=1||N<1||N>43){//保證輸入正確
printf("Inputerror,exit... ");
return0;
}
for(s=0.0,a=2,b=i=1;i<=N;i++){//由此循環計算
s+=a/(b+0.0);//當前項累加給s
a+=b;//下一項的分子是當前項分子分母之和
b=a-b;//下一項分母是當前項分子
}
printf("Theresultare%.2f(whenN=%d) ",s,N);
return0;
}
試運行結果如下圖:
❷ C語言,輸入n,計算前n項和
#include<stdio.h>
intmain()
{
inti,n;
inta1,b1,a2,b2,ai,bi;
floatsum,t=1.0;
a1=2,b1=1;
a2=3,b2=2;
sum=t*a1/b1+t*a2/b2;
scanf("%d",&n);
for(i=2;i<n;i++)//從第3項開始
{
ai=a1+a2;
bi=b1+b2;
sum+=t*ai/bi;
a1=a2,b1=b2;
a2=ai,b2=bi;
}
printf("前%d項和=%f ",n,sum);
return0;
}
示例運行結果:
2
前2項和=3.500000
3
前3項和=5.166667
10
前10項和=16.479906
❸ C語言:求出以下數列的前n項之和,和值通過函數值返回
#include<stdio.h>
intsum(intcount)
{
inti;
sum=0;
for(i=1;i<=count;i++){
sum+=i;
}
returnsum
}
intmain(){
intresult=sum(100);
printf("%d ",result);
return0;
}
❹ C語言題目輸入正整數n,計算該數列前n項的和
#include <stdio.h>
void main()
{
int n,i;
float s=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
s += 1.0 / (i * (i + 1));
printf("前%d項和為:%.6f",n,s);
}
❺ C語言計算序列 1 + 1/3 + 1/5 + ... 的前N項之和答案精確小數點後六位
#include<stdio.h>int main(){ int n,i; //double sum;//sum沒有初始化 double sum=0.0;//求和,置sum為0 //printf("請輸入數字n:",n);//這句逗號後面的n是多餘的,不參與輸出 printf("請輸入數字n:"); scanf("%d",&n); for(i=1;i<=n;i++) { if(i%2==0) //sum=sum-1/(3*i-2);//1/(3*i-2),由於參與運算的全是整型,算出結果也將是整型,應當加入浮點型 sum=sum-1.0/(3*i-2); else //sum=sum+1/(3^i-2);//這里一個錯誤同上,一個錯誤是把*寫成了^,天壤之別哦 sum=sum+1.0/(3*i-2); } //printf("sun=%.3f",&sum);//加&取地址,這樣輸出的是sum的地址值 printf("sum=%0.3f\n",sum); return 0;}
❻ c語言求數列前n項和
main(){
int i,n,s=1,f[]={0,1,1};
printf("Please input the number of terms:");
scanf("%d",&n);
if(n==0){s=0;f[2]=0;}
for (i=2;i<=n;i++)
{ f[2]=f[1]+f[0];f[0]=f[1];f[1]=f[2];
s+=f[1];
}
printf("f(%i)=%i\n",n,f[2]);
printf("Sum(%i)=%i\n",n,s);
scanf("%d");
}
❼ C語言 求多次運算前N項的和。
#include<stdio.h>
#include<stdlib.h>
intmain()
{
intcount;
intnum;
printf("輸入運算次數:");
scanf("%d",&count);
for(inti=0;i<count;i++)
{
printf("輸入第%d個運算的項數:",i+1);
scanf("%d",&num);
printf("前%d項和為:%d ",num,(num*(num+1))/2);
}
system("pause");
return0;
}
❽ c語言 計算下列 算式前n項和 :(注意使用浮點數double)
#include<stdio.h>
main()
{intn,i;
doubles=0,a,b;
printf("請輸入一個數:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
a=(2*n-1)*(2*n+1);
b=4*n*n;
if(i%2)
s+=a/b;
else
s-=a/b;
}
printf("%lf ",s);
}
如有不懂,歡迎追問!
❾ C語言求前n項和,不知道哪裡錯了
經鑒定,LZ對於C語言中的數組/指針以及函數的相關知識點還沒掌握好
這一題的正確思路應該是,設計一個函數int feibo(int n),該函數的作用是返回斐波那契數列第n項的值。主函數中獲取用戶輸入的N,然後一個循環輸出斐波那契的前N項
如果需要的話請追問,我可以根據我給你的思路提供相關代碼供你參考
❿ c語言編程,計算並輸出下列級數的前n項之和Sn Sn=2/1+3/2+5/3+8/5+13/8+21/13.......
#include "stdio.h"
void main()
{
float t,a,b,c;
c=0;
a=2;
b=1;
while(t>2){ //你的t還沒有值, 是個隨機數,怎麼和2比較?
//c=c+t; // 同上,t沒有值,怎麼運算?
a=b+1; //每次都是a=2; b=1,就是2+2+2+2.。。。。。。。,不符合題意。
b=a-1;
t=a/b;
}
printf("%f\n",t); // 列印t做什麼,應該是c。
}
改成這樣:
#include "stdio.h"
void main()
{
float t,a,b,c;
int n = 0;
c=0;
a=2;
b=1;
do{
t=a/b;
c=c+t;
a++;
b++;
n++;
}while(n<100);
printf("%f\n",c);
}