2010-04-19 238 views
4

生病有一個if語句(0 <0)是否返回true?

if (int1 < int2) 
{} 
else 
{} 

我想else語句運行如果兩個INT1和INT2是0 ..

+0

是的,它會工作。 0不小於0.你應該閱讀一些關於編程的內容;這是一個非常基本的問題。 – zneak 2010-04-19 01:20:14

+11

你甚至嘗試過0 <0嗎? – 2010-04-19 01:21:15

+5

請解釋downvote。所以,如果僅僅因爲你認爲這個問題太簡單了,你可能就不會理解這個網站的意圖。對某些人來說,看起來很愚蠢的東西並不適合其他人。例如:我從70年代末開始就開始編程,但我對F#的問題很可能是非常初級的。 – paxdiablo 2010-04-19 01:21:34

回答

11

0不小於0

如何使用else if聲明?

if (int1 < int2) 
{ 
} 
else if (int1 == 0 && int2 == 0) 
{ 
} 
6

(0 < 0)邏輯上應該返回false,因爲在兩個相等的數字之間,一個不能小於另一個。 (0 <= 0)將返回true。

1

不,(0 < 0)返回false。

很難理解你在提出的代碼中提出的邏輯。

3

目前您的else子句將運行當兩個整數都是0

,如果你想0被同等對待INT1 < INT2然後

if((int1 < int2) || (int1 == 0 && int2 ==0)) 

,但如果你只是想0 < 0〜轉到別的,它會...

或者你有一些代碼,你認爲應該將你的「別人」,而是正在進入你的「如果」,但不能工作了爲什麼那麼想知道如果0 < 0?在這種情況下,您的代碼中可能會發生其他情況。

1

中 - 當然,0==00<00>0

在編譯語言這樣的C#你需要使用比較操作每個變量如上面的答案說

if (int1 < int2) 
{ 
} 
else if (int1 == 0 && int2 == 0) 
{ 
} 

但是,如果你的情況是一些解釋性的語言如python,你可以使用一個簡單的i nline比較

if int1<int2: 
    print "Less" 
elif int1==int2==0: 
    print "Equals to 0" 
9

有幾個答案給你的直接問題,以及此頁面上的其他答案。但是還有一個更大的問題還沒有得到解決:爲什麼你問這個問題到一個網絡論壇,無論有多少專家程序員填充它?

有在您的處置一個很好的工具,自動地回答這些問題,你用它所有的時間:C編譯器!你只需要正確地說出問題。

如果有什麼你不明白,嘗試組建了一個小程序來測試一些邏輯,看看會發生什麼。只需保留一個簡單的模板(我喜歡〜/ tmp/hello_world.c)。當你有問題時,只需複製一份(比如〜/ tmp/zerotest.c),添加一些你想要試用的功能(如printf("Answer: %d\n", 0 < 0);),然後運行它直到你明白髮生了什麼。

我一直這樣做。即使當我在另一個項目上工作時,有時我會把大塊邏輯放到一個小文件中,並在那裏玩,直到我明白。這就是爲什麼:找到一種有效的方式自學一種語言。不要害怕嘗試。這是非常不可能的,你會一起擊中一些會破壞你的系統的東西。即使發生了這種情況,我相信你也可以從中體會到一些經驗。

養成實驗的習慣。這是您在編程生涯的其餘部分使用的技巧。