1樓:匿名使用者
演算法一:
用的是等差數列的求和公式,現在簡單推導一下:
s = 1 + 2 + 3 + …… + ns = n +(n-1)+ (n-2)+ …… + 1相加得:
2*s = (n+1)+(n+1)+(n+1)+…… +(n+1)得 s = (n+1)* n/ 2
演算法二和演算法三 都差不多,c語言實現如下
void sum(int n)
2樓:匿名使用者
2和3不是一樣的麼。。。感覺是在忽悠。
演算法三:第1步:將0放在s中; 《--------s用來存放結果
第2步:將1放在n中; 《--------n裡面依次會放入1,2,3,4,5。。(剛開始是1)
第3步:將n加到s中; 《--------s = s+n
第4步:將1加到n中; 《--------n 現在自加了,每次加1
第5步:判斷。若n<100,轉第3步;《----加到99就退出迴圈。輸出s
否則,轉第6步;
第6步:輸出s中的結果,結束。
3樓:爬爬死爬
演算法1第三步:第二步是計算s,第三步是將s輸出到電腦螢幕
演算法2第三步:就是s=s+3具體就是將s自加3再存到s中
演算法3的思想是建立兩個變數n,s,n初始化為1,s初始化為0,s的作用是計算結果,n的作用是從1遍歷到99.第二步是將n加1,就是將n從1取道99,第三步將n加給s,就是計算1-99的和。
4樓:匿名使用者
當n=1時s=s+n=0+1
1加n,n=1+1=2當n=2時 因為n<100所以轉第3步s=s+n=0+1+2
1加n,n=2+1=3當n=3時 因為n<100所以轉第3步s=s+n=0+1+2+3
.......................................
1加n,n=98+1=99當n=99時 因為n<100所以轉第3步s=0+1+2+.........+99
1加n,n=99+1=100當n=100時 因為n不小於100所以轉第6步
輸出s=0+1+2+.........+99中的結果
5樓:道生天地
n每次加1從1加到99,s每次加n,共加99次,不就是1+2+3+4+```+99嗎?
6樓:匿名使用者
天啊.........i am dead....
C語言問題,C語言問題C語言問題
選a首先,空格也是一種字元,b d選項分別把空格賦給了c1,c1 其次,c選項不完整,排除 不僅a這樣,10a20b也是可以的。 聽不清啊 答案a 10a 20b cr 是正確的。因為scanf d c 時,會忽略數字前面的空格,遇到非數字字元就會結束讀取 非數字字元會留待下一次讀取,即被後面的 c...
c語言演算法帝快來圍觀
int i 123 char buff 4 sprintf buff,d i printf 百位 c 十位 c 個位 c buff 0 buff 1 buff 2 試試吧 挺不好玩的.include include using namespace std int main return 0 c語言,...
c語言的問題,C語言問題?
魘傳說 這個 的作用就是利用do while將陣列算出來,然後利用for迴圈遍歷,倒序輸出陣列。我感覺很奇怪,devc 出來的結果是10010。我算出來的結果應該是00010,因為強轉int型別應該是取0的,而不是取1.然後我用c 試了多個數字,發現所有的結果都是以1開頭,至於為什麼我也不知道,希望...