C語言題 計算公式 s 1 1

2021-05-14 10:22:31 字數 6117 閱讀 9613

1樓:匿名使用者

double sum=0;

for(int i=1;i<=n;i++)sum+=a;

} 這個要是在數學裡面還是蠻簡單的,哈哈哈

2樓:對影幽蓮

for(int i=1;i<=n;i++)

sum+=b;} - - b

3樓:精骨的文庫

#include

main()

sum+=1.0/s;

(1)設計c語言程式,按下面的近似公式計算:e=1+1/1!+1/2!+1/3!+......+1/n!+.....

4樓:匿名使用者

#include

void main()

while(k>1e-4);//判斷誤差是否小於給定的誤差限e=0.0001

printf("%f\n",e);}

5樓:飛飛

#include

#include

#define e 0.0001

int factorial(int i)

int main()

這個題主要是遞迴求階乘,其實很簡單~!

關於c語言的題「求s=1/1!+1/2!+1/3!+…+1/n!」我知道演算法但是我的結果最後一位與標準答案不一樣,求大神

6樓:匿名使用者

long long int nn,ii,zz;

double sum =0,kk;

nn=ii=1;

do while ( kk>= 1e-17 );

printf("\ns=1/1!+1/2!+...+1/%lld!=%.16lf\n",nn,sum);

這題需要採用精度做為結束條件,並且考慮到階乘得數是否會導致整型資料溢位。

7樓:匿名使用者

你的程式如果如下改改將可能會更好,因為這樣它將更簡潔,更容易看懂,也更快。

#include

int main( )

printf("\ns=1/1!+1/2!+...+1/%d!=%.16lf\n", n, sum);

return 0;}

8樓:犬蟲門心西安

你的程式沒有問題,結果也沒有問題。是因為double型別的有效位數是15位,到了第16位及後面的數字,就沒有意義了。這裡要涉及截斷誤差和積累誤差。

二進位制無法精確表示某些十進位制小數,而計算機記憶體容量又是有限的,所以在表示十進位制數值時,必然會因為參與表達數值小數部分的二進位制位數有限而產生誤差。而這個誤差又在計算中不斷放大,所以能有這麼一點誤差已經很不錯了!不要以為大學是高中考試,必須有標準答案。

c語言改錯:利用公式e=1+1/1!+1/2!+1/3!+.....+1/n!求e的近似值

9樓:聽不清啊

程式中的錯誤比較多,首先是計算階乘的函式,他明顯應該是有迴圈的。不是直接的簡單一個數字。

其次是一的表示明顯應該是是實數型別。你使用了長整型,這是錯的。還有兩個整數的除法,它的商仍然是一個整數,所以你原來程式中的p的計算就永遠是0。

下面是改好的程式和執行的結果。

#include

long fact(int n)

void main()

printf("e=%7.3f\n",e);}

c語言迴圈題!編寫一個程式,求s=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)。

10樓:凌亂心扉

#include

main()

}printf("%d\n",sum);}

11樓:匿名使用者

修改如下

#include

int main(void)

printf("%d\n",s);

return 0;

}圖為原程式在第二層迴圈加了個輸出,查出第二層迴圈有問題。

12樓:匿名使用者

3個錯誤:

1、第9行,item=1應該是item=02、第10行,j<=n應該是j<=i

3、第14行,%d應該是%lf

除此之外:思路很蠢,演算法過於複雜,對於每個累加項,每次都要從1開始加。

#include

void main()

printf("%d\n",s);}

13樓:福建省寧德市

首先,你輸出的格式不對,s是double型的數,你卻寫了%d,應該改為printf(%f\n",s)

其次,你迴圈條件設的不對,裡面的j迴圈條件應該改為for(j=1;j<=i;j++)

還有就是item的值設定為0比較好,這樣比較好計算修改後的**如下

#include

int main(void)

printf("%f\n",s);

return 0;}

14樓:匿名使用者

這種找規律的迴圈體寫一個統一的結構就行

15樓:兄弟連教育北京總校

#include

void main()

printf("%d",s);}

16樓:sin絕望

#include

void main()

else

z=y/x;

}printf("y=%f",z);}

c語言程式設計題,求e的近似值,e=1/1!+1/2!+1/3!+......+1/n!,累加項小於1

17樓:

對著c語言入門寫了幾行,計算的是1/0!+1/1!+1/2!+1/3!+......+1/n!,

如果要算 1/1!+1/2!+1/3!+......+1/n!,請把**中的 n1=1.0; 改為 n1=2.0

void main()

printf("e=%10.8f\n",e1);

}結果是 e=2.71828183

18樓:匿名使用者

樓主你好!

首先你的公式我認為是錯的!前面第一項漏加了個1正確的公式為:e=1+1/1!+1/2!+1/3!+......+1/n!

