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; 以此類推。 最後輸出 1711717 過程 進入fun後s1指向字元 1 回s2指向答字元 7 t 1 s1指向 2 w 1234567 w 1734567 s2指向 6 w 1734517 t 7,s1指向 3 w 1734517 w 1714517 s2指向 5 w 1714717 t 1 s1指向 4 w... 執行結果 13715 過程 i 1時,n 1 n 0 2 1 運算完得 到 n 列印輸出 n 1 i 2時,n 2 n 1 2 1 運算完得到 n 列印輸出 n 2 i 3時,n 3 n 2 2 1 運算完得到 n 列印輸出 n 3 i 4時,n 4 n 3 2 1 運算完得到 n 列印輸出 n 4... 恭喜你,你發現了一個非常重要的系統漏洞形式。有很多對系統的破解都是基於此原理,下面我此進行一下解釋。首先先大概指明錯誤 char buf 4 是分配了4個位元組的儲存空間,strcpy buf,aaaa 是向buf寫入5個位元組的資料,因為別忘了字串最後總隱藏著一個字串結束符 0 也就是說,strc...c語言,下面程式執行的結果是什麼
c語言以下程式執行後的輸出結果是?請詳細說明
c語言,下面的程式結果為啥是,c語言,下面的程式結果為啥是