您好,登錄后才能下訂單哦!
c語(yǔ)言有哪些基本語(yǔ)句?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
c語(yǔ)言六種基本語(yǔ)句為:1、算術(shù)運(yùn)算符和算術(shù)表達(dá)式;2、賦值運(yùn)算符和賦值表達(dá)式;3、關(guān)系運(yùn)算符和關(guān)系表達(dá)式;4、邏輯運(yùn)算符和邏輯表達(dá)式;5、條件運(yùn)算符和條件表達(dá)式;6、逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式。
c語(yǔ)言六種基本語(yǔ)句為:
一、算術(shù)運(yùn)算符和算術(shù)表達(dá)式
1.基本算術(shù)運(yùn)算符
+
(加)、 -
(減) 、 *
(乘) 、 /
(除) 和 %
(求余數(shù))
這五個(gè)運(yùn)算符的優(yōu)先級(jí)為:
*
、/
和%
同級(jí),但比+和-高。即先乘除后加減。
兩個(gè)整數(shù)相除,結(jié)果為一整數(shù);分子小于分母,結(jié)果為零。
例如: 5/2 結(jié)果為 2
2/5 結(jié)果為 0
這五個(gè)運(yùn)算符的結(jié)合性為:自左至右。
例如:10+6- 4*2
第一步先計(jì)算10+6,得結(jié)果16,第二步計(jì)算4*2,得結(jié)果8,然后用第一步計(jì)算的結(jié)果減第二步計(jì)算的結(jié)果,得結(jié)果8。
余數(shù)計(jì)算方法:
5%3 余數(shù)是2
5%8 余數(shù)是5
-5%3 余數(shù)是 –2 (注意:符號(hào)位取<操作數(shù)1>的符號(hào))
5%-3 余數(shù)是 2 (注意:符號(hào)位取<操作數(shù)1>的符號(hào))
2.算術(shù)表達(dá)式
算術(shù)表達(dá)式是由算術(shù)運(yùn)算符和操作數(shù)組成的表達(dá)式。表達(dá)式的值是一個(gè)數(shù)值,表達(dá)式的類(lèi)型具體由運(yùn)算符和操作數(shù)確定。
例如: 5+3*(6-2) 表達(dá)式的類(lèi)型為int 型。
3+4.0-3/2.0 表達(dá)式的類(lèi)型為double型。
3.數(shù)據(jù)類(lèi)型轉(zhuǎn)換
通常參與運(yùn)算的數(shù)據(jù)類(lèi)型不完全一致,操作時(shí)應(yīng)先將其轉(zhuǎn)換成相同的數(shù)據(jù)類(lèi)型,然后操作。
2.1強(qiáng)制類(lèi)型轉(zhuǎn)換,直接將某數(shù)據(jù)強(qiáng)制轉(zhuǎn)換成指定的數(shù)據(jù)類(lèi)型
強(qiáng)制類(lèi)型轉(zhuǎn)換,變量值本身未變化
(double)a; (int)(x+y);注意區(qū)別:(int)x+y 先把x的值轉(zhuǎn)換成int型,然后再加y (float)(5%3) int i; … i=i+(int)9.801;
2.2在編譯時(shí)由編譯程序按照一定規(guī)則自動(dòng)完成,不需人為干預(yù)
數(shù)據(jù)參加運(yùn)算前要進(jìn)行下列轉(zhuǎn)換:
char,short→int→float→double
混合運(yùn)算時(shí)數(shù)據(jù)類(lèi)型由低級(jí)→高級(jí)
unsigned → int → long → double
以上并不意味著unsigned必須到int再到long的依次轉(zhuǎn)換,而是由算式中的最高級(jí)進(jìn)行轉(zhuǎn)換的。
二、賦值運(yùn)算符和賦值表達(dá)式
1.賦值運(yùn)算符
賦值符號(hào):=
將賦值符右邊表達(dá)式的值賦給賦值符左邊的一個(gè)變量。
賦值運(yùn)算符的數(shù)據(jù)類(lèi)型若不一致,則要進(jìn)行類(lèi)型轉(zhuǎn)換。轉(zhuǎn)換方式為:
將實(shí)型數(shù)據(jù)賦給整型變量時(shí),舍棄實(shí)數(shù)的小數(shù)部分。
如:int i; i=5.65; i 的值為 5。
將整型數(shù)據(jù)賦給實(shí)型變量時(shí),數(shù)值不變。
float f ; f=23;
(先23→23.00000 再存儲(chǔ)在f 中)
double d; d=23;
(先23→23.000000000000000再存儲(chǔ)在d中)
將字符數(shù)據(jù)賦給整型變量時(shí),將字符數(shù)據(jù)放到整型變量低8位中
int i;char ch = '0'; i = ch; // i = 48
將整型變量賦給字符數(shù)據(jù)時(shí),將整型變量低8位放到字符數(shù)據(jù)中
int i = 4656;char ch; ch = i; // ch = 48
2.復(fù)合的賦值運(yùn)算符
復(fù)合的賦值運(yùn)算符:(共十個(gè))
+= , -= , *= , /= , %= ,
<<= , >>= , &= , ^= , |=
例如:
a += 3 等價(jià)于 a=a+3 x *= y+8 等價(jià)于 x=x*(y+8) x %= 3 等價(jià)于 x=x%3
由賦值運(yùn)算符將一個(gè)變量和一個(gè)表達(dá)式連接起來(lái)的式子。
格式為:<變量> <賦值運(yùn)算符> <表達(dá)式>
例如:
int x,y,z; x=y=z=5+6; int x=3,y=4; x*=y+1; ( x=等價(jià)與 x*(y+1);) int x; x='a';
賦值運(yùn)算符結(jié)合率為:“自右而左”。
例如:
a=b=c=5 a=(b=(c=5)) a,b,c值都是5 a=5+(c=6) c值為6, a值為5+6 (即11) a=(b=4)+(c=6) b值為4,c值為6,a值為4+6 (即10) a=(b=10)/(c=2) a值為5
三、關(guān)系運(yùn)算符和關(guān)系表達(dá)式
1.關(guān)系運(yùn)算符
關(guān)系運(yùn)算符用于兩個(gè)數(shù)值之間的比較運(yùn)算。C語(yǔ)言提供6種關(guān)系運(yùn)算符:
<、<=、>、>=
、 優(yōu)先級(jí)相同高
==、!=
優(yōu)先級(jí)相同低
關(guān)系運(yùn)算符的結(jié)合率為:“自左而右”。
(即當(dāng)優(yōu)先級(jí)相同時(shí)按自左而右結(jié)合a>b>c,當(dāng)優(yōu)先級(jí)不同時(shí)按優(yōu)先級(jí)高低結(jié)合a=b+c)
關(guān)系運(yùn)算符、算術(shù)運(yùn)算符和賦值運(yùn)算符的優(yōu)先級(jí)為:
例如: 1、c>a+b 等效于 c>(a+b)
2.關(guān)系表達(dá)式
由關(guān)系運(yùn)算符和操作數(shù)組成的表達(dá)式稱(chēng)為關(guān)系表達(dá)式。
關(guān)系表達(dá)式的值是一個(gè)邏輯型的值,即只有兩個(gè)值(真和假)。
C語(yǔ)言是用1作為真,用0作為假。但是進(jìn)行運(yùn)算時(shí),非0即認(rèn)為真,0才認(rèn)為假。而表達(dá)式的結(jié)果為真時(shí),給出真值1。為假時(shí),給出假值0。
例1:
有int x=2,y=3,z=5; 則:x>y 結(jié)果為0。 z>=y 結(jié)果為1。 z==y 結(jié)果為0。
例2:
若 a=3,b=2,c=1 f=a>b>c f=?
四、邏輯運(yùn)算符和邏輯表達(dá)式
1.邏輯運(yùn)算符
2.邏輯表達(dá)式
用邏輯運(yùn)算符將關(guān)系表達(dá)式或邏輯量連接起來(lái)的式子。
運(yùn)算結(jié)果為:“真”或“假”值。
系統(tǒng)在運(yùn)算時(shí)以非0即為真,以0為假。
例如: 4 && 0 || 2 的值為1
5 && !0 的值為1
例如:
(a>b)&&(x>y) 可以寫(xiě)成 a>b&&x>y (a==b)||(x==y) 可以寫(xiě)成 a==b||x==y (!a)||(a>b) 可以寫(xiě)成 !a||a>b 5>3&&2||8<4-!0 的值為 1 'c'&&'d' 的值為 1
#include <stdio.h> int main() { int a = 10; int b = 10; if (++a > 100 || ++b >0) { } printf("a = %d, b = %d\n", a, b); a = 10; b = 10; if (++a > 100 && ++b >0) { } printf("a = %d, b = %d\n", a, b); return 0; }
五、條件運(yùn)算符和條件表達(dá)式
1.條件運(yùn)算符
條件運(yùn)算符: ? :
它是唯一的一個(gè)三目運(yùn)算符
2.條件表達(dá)式
條件表達(dá)式的一般格式為:表達(dá)式1 ? 表達(dá)式2 : 表達(dá)式3
運(yùn)算過(guò)程:表達(dá)式1的結(jié)果為真(非0)時(shí),表達(dá)式2的計(jì)算結(jié)果作為條件表達(dá)式的值;否則,取表達(dá)式3的計(jì)算結(jié)果為條件表達(dá)式的值。
如: a>b?a:b
條件運(yùn)算符的優(yōu)先級(jí)低于邏輯、關(guān)系、算術(shù)運(yùn)算符高于賦值運(yùn)算符。
如: a>b?a:b+1 相當(dāng)于 (a>b)?a:(b+1)
六、逗號(hào)運(yùn)算符和逗號(hào)表達(dá)式
逗號(hào)運(yùn)算符: ,
格式: 表達(dá)式1, 表達(dá)式2, 表達(dá)式3, LL, 表達(dá)式n
優(yōu)先級(jí): 最低
從左向右計(jì)算每個(gè)表達(dá)式的值,逗號(hào)表達(dá)式的值為表達(dá)式n的值。
例如:
y=(x=3,5+6,x+5) 逗號(hào)表達(dá)式的值為?
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。