**實現如下:

#include

int fun(int n)

int main()

printf("%.8lf",sum);

}執行結果為2.71828183

網上查到的值2.718281828459

由此可知,前8位小數基本一樣!

希望我的回答對你有幫助!

望採納!謝謝!

c語言程式設計題,求e的近似值,e=1/1!+1/2!+1/3!+......+1/n!,累加項小於1

19樓:苑苒繁珹

樓主你好!

首先你的公式我認為是錯的!前面第一項漏加了個1正確的公式為:e=1+1/1!+1/2!+1/3!+......+1/n!

**實現如下:

#include

intfun(int

n)int

main()

printf("%.8lf",sum);

}執行結果為2.71828183

網上查到的值2.718281828459

由此可知,前8位小數基本一樣!

希望我的回答對你有幫助!

望採納!謝謝!

20樓:況樂正素勤

對著c語言入門寫了幾行,計算的是1/0!+1/1!+1/2!+1/3!+......+1/n!,

如果要算

1/1!+1/2!+1/3!+......+1/n!,請把**中的n1=1.0;

改為n1=2.0

void main()

printf("e=%10.8f\n",e1);

} 結果是

e=2.71828183

21樓:山蕭玉墨柳

#include

main()

printf("e=%lf",e);

x=e-(int)e;

printf("

input

bitb(1~14):");/*這邊給您輸出最多14位的小數*/scanf("%d",&b);

printf("is

%ld",(int)(x*pow(10,b)));

}精確小數的

可以加do

while(x<0.0000000001);/*數字自己定*/的**希望對你有所幫助!

c語言程式設計題,計算s=1-1/2+1/3-1/4.....+1/m

22樓:匿名使用者

n是整型,執行1/n後也是個整型。**修改:

#include

int main()

printf("%f\n",s);

return 0;}

23樓:天願見伊

由於你的n是int型,則1/n是整數,程式中的1/n或(-1)/n一直是0,所以s一直都是0;將t=1/n和t=(-1)/n改為t=1/(float)n和t=-1/(float)n即可,即將n強制轉換為float型,這樣1/n就可以表示為小數了。

希望可以幫到你!

24樓:selonsy少英

#include

int main()

printf("%f\n",s);

return 0;

} //該程式已在vs中除錯通過,望採納!

25樓:匿名使用者

/*輸入數值n:10

0.645635

press any key to continue*/#include

int main()

printf("%lf\n",sum);

return 0;}

26樓:流星不死

# include

int main()

printf("\n\n sum is %f",sum);

return 0;}

c語言,求s=1/1!+1/2!+1/3!+…+1/n!

27樓:目標團隊

#include

main()

sum(int x,int y,int n)return (z);

} 怎麼這bai麼快就有人回du答了,你

好厲害啊!zhi!哥們我運

dao行了一下 還好 計算版還靈。 我也是慢慢修改權才成功的,我用的是win-tc 不知他們用的是什麼。。呵呵呵

28樓:匿名使用者

#include "stdio.h"

main()

這是幫你bai改的

duvoid main()

int sum(int x,int y,int n)或者呼叫改為s=sum(n); 去掉zhidaox,y兩個引數 並在

內呼叫函式裡賦值容

29樓:水撒了一地

#include

void main()

printf("\ns=1/1!

專+1/2!+...+1/%d!=%.16lf\n",n,s);}

30樓:蘭園5號

#include

void main()

int sum(int n)

修改後的程式dao

。專。。。。。。。。。。。。。。

sum引數。。。

z初值屬。。。。。

31樓:匿名使用者

int main(int argc, char* argv)printf("isum = %d\n",isum);

return 0;}

怎麼用c語言計算s

用連個迴圈就 行了 include include void main sum pow s,1 printf f sum include stdio.h int main int argv,char argc 執行結果 我來寫個c 的,主要部分就是迴圈部分的,c語言一樣可以實現!很簡單的!inclu...

C語言運算問題,c語言這題怎麼計算?

第一問 假設x為0 則!x為1,而!x 即!1 所以結果為0,反之,x為1時結果也為1,即 是判斷x的值是否為 1等價,所以應該結果為c,布林型的話 答案也可以是b 第二問 這是個優先順序的問題 等符號運算是自右向左執行的,優先順序小於加減乘除,執行後賦值,因此a a a a 為 a為 6 2.a ...

c型鋼理論重量表c型鋼每米重量計算公式

c型鋼理論重量表如下表 4600千塊 4600 1000 4600000塊。c型鋼理論重量表型 號 每米重 kg 型 號 每米重 kg c 80 50 20 2.25 3.886 c 180 60 20 3.0 8.007 c 80 50 20 2.50 4.318 c 180 70 20 3.0 ...