[問題] 輸入三數,找出第二大的數(第三改~完成)

看板C_and_CPP作者 (乂筱慈乂)時間15年前 (2010/10/06 15:38), 編輯推噓5(5011)
留言16則, 7人參與, 最新討論串1/1
謝謝各位大大~ 我會回去再去看書^^" 之前是有自己寫一些比較簡單的程式 不過遇到有比較的 我就會頭腦卡卡= =" 所以還是回到我原始比較會的寫法 兩個兩個比較 我還是不會三個直接比較 程式比較長 而且...我只會 把max min 也一起寫出來= =" 如果以後遇到問題 還請大大們幫幫忙 P.S 我有參考以前寫的程式+書+網路 遇到的問題: (題意請描述清楚) 我想做的程式題目為:輸入三個小於100的正整數,並找出第二大的數字 希望得到的正確結果: 例如輸入 10 , 5 , 15 答案為10 程式跑出來的錯誤結果: 我...真的不知道我怎麼錯的= =" 因為執行出來都是 "輸入錯誤" 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Dev-C (C語言) 有問題的code: (請善用置底文標色功能) #include <stdio.h> #include <stdlib.h> int main(void) { int a,b,c,; printf("請輸入三個小於100的整數\n\n"); printf("請輸入第一個整數:"); scanf("%d",&a); printf("請輸入第二個整數:"); scanf("%d",&b); printf("請輸入第三個整數:"); scanf("%d",&c); { if (a>=b) if (b>=c) printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",a,b,c); else if (c>=a) printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",c,a,b); else printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",a,c,b); else if (c>=b) printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",c,b,a); else if (a>=c) printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",b,a,c); else printf("\n最大值=%d\n\n中間值=%d\n\n最小值=%d\n\n",b,c,a); } system("pause"); return 0; } 我知道這是很初學者的問題~ 我也才上過一次程式設計課程 原意是想或(||)來做 但不知道可不可以 printf 那邊我想表達的是 顯示那個第2大的數字 但我不知道怎麼打= =" 很努力的試過幾種方法 不過都沒用 請大大們幫幫忙 我很有心 想學好程式設計>"< 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.66.165.64

10/06 15:50, , 1F
'/' 搜尋 scanf
10/06 15:50, 1F

10/06 15:50, , 2F
我勸你找本書來讀比較好,你連基礎的地方都有問題...
10/06 15:50, 2F

10/06 15:51, , 3F
if 的部份也有問題
10/06 15:51, 3F

10/06 15:52, , 4F
有心想學就先從書讀起吧
10/06 15:52, 4F

10/06 16:09, , 5F
printf也不對...
10/06 16:09, 5F

※ 編輯: cyenting 來自: 61.66.165.64 (10/06 16:24)

10/06 16:39, , 7F
printf("%d",a>b?a>c?a:c:b>c?b:c);
10/06 16:39, 7F

10/06 16:41, , 8F
樓上這是最大值吧 XD 他要的是中間的那個
10/06 16:41, 8F

10/06 16:41, , 9F
還有對初學者不要用 ? : 啦....
10/06 16:41, 9F

10/06 16:42, , 10F
給原PO: 照二樓說的把書看完再來寫
10/06 16:42, 10F

10/06 16:42, , 11F
特別是以這程式來說 輸入、輸出及流程判斷那部份要懂
10/06 16:42, 11F

10/06 16:42, , 12F
樓樓上這樣寫初學者很難懂吧
10/06 16:42, 12F

10/06 16:43, , 13F
看錯XD
10/06 16:43, 13F

10/06 16:43, , 14F
而不只是隨便看一看就來寫...
10/06 16:43, 14F

10/06 16:43, , 15F
我推太多行了XD
10/06 16:43, 15F
※ 編輯: cyenting 來自: 61.66.165.64 (10/06 17:20)

10/07 05:35, , 16F
這一題要寫得通用與漂亮, 可以用max-heap來實現
10/07 05:35, 16F
文章代碼(AID): #1Ch2TQhe (C_and_CPP)