[問題] 用遞迴算平均值

看板C_Sharp (C#)作者 (斷月嵐)時間10年前 (2015/04/29 02:02), 10年前編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
#include <stdio.h> #include <stdlib.h> float rsum(int *a, int n); int main() { int a[200]; int i, n; printf("Input number: "); scanf("%d",&n); for (i=1;i<=n;i++) scanf("%d",&a[i]); printf("Sum=%f", rsum(a,n)); system( "pause" ); return 0; } float rsum(int *a, int n) { if (n<1) return 0; else return (rsum(a, n-1)+a[n]); } 如果要改成算出平均值的話 該在哪裡除上N 因為我發現在副程式擺好像都不對 遞迴中都會多除一個N -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.224.235.195 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1430244166.A.F59.html ※ 編輯: a80885057 (61.224.235.195), 04/29/2015 02:29:47

04/29 04:32, , 1F
擺在遞迴外面不就好了...avg=sum/n,是說這種凸顯不出遞迴
04/29 04:32, 1F

04/29 04:32, , 2F
好處的題目,我覺得沒什麼意義...
04/29 04:32, 2F

04/29 09:00, , 3F
這邊是C井版..不是C..
04/29 09:00, 3F
恩,請板主幫我刪一下吧 囧 ※ 編輯: a80885057 (61.224.235.195), 04/29/2015 10:03:42
文章代碼(AID): #1LFyj6zP (C_Sharp)
文章代碼(AID): #1LFyj6zP (C_Sharp)