1樓:藺蘭澤寶魄
答案是3;
第一個if,括號內是非a,因為a=0,所以不執行if語句,執行else
if,else
if成立,但是後面是
;沒有語句塊,所以繼續執行後面if語句,c=0成立,所以x=3;
2樓:烏辰釗清山
如果中間沒有大括號,那麼結果是4,因為過程是:if(!a)x--;
!0滿足
x=34,接下來的else
if(b);
if(c)
x=3;不滿足,而最後的else
x=4;
滿足,由於沒大括號,所以後幾步與第一步沒關係
3樓:薄德曜南豪
應該是34吧
if(!a)
x--;
!0滿足
x=34
else
if(b);
不滿足x=34
if(c)
x=3;
不滿足x=34
else
x=4;
不滿足x=34
好久沒用c了,也許不對
4樓:太史向卉覃青
else
if(b);這兩行有什麼用???
不論你上面怎麼變,x不是3就是4,這裡當然是4了,因為c永遠為假
5樓:匿名使用者
這個程式執行完全正確。
至於*p-32,是將小寫字母轉換成大寫字母。這是根據ascll碼規律得出的。
在ascll碼錶中,從65開始為a,直到90為z,從97開始為a,直到122為z,不難看出,每一對對應的大小寫字母是有32之差。
p++是將p的指標指向後移一位。
6樓:匿名使用者
對。小寫字母的編碼-32就是對應的大寫字母
7樓:
你只要記得一個字元用單引號括起來的話,那它代表的就是一個數值,具體對應數值你可以參照ascii碼值表
C語言二級問題
致命錯誤!概念混了你。首先p是指標!他自己不是被運算的他是指向別人的。p 3 是p 3 也就是a 3 因為前面p a了 然後是a 3 2 6,記得我前面跟你說的麼 預設從0開始算!因為你的 p是一個指標。預設指向a,所以當你輸出 p的時候是a 0 的值,就是1。而後面 p 3 是a 3 而它剛才被你...
二級c語言題,急求解,二級C語言題,急求解
選d 比較淺顯的來說,左移n位就是乘以2的n次方,右移n位就是除以2的n次方。具體細節如下 c語言裡的左移和右移運算 先說左移,左移就是把一個數的所有位都向左移動若干位,在c中用 運算子.例如 int i 1 i i 2 把i裡的值左移2位 也就是說,1的2進位制是000.0001 這裡1前面0的個...
二級C語言,下列程式的輸出結果,二級c語言題目 以下程式執行後的輸出結果是 main() int x 0210 printf X n ,x
main 語句2將 b和a分別傳給fun的兩個形參,b的地址傳遞給形參c,即c指向變數b,c c 1 即 c f 1,ascii碼值為g,故 c的值為g,注意,因為c變數的值是b的地址,c是對c的解引用,代表了b地址的內容,也即b變數的值,故b變數的值改變為g。fun函式第2句d 1即d d 1 語...