課程
/后端開發
/C++
/C++遠征之起航篇
為什么判斷輸入真假,只能用0和1啊,我輸入0,輸出最小值,輸入1,輸出最大值,這樣沒錯,但我輸入非0的其他數字(比如3),還是會輸出和0一樣的結果,不明白
2016-09-04
源自:C++遠征之起航篇 5-1
正在回答
0表示假,所有非零表示真。這個是一個bool的定義
但c++中bool的前身是C語言的IF條件判斷。?
因此你可以這么理解
例子中把 ismax定義為false意思就是把ismax定義為非真才會是is max 轉化成C語言來看你應該好明白點
int ismax=0
printf("請輸入ismax");
scanf("%d",&ismax)
if(ismax==0)
{
找最小值
}
else
找最大值
這樣能大致理解教程中是為什么輸入0反而是找最小值了吧
因為我定義了ismax在真的情況下才是找最大值呀,輸入0不就是false了么 當然就是找最小值了
你要的結果跟你的判斷語句有很大的關系
一般的,0為false,非0為true,輸入的各種不是零的字符都按非0處理,你遇到的問題建議把代碼貼出來看看
舉報
C++亮點盡在其中,本課程是在C語言基礎上的一個延伸,得以升華
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-11-27
0表示假,所有非零表示真。這個是一個bool的定義
但c++中bool的前身是C語言的IF條件判斷。?
因此你可以這么理解
例子中把 ismax定義為false意思就是把ismax定義為非真才會是is max 轉化成C語言來看你應該好明白點
int ismax=0
printf("請輸入ismax");
scanf("%d",&ismax)
if(ismax==0)
{
找最小值
}
else
{
找最大值
}
這樣能大致理解教程中是為什么輸入0反而是找最小值了吧
因為我定義了ismax在真的情況下才是找最大值呀,輸入0不就是false了么 當然就是找最小值了
你要的結果跟你的判斷語句有很大的關系
2016-09-04
一般的,0為false,非0為true,輸入的各種不是零的字符都按非0處理,你遇到的問題建議把代碼貼出來看看