1樓:鄧秀寬
解:switch後面的括號內必須為整型或字元型
而你在前邊定義x為實數型的 應該這時錯的
再有後面case後面的常量表示式與switch後面的括號內的表示式型別要相同才能輸出。
若有定義:int a,b; 則表示式(a=2,b=5,a*2,b++,a+b)的值是?
2樓:聖雅柔顧妙
b++的意思是
先將b的原值帶入本條語句執行,然後再自加,這裡本條語句為b++;
即什麼也不做,然後自加
如果換成c=a+b++;則c=7;
而不是8
3樓:噴農藥的蘇
(float)(a+b)/2
得到浮點數2.5
(int)x%(int)y,因為把x,y強制裝換為其實就是3墨2得到int數1
結果是3.5
4樓:勤奮的欄欄
先掃描逗號表示式 結果是8
c語言問題:若有定義 float x=1.5;int a=1,b=3,c=2;則正確的switch語句是:
5樓:匿名使用者
case的後面必須是常量表示式,不能是變數。case c: ....錯
6樓:匿名使用者
case c 語法錯誤 case後面只能跟整數或者列舉值
7樓:匿名使用者
switch(a+b); //1、這裡不應該有分號
8樓:匿名使用者
case c c是什麼?
若有定義:float x=1.5;int a=1,b=3,c=2;,則正確的switch語句是 ( ) 5
9樓:顧小蝦水瓶
若有定源義:float x=1.5;int a=1,b=3,c=2;,則正確的switch語句bai是:
duswitch(a+b)
所以這一題選zhi擇c。
switch語句的基本形式dao
switch(表示式)
10樓:匿名使用者
對於swith(表示式)中的表示式,可以控制程式的執行過程,表示式的結果必須是整數、字元或列舉量值,a選項中,出現浮點型,b中switch()後面出現分號,d選項case1後面出現},是錯誤的
11樓:蔣卓軒
c答案解析復
[解析] switch 後的括號中只能是制整型或字元型表示式,選項
a中使用的是浮點型變數x,故不正確。選項b在switch的括號後面多了一個分號,故也不正確。switch的case標號後只能是常量或常量表示式,而不能是變數,所以選項d也不正確。
故應該選擇c
12樓:冬蟻想睡
switch的括號裡只能是結果為整型的表示式,也可以是列舉型,但實際上列舉型會轉換成整型。
13樓:
case 後面必須是不能是浮點數,必須是int 或者列舉,int 1,2,3,4, 列舉,a,w,r,s,q、、、
14樓:***x櫻
switch裡不可以用浮點數
若有定義:floatx=1.5;inta=1,b=3,c=2;則正確的switch語句是
15樓:匿名使用者
選 c。
a錯,因為浮點型不能用在 switch中。
b錯,本來將浮點型強制轉換為整型之後用switch是可以的,但回它在swich((int)x)後面多了個分答號。
c對,a+b的結果也是整型,沒問題。
d錯,因為 case 後面只能跟常量,不能跟變數。所以不能 case c。
16樓:匿名使用者
答案c:
a:x不屬於int,char,或列舉型別
b:switch()不用加分號
d:變數不能作為case
若有定義:float x=1.5;int a=1,b=3,c=2;則正確的switch 語句是
17樓:匿名使用者
正確的switch 語句是 c
18樓:於白秋孛玉
switch()
括號表示式裡面,結果不能是實型,也就是不能為float。
所以a錯,b對。
這是編譯器規定的,所以自己記下來唄。
若有定義:int a,b=0; float x=1.5;則正確的賦值語句是
19樓:冽冽不是逗比
雖然float 賦值給int會丟失小數部分但這種方式是可以的
空格你隨便加 都是可以的
若有定義 int a 7 float x 2 5,y 4 7則表示式x a 3(int)(x y)
public class t0609 測試結果 2.5 說明 這個關鍵是優先順序問題 1 括號永遠優先順序最高 2 無括號的預設優先順序 運算優先順序最高 運算優先順序次高 運算優先順序最低 所以 是 2.5 這個式子的結果 運算優先順序最高 運算優先順序次高 運算優先順序最低 是求餘符號 所以 是...
c語言設有定義floatx1234567,則執行
lz注意,先不管是不是輸出 對於 int x 100 0.5 100.0這個算式被強制轉換為整型的是分回子部分,而分子除以答100.0這個浮點型的資料之後整個算式就又變回浮點型了,要輸出的資料真是整型也沒事,因為你現在是按float型輸出,它會再次強制轉換資料 單精度浮點型在輸出時保留小數點後6位 ...
請教一道C語言的題目若有定義 int a 1,b 2,c 3語句 aba執行後b的值為幾?為什麼?謝謝
b還是2 因為 a b 編譯器會先判斷a 如果a為真就直接跳過b執行下一句了 又因為a 1 a也為真 所有 b不執行 還是2 還是2,因為 運算時只需要有一個為真就是真,a為真,故而 b就不會執行,因此b的值沒變 3因為執行了語句 a b a後b加了1,所以b為3 3 b 執行後就是3 c語言,若有...