溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

c語(yǔ)言有哪些基本語(yǔ)句

發(fā)布時(shí)間:2020-07-29 09:31:14 來(lái)源:億速云 閱讀:1330 作者:Leah 欄目:編程語(yǔ)言

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ì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI