日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 人文社科 > 生活经验 >内容正文

生活经验

c语言赋值x为字母,C语言算术、赋值、关系、逻辑运算详细剖析---

發(fā)布時(shí)間:2023/11/27 生活经验 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言赋值x为字母,C语言算术、赋值、关系、逻辑运算详细剖析--- 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

標(biāo)識(shí)符和關(guān)鍵字

¨標(biāo)識(shí)符:用來(lái)標(biāo)識(shí)程序中的變量、符號(hào)常量、函數(shù)、數(shù)組、類型、文件等對(duì)象的名字。標(biāo)識(shí)符只能由字母、數(shù)字和下劃線組成,且第一個(gè)字符必需為字母或下劃線。C語(yǔ)言中大小寫(xiě)字母是兩個(gè)不同的字符。

¨關(guān)鍵字:標(biāo)識(shí)符的一個(gè)特殊的集合。其中的標(biāo)識(shí)符在C語(yǔ)言中有預(yù)先定義好的特殊意義。不能用于其他任何目的。

¨C語(yǔ)言的關(guān)鍵字共32個(gè):

auto break case char const continue defaultdo

double else enum extern float for goto if

int long register return short signed sizeof static

struct switch typedef union unsigned voidvolatile while

運(yùn)算符、表達(dá)式和計(jì)算

C的運(yùn)算符主要分為四大類:

算術(shù)運(yùn)算符(+加 -減 ×乘 /除? %取余? ++自增1 --自減1)

關(guān)系運(yùn)算符(>大于? =大于或等于? <=小于或等于? !=不等于)

邏輯運(yùn)算符(!邏輯非 &&邏輯與? ||邏輯或 )

位運(yùn)算符(<>按位右移?~按位取反? |按位或?按位異或 &按位與 )

特殊運(yùn)算符 : 賦值運(yùn)算符(=)、條件運(yùn)算符(? :)

逗號(hào)運(yùn)算符(,)、指針運(yùn)算符(* &)、

求字節(jié)運(yùn)算符(sizeof)、

強(qiáng)制類型轉(zhuǎn)換運(yùn)算符((類型))、

分量運(yùn)算符(. ->)、下標(biāo)運(yùn)算符([ ])、函數(shù)調(diào)用(( ))等。

賦值運(yùn)算符與賦值表達(dá)式

一、剖析10種復(fù)合賦值運(yùn)算符:

+=、 -=、 *=、 /=、 %=、 <<=、 >>=、&=、 ^=、 |=

例x+=1等價(jià)于x=x+1

自增運(yùn)算符前置和后置的區(qū)別

作為表達(dá)式時(shí):,++前置時(shí),自增表達(dá)式(++n)的值等于其操作數(shù)自增后的值;++ 后置時(shí),自增表達(dá)式( n++)的值等于其操作數(shù)自增前的值

實(shí)例1:自增運(yùn)算符前置和后置

//自增運(yùn)算

//前置自增和后置自增的區(qū)別

int X,Y,Z;

X=5;

Y=X++ +5;

printf("x++自增運(yùn)算結(jié)果:%d\n",Y);

printf("x結(jié)果1:%d\n",X);

Z=++X +5;

printf("x結(jié)果2:%d\n",X);

printf("++x自增運(yùn)算結(jié)構(gòu):%d\n",Z);

return 0;

運(yùn)行結(jié)果如下:

二、逗號(hào)運(yùn)算符及其表達(dá)式

C語(yǔ)言中,逗號(hào)“,”的用法有兩種:一種是用作分隔符,另一種是用作運(yùn)算符。逗號(hào)表達(dá)式

形式:表達(dá)式1,表達(dá)式2,表達(dá)式3,...,表達(dá)式n

a=2*6,a-4,a+15;

當(dāng)逗號(hào)作為運(yùn)算符使用時(shí)是一個(gè)雙目運(yùn)算符,其運(yùn)算優(yōu)先級(jí)是所有運(yùn)算符中最低的。逗號(hào)運(yùn)算符的運(yùn)算順序是自左向右的,請(qǐng)注意,后面兩個(gè)表達(dá)式的值僅作了計(jì)算,而并沒(méi)有賦給a,所以a的值仍然為12。

逗號(hào)表達(dá)式求值過(guò)程:分別求逗號(hào)表達(dá)式每一項(xiàng)的值,并以最后一個(gè)表達(dá)式n的值作為整個(gè)逗號(hào)表達(dá)式的值。

實(shí)例2:逗號(hào)表達(dá)式

inta;

a=3*5,a*4,a+5;

printf("a值為:%d\n",a);

return 0;

編譯、鏈接、執(zhí)行后的結(jié)果:

實(shí)例3:逗號(hào)表達(dá)式

int a=2,b=4,c=6,x,y;

y=3*5,y=((x=a+b),y=0,y=(b+c));

printf("y=%d,x=%d\n",y,x);

return 0;

編譯、鏈接、執(zhí)行后的結(jié)果:

三、剖析位運(yùn)算符

實(shí)例4:用C語(yǔ)言寫(xiě)一個(gè)程序:輸入兩個(gè)十進(jìn)制數(shù),并輸出它們按位或的結(jié)果

//位運(yùn)算

//位或運(yùn)算---1

int a,b,c;

printf("請(qǐng)輸入兩個(gè)數(shù):");

scanf("%d %d",&a,&b);

c=a|b;

printf("a=%d\n b=%d\n它們按位或的結(jié)果為:c=%d\n",a,b,c);

Output:

請(qǐng)輸入兩個(gè)數(shù):3 5

a=3

b=5

它們按位或的結(jié)果為:c=7

//位異運(yùn)算---2

int a,b,c;

printf("請(qǐng)輸入兩個(gè)數(shù):");

scanf("%d %d",&a,&b);

c=a^b;

printf("a=%d\nb=%d\n它們按位或的結(jié)果為:c=%d\n",a,b,c);

Output:

請(qǐng)輸入兩個(gè)數(shù):1 7

a=1

b=7

它們按位或的結(jié)果為:c=6

分析程序:所謂位運(yùn)算是指進(jìn)行二進(jìn)制的運(yùn)算。3化為二進(jìn)制數(shù)為0011,5化為二進(jìn)制數(shù)為0101,按照按位或運(yùn)算規(guī)則:1|1=1、1|0=1、0|1=1、0|0=0,按照按位異運(yùn)算規(guī)則:1^1=0、1^0=1、0^1=1、0^0=0它們按位或的結(jié)果為0111,化為十進(jìn)制數(shù),便為7

四、條件(三元)運(yùn)算符(? :)

test ?expression1 : expression2

test

任何 Boolean表達(dá)式。

expression1

test為 true時(shí)返回的表達(dá)式。可能是逗點(diǎn)表達(dá)式。

expression2

test為 false時(shí)返回的表達(dá)式。可能是逗點(diǎn)表達(dá)式。

?? :運(yùn)算符可以用作 if...else語(yǔ)句的快捷方式。它通常用作較大表達(dá)式(使用 if...else 語(yǔ)句會(huì)很繁瑣)的一部分。例如:

var now = new Date();

var greeting = "Good" + ((now.getHours() >17) ? " evening." : " day.");

在此例中,如果晚于下午 6時(shí),則創(chuàng)建一個(gè)包含 "Good evening." 的字符串。使用 if...else語(yǔ)句的等效代碼如下:

var now = new Date();

var greeting = "Good";

if (now.getHours() > 17)

greeting +=" evening.";

else

greeting += " day.";

總結(jié)

以上是生活随笔為你收集整理的c语言赋值x为字母,C语言算术、赋值、关系、逻辑运算详细剖析---的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。