1樓:匿名使用者
看看好好與或非邏輯運算這部分去,還有優先順序……
明明year%100!=0的意思是:(year 整除 100) 是否不等於 0
給你加幾個括號,再看看吧,唉!可能更暈人。
( ( (year%4==0) && (year%100) )!=0) || (year%400) ==0
!( ( ( (year%4==0) && (year%100) )!=0) || (year%400) )==0
ps:這個判斷閏年的表示式 是正確的。
分支的真假,要看你year這個變數的值是多少。如果是一個閏年的數字值,那麼這三全會是真,如果不是閏年,這三個中只要一個為假,最後全部表達的結果就是假。也就不是閏年了。
main()
2樓:
這樣看起來的清楚多了
!((year%4 == 0) && (year%100 != 0)) || (year%400 == 0)
year%4==0意思是能被4整除
year%100!=0 是不能被100整除year%400==0 是能被400整除
&& 是與的意思
|| 是或
ps:我只解釋了這表示式,但不認為這個表示式能實現你說的那個功能
3樓:匿名使用者
不是「100!=0」,是「year%100!=0」別段章取意!
就是「年份」除「100」的餘數不等於「0」是為真。不明白你為什麼看不明白。閣下還是翻翻書,先看看運算子優先順序與結合性再說
4樓:匿名使用者
邏輯運算,條件成立,真,不是得某一值為真
5樓:匿名使用者
你沒學過語法嗎?還是沒學過邏輯運算?year%4==0,year%100!=0,year%400==0是三個運算式,||和&&是邏輯運算子。
c語言的表示式
優先順序問題。首先明確。高到低優先順序依次是 這樣,語句可以解釋為 leap year 4 0 year 100 0 year 400 0 就是判斷year是否能整除4並且整除100或者year是否能整除400.如果可以,leap 1 否則leap 0 實際就是判斷year是不是閏年。這是個關於閏年...
c語言中表示式的值怎麼算,C語言中表示式的值怎麼算
此式即等同於 4!3 2 4 1 5 1代表真,0代表非,則原式即 1 1 0 所以值為0。例如 12 5 2 只為這個是整數運算,結果只取整數部分。62 1 6 7 7 6 1 13 49 623.2 6 7 1 44.8 可以。逗號運算子,從左至右計算,取最後一個表示式的值作為整個語句的值。先算...
C語言中for表示式1表示式3可理解為
for 表示式1 表示式2 表示式3 程式執行時,先執行表示式1.若表示式2為真,則執行for迴圈體中的語句一次,再執行表示式3。接著再繼續回去執行表示式2。再執行for迴圈體中的語句一次,再執行表示式3。如此迴圈下去,直到表示式2為假時,結束迴圈,執行for語句下面的語句。上面是一種情況。另一種情...