看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《dondon0419 (東東)》之銘言: : 老師上課要我們用goto計算1到輸入數字內的所有奇數和 : 不過不包括輸入的那各奇數 : 像輸入3的話,奇數和是1(不包含3這各奇數) : 輸入4的話.奇數和4 : 上課弄了很久還是跑不出來 : 所以想請教高手幫各忙 : { : int x,sum=1; : scanf("%d",&x); : start: : if ( x % 2 =1 ) : sum = sum + x; : 寫到這邊就卡住了,不知道怎寫x讓他停止在加下去 void oddsum(){ int x; if(!(x%2)){ x--; printf("%d\n", ((x+2)*x+1)/4); }else{ printf("%d\n", ((x+2)*x+1)/4); } return; } 我不會用 goto -- 閑言碎語風涼話 將睡未醒事後菸 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 173.224.214.150
bibo9901:何止不會用goto.... 08/05 09:40
x000032001:x是個垃圾值 08/05 10:52
lvlightvivi:x是參數吧 位置尷尬 08/05 11:28
VictorTom:x要是參數的那種舊式寫法的話, int x應該在 { 前吧?_? 08/05 12:00
xatier:樓上說的是K&R的經典用法吧XD 08/05 13:05
xatier:然後把if跟else對調可以少做一次 !運算 08/05 13:06
king19880326:樓上說得不見得,現在compiler的加速很厲害.我猜兩個 08/05 14:13
king19880326:寫法效能該是一樣.該考慮的是可讀性 08/05 14:14
aguai:啊....我本來想寫 oddsum(int x) 08/05 17:33