❶ c語言裡面問號什麼意思:什麼意思
C語言裡面?、:是三木運算符,其中?用來判斷條件的真假,:用來根據判斷結果決定取值。
如(a<b)?a:b"是一個"條件表達式",如果a<b為真,則表達式取a值,否則取b值。條件運算符由"?"和":"兩個符號組成, 要求有3個操作對象,所以條件運算符也叫三目運算符。
條件表達式的一般形式為:表達式1?表達式2:表達式3
(1)c語言問號擴展閱讀
關於三目運算符的說明:
1、通常情況下,表達式1是關系表達式或邏輯表達式,用於描述條件表達式中的條件,表達式2和表達式3可以是常量,變數或表達式.例如:
(x==y)?'Y':'N'、(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)、ch=(ch>='A'&&ch<='Z')?(ch+32):ch均為合法的條件表達式。
2、條件表達式的執行順序為:先求解表達式1,若值為非0,表示條件為真,則求解表達式2,此時表達式2的值就作為整個條件表達式的值;
若表達式1的值為0,表示條件為假,則求解表達式3,表達式3的值就是整個條件表達式的值。例如:(a>=0)?a:-a執行結果是a的絕對值。
3、在程序中,通過把條件表達式的值直接賦予某個變數.。例如:min=(a<b)?a:b執行結果就是將條件表達式的值賦予變數min,即將a和b二者中較小的數賦給min。
❷ 在C語言中的問號是什麼意思
你的
問號
是不是放錯地方了?那個語句應該是判斷是否大於等於吧?
是返回1,不是返回0;
❸ C語言中,問號表示什麼意思
?用來判斷條件的真假,:用來根據判斷結果決定取值。
如(a<b)?a:b"是一個"條件表達式",如果a<b為真,則表達式取a值,否則取b值。條件運算符由"?"和":"兩個符號組成, 要求有3個操作對象,所以條件運算符也叫三目運算符。
條件表達式的一般形式為:表達式1?表達式2:表達式3
C語言的基本構成:
1、數據類型
C的數據類型包括:整型、字元型、實型或浮點型(單精度和雙精度)、枚舉類型、數組類型、結構體類型、共用體類型、指針類型和空類型。
2、常量與變數
常量其值不可改變,符號常量名通常用大寫。
變數是以某標識符為名字,其值可以改變的量。標識符是以字母或下劃線開頭的一串由字母、數字或下劃線構成的序列,請注意第一個字元必須為字母或下劃線,否則為不合法的變數名。變數在編譯時為其分配相應存儲單元。
❹ C語言 輸出 問號
空格的原因是printf("the reverse line is:\n %s", rev);這句裡面有一個空格(你的格式是換行後空格輸出 所以有一個空格)
至於燙的原因 是
for (i = 0; i <= len; ++i)
rev[len - i] = ori[i - 1];
是當i=0的時候引用了ori[-1]是位置的內存,所以出現的
改為
for (i = 1; i <= len; ++i)
rev[len - i] = ori[i - 1];
就行了
ps:你用的是Windows編譯器 謝謝採納
❺ c語言中":"(冒號)和問號是什麼意思
是問號和冒號一起嗎
bool a = 1>3?false:true;
?: 是三元運算符
由條件運算符組成的條件表達式的一般形式為:
表達式1 ? 表達式 2 : 表達式 3
其中表達式 1、表達式2、表達式3,既可以是一個簡單的表達式,又可以是由各種運算符組成的復合表達式。
計算過程很好理解:
先求表達式1的值, 如果為真, 則求表達式2 的值並把它作為整個表達式的值。 如果表達式1 的值為假, 則求表達式3 的值並把它作為整個表達式的值。
❻ c語言 問號表達式
你的意思就是如果M為真,也就是說M!=0,就執行a++,如果M為假,也就是說M==0,就執行a--。所以這個M就相當於判斷M是否等於0;如果還看不懂的話,你可以去看下C語言書上的條件表達式的那章,很簡單的,好好加油,祝你成功!~
❼ c語言中" : "(冒號)和問號是什麼意思
bool a = 1>3?false:true;
?: 是三元運算符由條件運算符組成的條件表達式的一般形式為:
表達式1 ? 表達式 2 : 表達式3,其中表達式 1、表達式2、表達式3,既可以是一個簡單的表達式,又可以是由各種運算符組成的復合表達式。
計算過程很好理解:先求表達式1的值, 如果為真, 則求表達式2 的值並把它作為整個表達式的值。 如果表達式1 的值為假,則求表達式3 的值並把它作為整個表達式的值。
(7)c語言問號擴展閱讀:
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。
❽ C語言則問號條件輸出
這個輸出,是由兩個?:語句組成的。按照優先順序,等同於
(a<b?a:(d<c?__:b))
也就是會先判斷a<b 即4<3
判斷不成立,表達式值為
d<c?__:b
的值
判斷d<c 也就是1<2 成立。
最終表達式就是要填的值。
要輸出1,那麼只要讓填的表達式值為1就可以了。
這樣,就有很多種填法了。
比如
直接填1
填 d 因為d的值就是1
填一個減法的表達式,比如a-b b-c c-d這類的都可以。
❾ C語言問號表達式
……?……:……
式A?B:C值為:若A為真,則B;若A為假,則C。
但有一點是值得注意的,那就是問號表達式的結合性,問號表達式是從右往左的運算方向
尤其是當問號表達式嵌套使用時得注意這個問題,例如
代碼:
int a=1,b=2,c=3,d=4;
printf("%d",a<b?a:c<d?c:d);
正確結果是:1
因為先執行的是c<d?c:d,會返回c,然後執行a<b?a:c
因此得到的結果就是1(可以在編譯器上實驗一下)
❿ C語言運算符中問號是什麼意思
問號是條件運算符的意思,跟冒號組合使用。條件運算符優先順序高於賦值、逗號運算符,低於其他運算符。
表達式為:表達式1?表達式2:表達式3。先求解表達式1,若其值為真(非0)則將表達式2的值作為整個表達式的取值,否則(表達式1的值為0)將表達式3的值作為整個表達式的取值。
(10)c語言問號擴展閱讀
條件運算符具有右結合性
當一個表達式中出現多個條件運算符時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算符的運算對象。如果在問號和冒號之間還有一個問號或者冒號,應該滿足就近配對,使結構不發生紊亂。
例如:
w<x ? x+w : x<y ? x : y與 w<x ? x+w : ( x<y ? x : y) 等價。
w<x ? x+w : x<y ? x : y與 (w<x ? x+w : x<y) ? x : y 不等價。