1樓:蓿靈
首先你所求的數列是一個公差為1的二級等差數列,如下:
所求數列:1 2 4 7 11……
二級數列: 1 2 3 4……
因此解題的方法也就很明確了,第一步就是先求出二級數列,第二步就可以求出目標數列,最後一步把目標數列各項加起來就得到正確結果了。
c**如下,**可以求數列的前n項之和,n的值由自己設定,要求10項就鍵盤輸入10就ok了!(n<=100,這個值可以自己改,修改陣列定義處的值就ok)
#include "stdio.h"
void main()
for(i=0;i printf("the array is:\n"); //輸出目標數列a for(i=0;i printf("\n"); for(i=0;i printf("the summation result is:\n%d\n",sum);} 2樓:匿名使用者 x=x+i和s=s+x要互相顛倒一下。完整程式如下: #include using namespace std; int main() cout< return 0;} 3樓:匿名使用者 a0 = 1 1 + 1= 2 :a1 = a0+12 + 2= 4 :a2 = a1+24 + 3= 7 :a3 = a2+37 + 4=11 :a4 = a3+4 11+ 5=16 :a5 = a4+5 16+ 6=22 :a6 = a5+6 22+ 7=29 :a7 = a6+7 ... : ... 由此可得a(n) = a(n-1)+n; a0 = 1, n >= 1. int sum( void ) return s;} 4樓:匿名使用者 #include int main() 5樓:light冰楓 main() printf("%d",s);} 6樓:匿名使用者 int res=0,cur=1,i; for(i=0;i<10;i++) c語言程式設計:本題要求編寫程式,計算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前n項之和 7樓:匿名使用者 兩個printf語句錯了,一個多了,n 一個多了&這是修改後的** #include int main() printf("sun=%.3f\n",sum); return 0;} 8樓:穆詩 錯誤的給你註釋了,更正的寫在下面,請認真看**#include int main() //printf("sun=%.3f",&sum);//加&取地址,這樣輸出的是sum的地址值 printf("sum=%0.3f\n",sum); return 0; }同時給你簡化一下程式 #include #include int main()望採納 9樓:來夕橋嬋 很容易編寫! 先用數學方法計算出這個等差數列的求和公式:s(n)=3*n*n-2*n(n>=1); 然後輸入n,直接用公式進行計算輸出; #include #include #include #include int main() return 0;} 10樓: sum=sum-1/(3*i-2);//1/(3*i-2);這個得數一定為0 c語言程式設計序 /*計算1-1/4+1/7-1/10+1/13-1/16…共n項之和*/ 11樓:問明 #include int main(void) printf("sum=%.3f",sum); return 0; }輸入形式 從鍵盤輸入一個正整數n。 輸入輸出樣例1(下劃線部分表示輸入) enter n:3 sum=0.893 輸入輸出樣例2(下劃線部分表示輸入) enter n:10 sum=0.819 12樓:風若遠去何人留 一、演算法分析: 1 分析數列規律。 正負交替,分子為1,分母為1,4,7,10,... 即第n項的分母為3*n-2 2 輸入n,迴圈n次,計算每一項並累加。 #include int main() printf("%f\n", r);//輸出結果。 }三、注意事項: 計算每項時,不能用1/(3*n-2) 這樣的話,會按照整型操作,導致結果為0. 用1.0/(3*n-2)或者1/(float)(3*n-2)轉為浮點型,均可。 13樓: #include double caculatesum(int n){int i=1; double sum=0.0; int flag=1; for(i=1;i 14樓:匿名使用者 for迴圈用錯了,在計算denominator時應該使用已經更新過的i,所以i++應該放在for迴圈裡面,**如下: for(i=1;i<=n;)結果: 15樓:匿名使用者 可將demominator=3*i-2;移動到item=flag*1.0/denominator;之前 16樓: 把denominator=3*i-2;移到item=flag*1.0/denominator;前面就妥了…… 17樓:匿名使用者 for迴圈改一下 float sum =1.0; if (n==1) return sum; for(i=2;i<=n;i++) else sum=sum-1/(3n+1); }return sum; 用c語言程式設計計算1!+2!+....n!的前10項之和 18樓:笨a小孩 思路:寫一個函式計算階乘,在main裡面迴圈計算到第10個加在一起輸出即可 注意點:資料型別 源**: #include #include long factorial(int n)int main() 執行結果: $ ./test 1! + 2! + .. + 10! = 4037913希望對你有所幫助;) 19樓:德昂當 main() sum+=k; }printf("%ld\n",sum);} 20樓:匿名使用者 int sum=0; for ( int i=1; i<=10; i++) }printf("%d\n", sum ); 21樓: |//只寫函式 double sum(int n) 遞推法求 1+1/2!+1/3!+1/4!+……的前30項之和。c語言程式設計題 22樓: long fun(int n) void main() c語言程式設計求1+1/2+1/4+1/7+1/11+1/16.......當第n項的值小於10^-5時求和結束 23樓:御含靈 應該先找到a,然後反過來加 不然大數加小數會出問題的。 #include int main() while(a>0) printf("sum=%f",sum);} 24樓: 疑點一:float sum=0,item;這兩個變數最好定義為double型別 疑點二:item沒有賦初始值,導致在while()的條件判斷時出錯(這一條是程式不能正常計算的關鍵點) 疑點三:int main()是有返回值的,建議在程式的最後加上return 0; 25樓:匿名使用者 修改後的**如下: #include int main() printf("sum=%f",sum); return 0;} 26樓:匿名使用者 #include int main() printf("sum=%.2lf\n",sum); return 0;} 27樓:匿名使用者 #include int main() printf("sum=%f",sum);} 28樓:匿名使用者 樓上正解,注意while()括號中的條件是滿足才執行,一旦不滿足跳出 c語言程式設計題 求1-1/2+1/3-1/4+1/5的前40項的和 請大神幫我看看我的程式**有問題 29樓:匿名使用者 n=2時,s=0+1=1,加的是第1項,以此類推,到n=40,加的是第39項,少加了一項。 如果按你的程專 序,需要屬 將40改為41,這樣才能加上第40項。 即for(n=2;n<=40;n++)改為for(n=2;n<=41;n++),其餘不用改。 順便給出本題的一個比較簡單的程式: #include void main() 30樓:匿名使用者 把 s = s + t; 移到 t= b/ a; 下邊 c語言程式設計題:求1-1/2+1/3_1/4+1/5.....前30項的和。 31樓:匿名使用者 #include int main(int argc, char* ar**)sum*=1000; n=(int)sum; temp=n; temp%=10; if(temp>4) n+=1; n/=10; printf("%.2f\n",n/100.0); return 0; }可能抄 **有點襲冗長,可以修改精煉下 哈,呵呵 32樓:匿名使用者 #include int main(void) printf("sum=%.2f\n",sum); return 0; }除錯 bai過了,是正du確的。 zhi別辜負dao我的一片好心哦 答裡問問題。 33樓:愛問升 //c語言抄程式設計 bai題:求 du1-1/2+1/3_1/4+1/5.....前zhi30項的和。dao #include void main() else } printf("sum=%.2f\n",sum);} c語言程式設計題,計算s=1-1/2+1/3-1/4.....+1/m 34樓:匿名使用者 n是整型,執行1/n後也是個整型。**修改: #include int main() printf("%f\n",s); return 0;} 35樓:天願見伊 由於你的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就可以表示為小數了。 希望可以幫到你! 36樓:selonsy少英 #include int main() printf("%f\n",s); return 0; } //該程式已在vs中除錯通過,望採納! 37樓:匿名使用者 /*輸入數值n:10 0.645635 press any key to continue*/#include int main() printf("%lf\n",sum); return 0;} 38樓:流星不死 # include int main() printf("\n\n sum is %f",sum); return 0;} 陣列的下標是從0開始的 假如陣列a裡有三個元素,這三個元素可以表示成a 0 a 1 a 2 陣列的大小是根據你定義時確定下來的 有3中定義方法 1 int a 100 2 int a new int 100 3 int a 第一種定義直接給他分配了100個空間的記憶體,第二個也是,第三個是根據後面陣... 一分鐘讀懂。c語言程式設計。c語言程式設計 一分鐘讀懂。c語言程式設計。可以的,按照你的要求程式設計好。太多了,可以具體一下是需要哪個嗎。c語言程式設計 a 由0x開頭,後跟0 9,a f的是十六進位制整數。0x3al是十六進位制數,等於十進位制的 56,其中l表示長整形,a正確。b 由數字0開頭,... 程式的執行結果是a 14。逗號表示式的結果是最後一個逗號後面的表示式的值。你的問題中a 3 5,a 4 實際上等效於a a 4 一分鐘讀懂。c語言程式設計。可以的,按照你的要求程式設計好。太多了,可以具體一下是需要哪個嗎。a 0 從右往左開始運算。n n 2 n 7 2 n 1 n 0 a a a ...
c語言程式設計,c語言 程式設計
C語言程式設計,c語言程式設計
C語言程式設計,c語言程式設計