[問題] 輸入三數,找出第二大的數(第三改~完成)
謝謝各位大大~
我會回去再去看書^^"
之前是有自己寫一些比較簡單的程式
不過遇到有比較的
我就會頭腦卡卡= ="
所以還是回到我原始比較會的寫法
兩個兩個比較
我還是不會三個直接比較
程式比較長
而且...我只會 把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
10/06 15:50, 1F
→
10/06 15:50, , 2F
10/06 15:50, 2F
→
10/06 15:51, , 3F
10/06 15:51, 3F
推
10/06 15:52, , 4F
10/06 15:52, 4F
→
10/06 16:09, , 5F
10/06 16:09, 5F
→
10/06 16:10, , 6F
10/06 16:10, 6F
※ 編輯: cyenting 來自: 61.66.165.64 (10/06 16:24)
推
10/06 16:39, , 7F
10/06 16:39, 7F
推
10/06 16:41, , 8F
10/06 16:41, 8F
→
10/06 16:41, , 9F
10/06 16:41, 9F
→
10/06 16:42, , 10F
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
10/06 16:43, 13F
→
10/06 16:43, , 14F
10/06 16:43, 14F
→
10/06 16:43, , 15F
10/06 16:43, 15F
※ 編輯: cyenting 來自: 61.66.165.64 (10/06 17:20)
推
10/07 05:35, , 16F
10/07 05:35, 16F