c語言裡面問號什麼意思什麼意思

2021-03-04 00:29:50 字數 6393 閱讀 1576

1樓:楓璽

c語言裡面?、:是三木運算子,其中?用來判斷條件的真假,:用來根據判斷結果決定取值。

如(a是一個"條件表示式",如果a條件表示式的一般形式為:表示式1?表示式2:表示式3

擴充套件資料

關於三目運算子的說明:

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的絕對值。

2樓:百度使用者

這是c裡面唯一一個三目運算子.

a>b?a:b

如果a>b,返回a

如果a!>b,返回b

3樓:匿名使用者

條件運算子 (?:) 根據布林型表示式的值返回兩個值中的一個。條件運算子的格式如下

condition ? first_expression : second_expression;

備註如果條件為 true,則計算第一表示式並以它的計算結果為準;如果為 false,則計算第二表示式並以它的計算結果為準。只計算兩個表示式中的一個。

使用條件運算子,可以更簡潔、雅觀地表達那些否則可能要求 if-else 結構的計算。例如,為在 sin 函式的計算中避免被零除,可編寫為

if(x != 0.0) s = math.sin(x)/x; else s = 1.0;

或使用條件運算子,

s = x != 0.0 ? math.sin(x)/x : 1.0;

條件運算子為右聯運算子,因此該形式的表示式

a ? b : c ? d : e

按如下規則計算:

a ? b : (c ? d : e)

而不是按照下面這樣計算:

(a ? b : c) ? d : e

不能過載條件運算子。

4樓:匿名使用者

exp1?exp2:exp3

首先判斷exp1是否成立,如成立返回exp2,否則返回exp3

5樓:匿名使用者

rate=(sal<=1000) ? 0 : 0.05

這是一個語句的表示如果sal<=1000成立則rate=0,否則rate=0.05

6樓:匿名使用者

你說的是 ? : 三目條件運算子吧?

7樓:匿名使用者

例如flag=((2<3)?5:6);意思是如果?前的表示式為真則flag為5,否則為6,此時flag=5,而flag=((2>3)?5:6);時flag為6。

8樓:匿名使用者

sfdfhjgjdhgdddvbegwgsgxbfjafxsvdgdhsgdhncuretgff

c語言中" : "(冒號)和問號是什麼意思

9樓:雲南新華電腦學校

是問號和冒號一起嗎

bool a = 1>3?false:true;

?: 是三元運算子由條件

運算子組成的條件表示式的一般形式為:

表示式1 ? 表示式 2 : 表示式 3

其中表示式 1、表示式2、表示式3,既可以是一個簡單的表示式,又可以是由各種運算子組成的複合表示式。

計算過程很好理解:

先求表示式1的值, 如果為真, 則求表示式2 的值並把它作為整個表示式的值。 如果表示式1 的值為假, 則求表示式3 的值並把它作為整個表示式的值。

10樓:科技程式迷

是一個語句,判斷一個表示式的真假來執行兩條**比如int a=9,b=8;

a>b?a=8:b=9; //就是這句

相當於if語句吧,問號前面的表示式為真的時候執行a=8,否則b=9;

明白了吧。

11樓:匿名使用者

這是c語言的三目運算子。

對於條件表示式b?x:y,先計算條件b,然後進行判斷。

如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。一個條件表示式從不會既計算x,又計算y。

條件運算子是右結合的,也就是說,從右向左分組計算。例如,a?b:c?d:e將按a?b:(c?d:e)執行。

12樓:匿名使用者

冒號的話一般都是人家說話的時候就是打個冒號,說的是什麼問號的話,一般是一個語句說完了等人家提的問題就是問好。

在c語言中的問號是什麼意思

13樓:匿名使用者

三目運算子

對於條件表示式b?x:y,先計算條件b,然後進行判斷。

如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。一個條件表示式從不會既計算x,又計算y。

14樓:匿名使用者

相當於如下語句:

if ( sal <= 100 )

else

15樓:

rate=(sal<=1000) ? 0 : 0.05

這是一個語句的表示如果sal<=1000成立則rate=0,否則rate=0.05

16樓:匿名使用者

這個是三目運算子

你看下面

a?b:c,其實就是if{}else{}.

如果你還看不懂的話,就把a?b:c看成如下:

if(a)else

17樓:

x=y?a:b

當條件y為真則x=a,否則x=b

18樓:郝暢施雲露

你的問號

是不是放錯地方了?那個語句應該是判斷是否大於等於吧?

是返回1,不是返回0;

c語言中,問號表示什麼意思?

19樓:鈔時芳曹汝

c語言運算子中問號是條件運算子(與冒號組合)。該運算子是c語言中唯一一個三目運算子。

可以通過如下的例項來說明條件運算子的用法:

int a=1, b=3;

int max;

max = a>b ? a : b; // 如果a>b,則max的值為a,否則max的值為b,也即取a與b中的較大者

20樓:沉思的小妖

一般是字元

你這樣問估計是三目運算子 ? :

a?b:c 用法是a為真執行b,否則執行c

21樓:春雨綿綿的老巢

問號不是單獨出現的,而是以這樣的" ? : "組合出現,這叫三目運算,比如max = a>b?a:b的意思是:如果a 大於b,則把a賦給max,否則把b賦給max

22樓:唔現場

例如int a[10]=;

int *p;

p=a;//是把陣列中的第一個元素的地址賦給指標pp=&a[4];//是把陣列中的第五個元素的地址賦給指標p,運算子的作用是在陣列首地址的基礎之上偏移4個地址長度,得到第五個地址,然後賦給p

23樓:匿名使用者

c 中 ?有兩個用處

1、三目運算子中 (條件表示式)? 表示式 2 :表示式3.

2、在普通字元的使用

24樓:匿名使用者

按我的理解,c語言中單獨的[ ]什麼也不是

。不是中括號,也不是其他的。。。組合使用時可以定義陣列,如int a[10];表示定義一個10個元素的陣列,a[3]=5;表示第三個陣列元素的值是5,int a[2][2];表示定義一個二維陣列。

c語言中,無論是小括號、中括號、大括號,都用()的層數來表示。如(((2+3)*2+5)*3),從裡到外依次為小括號到大括號。。。如果還有更多層數,再加括號就行了。

25樓:匿名使用者

乘,指標 表示一個字串,這個字串有兩個字元,一個有效字元 '*' "*"在c語言中代表指向的內容,它與所指內容合在一起構成指標

c語言中" "(冒號)和問號是什麼意思

26樓:信子

你問的是問號表示式吧?a=1>0?1:0;它的意思就是1>0條件為真a=1,否則a=0

c語言運算子中問號是什麼意思

27樓:學雅思

問號是條件運算子的意思,跟冒號組合使用。條件運算子優先順序高於賦值、逗號運算子,低於其他運算子。

表示式為:表示式1?表示式2:

表示式3。先求解表示式1,若其值為真(非0)則將表示式2的值作為整個表示式的取值,否則(表示式1的值為0)將表示式3的值作為整個表示式的取值。

擴充套件資料條件運算子具有右結合性

當一個表示式中出現多個條件運算子時,應該將位於最右邊的問號與離它最近的冒號配對,並按這一原則正確區分各條件運算子的運算物件。如果在問號和冒號之間還有一個問號或者冒號,應該滿足就近配對,使結構不發生紊亂。例如:

28樓:天雲一號

c語言運算子中問號是條件運算子(與冒號組合)。該運算子是c語言中唯一一個三目運算子。

可以通過如下的例項來說明條件運算子的用法:

int a=1, b=3;

int max;

max = a>b ? a : b; // 如果a>b,則max的值為a,否則max的值為b,也即取a與b中的較大者

29樓:匿名使用者

z=x=y結果z就是y的值

跟下面的if語句等價

if(x>y)z=x;

else z=y;

30樓:匿名使用者

呃,俺學藝不精,不知道你說的是哪個,是不是(?:)呢?

?:是三目運算子

如:a?b:c;

等價於:

if(a) b;

else c;

c語言中,問號表示什麼意思

31樓:匿名使用者

條件運算子(?:)是c 語言中唯一的一個三目運算子。

由條件運算子組成的條件表示式的一般形式為:

表示式1 ? 表示式 2 : 表示式 3

其中表示式 1、表示式2、表示式3,既可以是一個簡單的表示式,又可以是由各種運算子組成的複合表示式。

計算過程很好理解:

先求表示式1的值, 如果為真, 則求表示式2 的值並把它作為整個表示式的值。 如果表示式1 的值為假, 則求表示式3 的值並把它作為整個表示式的值。

c語言中":"(冒號)和問號是什麼意思

32樓:齋思菱劍興

1.這是c語言的三目運算子。

2.對於條件表示式b?x:

y,先計算條件b,然後進行判斷。如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。一個條件表示式從不會既計算x,又計算y。

3.條件運算子是右結合的,也就是說,從右向左分組計算。例如,a?b:c?d:e將按a?b:(c?d:e)執行。

33樓:蹉香卉郜妃

是一個語句,判斷一個表示式的真假來執行兩條**比如inta=9,b=8;

a>b?a=8:b=9;//就是這句

相當於if語句吧,問號前面的表示式為真的時候執行a=8,否則b=9;

明白了吧。

34樓:匿名使用者

是問號和冒號一起嗎

bool a = 1>3?false:true;

?: 是三元運算子

由條件運算子組成的條件表示式的一般形式為:

表示式1 ? 表示式 2 : 表示式 3

其中表示式 1、表示式2、表示式3,既可以是一個簡單的表示式,又可以是由各種運算子組成的複合表示式。

計算過程很好理解:

先求表示式1的值, 如果為真, 則求表示式2 的值並把它作為整個表示式的值。 如果表示式1 的值為假, 則求表示式3 的值並把它作為整個表示式的值。

35樓:六十七年

你是不是說的這種 a?b:c

這是三目運算子

e.g.

d = a?b:c

如果a為ture,則d=b,否則d=c

c語言dd什麼意思,c語言中d是什麼意思

printf中的用法 會輸出以bai下內容到du螢幕 d表示要讀取後zhi面的一個引數的值dao輸出,第1個 d對應後回面的引數a變數的值,答會輸出1,然後按照字串內容輸出一個逗號和一個等號,再輸出變數b的值2 1,2 c語言中 d 是什麼意思 d是用來指定輸入和輸出時的資料型別和格式,表示 以十進...

c語言中是什麼意思,C語言中 是什麼意思

等於的意思 是賦值的意思。只要理解到 賦值不是等於 就能分辨了。比如 int a a 2 賦值,讓a的值變成2 a原來是多少是不知道的 if a 3 判斷 a是否等於3,此時a的值仍然是2a 這是一個邏輯符號,也就是說,結果是真或者假.a b 當a與b相等時是真,否則為假.還有,迴應一下klboy1...

c語言裡的t是什麼意思C語言C是什麼意思

樓上寫錯了,應該是 轉義字元 而不是 轉移字元 轉義字元是一種特殊的字元常量。轉義字元以反斜線 開頭,後跟一個或幾個字元。轉義字元具有特定的含義,不同於字元原有的意義,故稱 轉義 字元。例如,在前面各例題printf函式的格式串中用到的 n 就是一個轉義字元,其意義是 回車換行 轉義字元主要用來表示...