欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

如何使用C語(yǔ)言運(yùn)算符

這篇文章主要介紹“如何使用C語(yǔ)言運(yùn)算符”,在日常操作中,相信很多人在如何使用C語(yǔ)言運(yùn)算符問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”如何使用C語(yǔ)言運(yùn)算符”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括龍泉驛網(wǎng)站建設(shè)、龍泉驛網(wǎng)站制作、龍泉驛網(wǎng)頁(yè)制作以及龍泉驛網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,龍泉驛網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到龍泉驛省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

如何使用C語(yǔ)言運(yùn)算符

 運(yùn)算符和表達(dá)式

運(yùn)算符:運(yùn)算符用于執(zhí)行程序代碼運(yùn)算,會(huì)針對(duì)一個(gè)以上操作數(shù)來進(jìn)行運(yùn)算。例如:2+3,其操作數(shù)是2和3,而運(yùn)算符則是“+”

操作數(shù):是運(yùn)算符作用于的實(shí)體,操作數(shù)指出指令執(zhí)行的操作所需要數(shù)據(jù)的來源。

表達(dá)式:是由數(shù)字、運(yùn)算符、數(shù)字分組符號(hào)(括號(hào))、自由變量等以能求得數(shù)值的有意義排列方法所得的組合。

表達(dá)式書寫規(guī)則

1,運(yùn)算符不能相鄰。例a+-b是錯(cuò)誤的

2,乘號(hào)不能省略。列x乘以y,應(yīng)寫成x*y,而不是xy

3,可用多層括號(hào)表示運(yùn)算次序,括號(hào)必須成對(duì)出現(xiàn),均使用小括號(hào)。

運(yùn)算符優(yōu)先級(jí)和結(jié)合性

所謂優(yōu)先級(jí)就是當(dāng)一個(gè)表達(dá)式中有多個(gè)運(yùn)算符時(shí),先計(jì)算誰(shuí),后計(jì)算誰(shuí)。這個(gè)其實(shí)我們?cè)谛W(xué)學(xué)算術(shù)的時(shí)候就學(xué)過,如1+4÷2

那么“結(jié)合性”是什么呢?優(yōu)先級(jí)都是關(guān)于優(yōu)先級(jí)不同的運(yùn)算符參與運(yùn)算時(shí)先計(jì)算誰(shuí)后計(jì)算誰(shuí)。但是如果運(yùn)算符的優(yōu)先級(jí)相同,那么先計(jì)算誰(shuí)后計(jì)算誰(shuí)呢?這個(gè)就是由“結(jié)合性”決定的。

比如1+2×3÷4,乘和除的優(yōu)先級(jí)相同,但是計(jì)算的時(shí)候是從左往右,即先計(jì)算乘再計(jì)算除,所以乘和除的結(jié)合性就是從左往右。就是這么簡(jiǎn)單!

運(yùn)算符分類

按所需操作數(shù)分類:

  • 單目運(yùn)算符

  • 雙目運(yùn)算符

  • 三目運(yùn)算符

按作用分類:

算術(shù)運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

單目正負(fù)不會(huì)改變操作數(shù)的值。 int num = 10;

-num;//表達(dá)式的值為-10 num還是為10

整數(shù)相除會(huì)向下取整。 5/2 == 2

5/2.0 == 2.5

取模運(yùn)算只針對(duì)整數(shù)。 5%2 == 1

5.2%2//語(yǔ)法錯(cuò)誤

賦值運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

將一個(gè)數(shù)據(jù)(常量或表達(dá)式)賦值給一個(gè)變量。 int age =18;

age +=2;//age = age +2;

age +=5-3;//age = age+(5-3);

關(guān)系運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

  • 關(guān)系表達(dá)式的值只有2種,為真(true)返回1,為假(false)返回0。

  • 所謂關(guān)系運(yùn)算,就是做比較,日常生活中經(jīng)常遇到一些真假判斷,比如說,“張三比李四高”、“濟(jì)南到北京比濟(jì)南到上海近”,“5大于2”這些問題的答案是真或假。程序設(shè)計(jì)是對(duì)實(shí)際問題解決過程的模擬,常常需要做判斷,像“如果這樣,我就執(zhí)行動(dòng)作A,如果那樣,我就執(zhí)行動(dòng)作B”,那怎么判斷這樣那樣呢,就需要關(guān)系運(yùn)算符和關(guān)系表達(dá)式。

邏輯運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

  • 邏輯表達(dá)式的值只有2種,為真(true)返回1,為假(false)返回0。

  • 一般用來連接關(guān)系表達(dá)式。

短路現(xiàn)象

在由&&和||運(yùn)算符組成的邏輯表達(dá)式中,C語(yǔ)言有個(gè)“節(jié)省計(jì)算”原則,當(dāng)計(jì)算出一個(gè)子表達(dá)式的值后便可確定整個(gè)邏輯表達(dá)式的值時(shí),后面的子表達(dá)式就不需要再計(jì)算了,這種表達(dá)式也稱為短路表達(dá)式。

舉個(gè)例子:

