C 編譯程式 輸入三個數a,b,c,將這三個數排序,由小到大輸出

2025-03-26 15:20:13 字數 1653 閱讀 4946

1樓:匿名使用者

什麼錯誤呢?沒發現啊是不是scanf("%d,%d,%d",&a,&b,&c); 用逗號分隔的,你輸梁敏入數也要逗橡歷枝爛猜號分隔了 3,2,1

2樓:匿名使用者

輸入時以逗號隔開 或者去掉 scanf("%d,%d,%d",.中的逗號。

輸入三個數a b c,並判斷大小,並輸出最大值,用c語言。

3樓:網友

此程式可按照以下步驟執行:

1、輸入a、b、c三個數。

2、比較a和b的大小,記錄較大值。

3、比較2中較大值和c的大小,得到最大值。

4、將最大值輸出。

**如下:#include

int main()

程式中的比較賦值可通過三目運算子 ? 來實現。運算子作用如下:

對於條件表示式b?x:y,先計算條件b,然後進行判斷。如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。

c語言程式設計問題:有3個整數,,,由鍵盤輸入,輸出其中最大的數,請程式設計序

4樓:網友

俺也不是什麼高手,但是你的問題倒是看出來了;

1.為什麼輸出的最大值時a?

請注意你的第乙個if,它的後面沒有加,那麼if判斷之後執行的只能有一行**,就是if(b>c);

這不會做任何操作,繼續執行下面的語句printf("max=%d",a);結果自然是a的值12了;

2.且不說寫的好不好,就你的這段程式會不會輸出正確值,就你輸入的12,15,116而言,加上也不能輸出最大值;試想a>=b不符合,進入else,然後b>=c也不符合就沒得執行了。

下面在你的基礎上改了下**,if (a >= b)

else3. 如果判斷最大值,你不妨採用中間值判斷取代你的if..else判斷,這樣容易很多,比如:

int max = a;

if (b > max)

max = b;

if (c > max)

max = c;

printf("max=d%",max);

5樓:網友

else 語句沒寫全。。。

給你個新思路,你找最大的數,則先從a,b裡找最大的,再把這個最大的和c比較就行了。。。

if(b>a)

if(c>a)

最後a就是最大的了。

6樓:葉落_無聲

scanf("%d,%d,%d",&a,&b,&c)

輸入的時候應該輸入:12,15,116(注意要帶逗號)

7樓:

你這個如果ac),但是如果b

8樓:網友

演算法出錯,這樣比較不行的。。。

9樓:網友

先把if後的大括號都加上 你現在沒加大括號 甚至會出現不同編譯器編譯出不同的結果來 **要規範。

看輸出結果 應該就是沒有大擴號 巢狀的if執行了你不想執行的那一句 加上大括號試試吧。

找最大值有各種演算法 你需要看看 因為你現在是生寫出來的判斷3個數裡的最大值 找本資料結構與演算法類的書看一下會有幫助。

c程式比較數大小,c程式比較三個數大小

1.scanf函式使用錯誤,應改為 scanf d,d,d a,b,c 需要注意的是,上述語句在輸入資料時需要加 如 2,3,4 如果 d 是連著寫的,例如 scanf d d d a,b,c 則在輸入資料時,資料之間不可以用逗號分隔,只能用空白字元 空格 tab鍵或者回車鍵 分隔。2.函式max ...

C問題 輸入數輸出較大數,C問題 輸入三個數輸出較大數

問題出在主程式中第二個if前沒有else 把第二個if改成else if就可以了。原因 第乙個if比較時123 23 123 34成立,所以s 123 然而,第二個if肯定是不成立的,所以就執行了else後面的語句s y,使最大值s 23了。第二個if改為else if後執行就是唯一的了,三個判斷永...

程式設計題 輸入三個數,求組成三角形的面積?謝謝 20

程式設計題 輸入三個數,求組成三角形的面積?謝謝 我用c 寫的 include include void main double a,b,c,p,s cout 請輸入三角形三條邊的值 cin a b c while a b c a b c a c b a c b b c a b c a cout 您輸入...