本題要求將輸入的任意3個整數從小到大輸出。
輸入格式:
輸入在一行中給出3個整數,其間以空格分隔。
輸出格式:
在一行中將3個整數從小到大輸出,其間以「->」相連。
相信大家看到這個題目時的第一想法都是,我直接排序就好了。的確,排序是這類問題的通解,任意乙個排序演算法都可以將這道題完美解決。但是博主看到題目中只有三個數字,於是便放棄了排序的念頭,想從另乙個方向入手去解決這個問題。於是,經過博主的一番分析,覺著我們按照下面的方法去理解會使得邏輯比較清晰,並且演算法穩定。下面就讓我談一談如何用乙個合理的邏輯去描述它。
首先,我們從兩個數字比較大小來說。假如給了你兩個數字a,b
a,ba,
b ( a≠b
a \neq b
a̸=
b)讓你去比較大小,這個很簡單啊。計算機也可以很快的給出結果。如果這個時候突然加入了乙個數字c
cc。這時候我們對三個數字a,b
,c
a,b,c
a,b,
c進行排序 。
不妨這樣想一想,我們在三個數字中隨便拿出來兩個數字a,b
a,ba,
b,他們的大小次序是一定的(假如:a
>
ba > b
a>
b)。我們無非就是想知道剩下的數字c
cc放到**的問題。這樣一想就很簡單了。如果c
>
ac > a
c>
a那麼就把c
cc放到a
aa的右邊,所以得到的次序就是這樣的:
c
>
a>
bc > a > b
c>
a>
b其他情況同理。
#include
using namespace std;
intmain()
else
if(third && second &&
!first)
else
if(third &&
!second)
elseif(
!third && second)
elseif(
!third &&
!second && first)
elseif(
!third &&
!first)
}
三個數比較大小
比較大小 輸入 3 個整數,按從小到大的順序輸出。試編寫相應程式。怎麼比較大小,常見的演算法有冒泡 選擇 排序 二分查詢法,這些我們這裡都不說,三個數比較大小用不到演算法,用什麼寫呢?if else或者if分析 就是找到三個數中最小的數,最比較另外兩個數 我第一次寫這個題,用的是if else寫的,...
三個數比較大
對於正常人來說,數值的比較是秒殺的,我們能一眼判斷出數字的大小,而這一過程中我們會比較數值本身的符號 數值的位數 數值每一位的值,我們潛意識中不會去改變量值的表象載體和內在含義。而對於計算機來說,它們的比較數值的方法和我們有點差異,它們在比較的過程中會改變量值的表象載體和內在含義,下面這一道題是其中...
2020 11 26 三個數字比較大小從小到大排列
程式設計菜鳥高階 1 if語句是用來判斷所給的條件是否滿足,0為假,非0則為真。if x 2 else 他的表達是x 2的值將會是0或者1,其中如果是1,將列印hello 如果是0,將列印hi。三個數字比較大小從小到大進行排列 3個數字進行比較,首先需要鍵盤輸入三個數字,兩兩數字分別比較大小。此時需...