false  && printf("1\n"); true   && printf("2\n");  false  || printf("3\n"); true   || printf("4\n"); //output :2 // 3

對(duì)于&&符號(hào),如果左邊表達(dá)式為false,則右邊表達(dá)式不會(huì)執(zhí)行,即不會(huì)執(zhí)行printf(“1”),如果左邊表達(dá)式為true,則右邊表達(dá)式會(huì)執(zhí)行,即會(huì)執(zhí)行printf(“2”),輸出2

對(duì)于||符號(hào),如果左邊為true,則右邊表達(dá)式不會(huì)執(zhí)行,即不會(huì)執(zhí)行printf("4"),如果左邊表達(dá)式為false,則右邊表達(dá)式會(huì)執(zhí)行,即執(zhí)行printf("3"),輸出3。

特殊運(yùn)算符

特殊算術(shù)運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

  • 對(duì)變量進(jìn)行+1和-1的操作。

  • 只能對(duì)變量使用,不能用于常量和表達(dá)式

  • 前置時(shí)是先運(yùn)算、后使用

  • 后置時(shí)是先使用、后運(yùn)算

  • 注意:不要嵌套使用

int a = 1; printf("%d", (a++ + ++a));  //1 + 3

 逗號(hào)運(yùn)算符

用逗號(hào)將多個(gè)表達(dá)式連接起來,又稱為“順序求值運(yùn)算符”。整個(gè)表達(dá)式的值是最后那個(gè)逗號(hào)之后表達(dá)式的值。

逗號(hào)表達(dá)式兩種作用:

  • 分割: int a,b,c,d;

  • 求值: int a = (1,3,5,7,9);

int b = 1,3,5,7,9;

條件表達(dá)式

條件表達(dá)式可以對(duì)指定的條件進(jìn)行判斷,true和false分別執(zhí)行不同的代碼。

條件 ?表達(dá)式1 :表達(dá)式2

printf(5 > 0 ?  "正數(shù)" : "負(fù)數(shù)"); printf((5 > 0) ? ("正數(shù)") : ("負(fù)數(shù)"));//為了避免眼花繚亂,可以把每個(gè)表達(dá)式都加上圓括號(hào)

 位運(yùn)算符

如何使用C語(yǔ)言運(yùn)算符

  • 位運(yùn)算只針對(duì)整型和字符型,而且是直接對(duì)二進(jìn)制進(jìn)行操作

按位與&

這個(gè)符號(hào)其實(shí)和邏輯與運(yùn)算 && 意思一樣,只不過作用在每一位上。

有0則0:對(duì)于每一位來說,兩個(gè)數(shù)都是真,則為真,否則為假。

3-> 0b 0000 0011 2-> 0b 0000 0010 3&2 ->0b 0000 0010

 按位或|

同理,和邏輯或運(yùn)算 || 意思一樣,只不過作用在每一位上。

有1則1:對(duì)于每一位來說,但凡有個(gè)真的就是真,否則為假。

3-> 0b 0000 0011 2-> 0b 0000 0010 3|2 ->0b 0000 0011

 按位異或^

相同為0,不同為1:對(duì)于每一位來說,只要相同就為0,不同就為1。

3-> 0b 0000 0011 2-> 0b 0000 0010 3^2 ->0b 0000 0001

 按位取反

取反是一個(gè)單目運(yùn)算符,對(duì)每一位進(jìn)行取反,即0變1,1變0

6-> 0b 0000 0110 ~6-> 0b 1111 1001    //補(bǔ)碼:最高位變成了符號(hào)位,所以結(jié)果肯定是一個(gè)負(fù)數(shù)      0b 1000 0110 //反碼      0b 1000 0111 //原碼   result: -7

 左移

左移操作就是把這些0啊1啊的整體往左移動(dòng) n 位,右邊缺的就補(bǔ)充 0。

3-> 0b 0000 0011 3<<1 -> 0b 0000 0110 ==6 2-> 0b 0000 0010 2<<2 0b 0000 1000 == 8

誒,大家發(fā)現(xiàn)沒有,左移 1 位之后這個(gè)數(shù)相當(dāng)于乘2。

但是這只適用于左邊溢出的高位中不包含 1 時(shí)。

如果把 1 扔了,那就肯定不是 2 倍了嘛。

右移

右移操作就是整體往右移動(dòng) n 位,左邊缺的補(bǔ)充符號(hào)位。

3-> 0b 0000 0011 3>>1 -> 0b 0000 0001 ==1 2-> 0b 0000 0010 2<<2 0b 0000 0001 == 1

同理,正數(shù)右移操作的效果是這個(gè)數(shù)除以 2。

到此,關(guān)于“如何使用C語(yǔ)言運(yùn)算符”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

網(wǎng)站標(biāo)題:如何使用C語(yǔ)言運(yùn)算符
文章轉(zhuǎn)載:http://chinadenli.net/article38/ppgdpp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、服務(wù)器托管、定制網(wǎng)站、搜索引擎優(yōu)化、移動(dòng)網(wǎng)站建設(shè)、Google

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)