1樓:
36 輸出:-1
x=0xffff 如果用十六進位制表示的話,數前面要加0x以表示是十六進位制。
ffff用二進位制表示就是16個1,1111111111111111,轉換成十進位制就是2^16-1,即65535。因為int型資料範圍是+32767~-32768,二進位制在計算機中表示時,第一位是符號位(這些知識如果學了原碼、補碼、反碼就會了解了),65535超了範圍,第一位變成了符號位,1代表負數,所以變成了-1
x--是x先計算,再減一,所以先輸出-1,x的值再減一,變成-2.
37 a case後面不能是實型
b a是整形,case後面是實型
d swith()括號裡面不能是表示式
2樓:
-1在計算機中的編碼就是0xffff;
switch中的case x;
x只能是正整數
3樓:
計算機中數都是以補碼形式存在的,0xffff就是-1的補碼,另外這次程式是switch結構的,所以x應為正整數,你所說的另外3項是不需要輸出的,因為有default阿!!!
4樓:負家子弟
對於char型來說0xffff就是-1,而x--是現輸出後作自減操作,所以輸出-1.
對於switch...case結構來講,
switch (表示式1) 中的表示式1必須返回一個整型;
case 表示式2 中的表示式2也必須是整型;
綜上所述只有c是正確的(d case 2少了個分號、printf拼寫錯誤、switch()後面多了個分號)
c語言題 求執行結果 給出解釋. 下列程式段執行後的輸出結果是( )
5樓:你若安好
這段**最抄後輸出的是-4,(ps:/n應該是\n)a?b:
c語句的意思是 1.假如a(邏輯表示式或0、1)的邏輯值為0,則語句的值為b(b為表示式則取最後的值)2.假如a的邏輯值為1,則取c的值。
在你的語句中a對應的為“k
不懂可追問 6樓:好嘞啊啊啊啊 k
判斷 k
答案d應該是-4 而不是4 7樓:摩羯橋穎穎 選a~~ 條件運算子,右結合性,,k
8樓:匿名使用者 int k=-4,a=3,b=2,c=1; printf("%d\n",k輸出:-4 k
9樓:匿名使用者 k=-4嗎,感覺這題有問題阿 c語言:下列程式執行時若輸入 1abcedf2df<回車>輸出結果為( ) 10樓:匿名使用者 1abcedf2df vc6.0執行試過了。 #include main() printf("\n"); 第一次 a=0那麼根據ascii表檢視是null也就是空字元。第一次輸入1,(a%2)是求和2的餘數 結果是0而且1也不在a和z之間,所以if後面的ch=ch-'a'+'a';不執行。a變成1,輸 出 ch也就是1. 第二次 a=1 輸入a, (a%2)餘數是1不為0,而且a在a-z範圍內,所以執行ch=ch-'a'+'a'。 ch=ch-('a'-'a')=ch-32 注意看ascii表 a比a 要大32.,大寫字母要比小寫字母小32. 這樣ch-32就是可以把ch變成大寫字母。所以輸出a 。a++變2 第三次 a=2 輸入b (a%2)餘數是0,這樣if那個條件因為有&&所以兩邊都滿足才會執行條件 語句。於此ch=ch-'a'+'a'就不執行了。直接輸出b 1ab.... 由此類推即可。 希望對您有所幫助!:) 11樓:匿名使用者 輸出結bai果:1abcedf2df 首先說a%2!=0,也就du是在a為奇數時才zhi 成立,ch>='a'&&ch<='z'是判斷輸入dao字元是不是小 回寫字元,如果是答,把它轉換成大寫ch=ch-'a'+'a'; 判斷一個字元a增加一個,轉換的字元為:2、4、6、10,1和8字元位數字,不需要準轉換。 a從0開始計算a%2!=0,第一個字元時,a=0,但是字元為數字字元,不用轉換; a=1時,a%2!=0成立,輸入字元為a,滿足後面的條件,轉換為大寫a; a=2時,a%2!=0不成立,不轉換; a=3時,a%2!=0成立,輸入字元為c,滿足後面的條件,轉換為大寫c; 以此類推。 c沒有錯 static的變數 系統會全部初始化為0的 j 3,實際上第三列 從來沒賦過值 當然是0 答案是對的,你想一下,在兩個for 迴圈中,a 0 0 0,a 0 1 1,a 0 2 2,a 0 3 a 0 7 都是為0的,下面以此類推,這個的原理很簡單,就是我們已經定義了一個二維陣列a 8 8... 輸出結果為 max value is 36 因為主程式內的雙重迴圈,對陣列的每個元素都乘以3並放回原處。輸出語句則呼叫函式,求取這個二維 陣列中的最大值,所以函式返回值是36 c語言 讀下列程式,寫出程式的輸出結果。希望有詳細的解析 標頭檔案,輸入輸出 字串處理 include include 定義... 答案錯誤。應該11。或者 有誤。void main if j 2 0 j 10,所以滿足條件,執行j 20後,j 200。繼續迴圈。printf d n i 最終結束迴圈的條件是i 1000,故i輸出為1001,與j無關 i 10,j 10 j 200,i 11 程式結束 怎麼會是1001?是11啊...c語言題下面程式段執行後輸出結果是
c語言讀下列程式,寫出程式的輸出結果希望有詳細解析
C語言以下程式的執行結果是