1樓:博爾思拓
首先你要明白什麼是表示式,還有變數。
a是乙個變數。
a++,++a都是a加了1.
比如a原來是1,執行了a++或++a後,a變數的值就是2了
至於a++和++a的區別主要是在表示式上的區別。
++a是先執行了a加1後,參與表示式的計算。
a++是a先參與表示式的計算,後執行自加1.
比如:int a,b;
a=1;//如果你想把a的值1,付給b.那麼,但你又想使得a加1。你就可以這麼做
b=a++;//++在a之後,先把a的值付給b,然後再本身加1 。這時候b=1,a=2了。
//如果你還不懂得話。b=a++;的意思 就是b=a;a=a+1;這兩句意思
//而b=++a 就是 a=a+1;b=a;的意思
至於a++=a+a+1
好像寫錯了吧
是a+=a+a+1
優先順序等於 a=a+(a+a+1)//a+=b 是 a=a+b 的簡化
!= 不等於,是條件運算子,用來判斷真假的。
比如1!=2; 表示式的值就是假,也就是0;
c語言很多式子都是簡化的,這樣雖然可以節省**,卻比較讓人糊塗。
2樓:海笑認為
a++就是運算後+1,在表示式裡面的時候還是a而++a就是先a+1然後代入表示式計算。
!=是不等於的意思
3樓:匿名使用者
a++,先使用後計算(對變數a來說)
++a, 先計算後使用(對變數a來說)
c語言中c=++a是什麼意思
4樓:非常可愛
a++這個式子的返回值是a,所以b=a++相當於b=a,然後a=a+1;
++a的返回值是a+1;所以b=++a相當於a=a+1;然後b=a;
a++先返回a,再自加
++a先自加,再返回a
如a=3
b=a++;//b=3
c=++a;//c=5
擴充套件資料例:#include
intmain()
5樓:匿名使用者
那是問號表示式,簡單地舉個例子
int c = (a > b ? 1 : 0);
意思就是說,如果a大於b,那麼c就為1,否則就為0就你提出的問題而言,意思就是
如果w小於x,返回w的值,否則(如果z小於y,返回z,否則返回x)
6樓:雲南新華電腦學校
c語言中「++」是自加的意思。
1、自加,有兩種用法:假如定義了乙個變數i=1(1)若使用i++, 指代先取i的值再另i=i+1(2)若使用++i,指代先使i=i+1再取i的值
7樓:路堯家的顧小言
意思是相等,==是關係運算子,用來判斷兩個值大小是否相同,當左邊的內容與右邊的內容相同時,返回1,其餘時候返回0。
例如下列程式,輸入2個整數,判斷他們倆是否相等,如果相等,輸出a is equal to b。
8樓:蘇嘉愛娛樂
是運算符號。
位元右移(>>)運算子可以是算術(左端補最高有效位)或是邏輯(左端補 0)位移。
例如,將 11100011 右移 3 位元,算術右移後成為 11111100,邏輯右移則為 00011100。因算術位元右移較適於處理帶負號整數,所以幾乎所有的編譯器都是算術位元右移。
運算子的優先順序從高到低大致是:單目運算子、算術運算子、關係運算子、邏輯運算子、條件運算子、賦值運算子(=)和逗號運算子。
擴充套件資料
右移運算子(>>)規則:
按二進位制形式把所有的數字向右移動對應位移位數,低位移出(捨棄),高位的空位補符號位,即正數補零,負數補1。
計算過程:
11的二進位制形式為:0000 0000 0000 0000 0000 0000 0000 1011,然後把低位的最後兩個數字移出,因為該數字是正數,所以在高位補零。則得到的最終結果是0000 0000 0000 0000 0000 0000 0000 0010。
轉換為十進位制是2。
數學意義:右移一位相當於除2,右移n位相當於除以2的n次方。
9樓:雲南新華電腦學校
這是c語言中的「右移運算子」。一般情況下,他是按位操作。
特點:1.雙目運算子,就像+、-、*、/一樣,格式為(數1)>>(數2)
2.數1是被運算元,如被減數、被除數等;數2是右移位數。
3.優先順序低,結合性:從左向右運算
10樓:house黃信
有好多種形式。
1.運算子:%取餘運算子。
2.格式:%d是整型,%c是字元型,%%是輸出%,%ld是輸出長整型。
%f是輸出浮點型(小數形式),%e是輸出浮點型(指數形式)。
%lf,%le用於輸出double型,%g選%e/%f長度小的一種,且不輸出多餘的零。
%o輸出八進位制,不會輸出負的,%x輸出十六進製制。
%hd用於輸出短整型。
%s用於字串
11樓:距離離愛
這個是c語言的乙個三目運算子 ?:
意思是先判斷?前面的表示式的邏輯值是否為真,如果為真,則取冒號前面的表示式的值為整個表示式的值,如果為假,則取冒號後面的表示式的值為整個表示式的值。
12樓:天下黑人第一
例如a是5
c=++a,在使用a之前,a先加1,然後結果賦值給c(加在前,先加(a變成6),後進行其它運算,例如賦值給c。c為6,a為6
c=a++,在使用a之後,使a加1,那麼a值賦給c,a再加1(加在後,先進行其它運算,本例題是賦值給c(a為5,先賦值結c,a再自加),後加。c為5,a為6
13樓:墨陌沫默漠末
c語言裡++是自增運算子,表示自加的意思,有如下兩種用法:
假如定義了乙個變數i=1
1) 若使用i++, 指代先取i的值再另i=i+1
2)若使用++i,指代先使i=i+1再取i的值
++在前是先給變數的值自加,及自身加一,再用變化後的值去參與運算。而++在後,則是先用原來的值參與運算,遇到乙個特殊序列點(&&或||或,或?:或;)才使變數自加。
若b=3,a=b++;則a=3,b=4。若a=++b,則a=4,b=4。
c語言中其他類似的運算子:
1、( type-name ) cast-expression,強制表示式成為type-name指定的型別。
2、「 * 」 乘法運算子;「 / 」除法運算子;「 % 」 取餘運算子。
3、「 + 」加法運算子;「 - 」減法運算子。
4、<< 左移運算子;>> 右移運算子。
5、<、<=、>、>=關係運算子。
6、「 == 」等於運算子;「 != 」不等於運算子。
7、「 & 」按位與運算子
8、「 ∧ 」按位異或運算子(bitwise exclusive or operator)。
9、「 | 」按位或運算子(bitwise inclusive or operator)。
14樓:
由於沒有說明用在什麼語句中,所以得分三種情況說:
用於scanf函式的格式化控制字串時,在為對應的變數輸入十進位制數時必須在其前附加輸入###a=等字元,否則出錯。
用於printf函式的格式化控制字串時,在按十進位制輸出對應的變數值時在其前附加輸出###a=等字元。
用於其他地方,一般就是個普通的字串常量。
15樓:匿名使用者
就是相等關係的意思
通常的單個=在c語言中是運算子 代表將=右邊的值賦給=左邊的變數
而==代表判斷是否相等
16樓:匿名使用者
驚嘆號 !
是「邏輯非」運算
在 a[i] = !a[i] 中,
如果 a[i]的值為0,則 !a[i] 的值為 1;
如果 a[i]的值非0,則 !a[i] 的值為 0;
所以執行 a[i] = !a[i] 後, a[i]的值,不是0就是1,即a[i]被二值化了。
17樓:方田
回答的好請採納哦!!!
這是c語言中的「右移運算子」。一般情況下,他是按位操作。
特點:1.雙目運算子,就像+、-、*、/一樣,格式為(數1)>>(數2)
2.數1是被運算元,如被減數、被除數等;數2是右移位數。
3.優先順序低,結合性:從左向右運算
如:8>>1=?表示將被移數向右移動1位
如何操作?
1.化十進位制數為(注意了)對應的二進位制數,對應指格式對應2.通通右移,不足補0
3.化為十進位制數
舉例:short int a=8;a=a>>1;
1.a=0 000 1000
2.右移一位後:a= 0 000 100
3.補0:a=0 000 0100
4.化為十進位制數:a=4
舉例:int a=8;a=a>>1;
1.a=0 000 0000 0000 10002.右移一位後:
a= 0 000 0000 0000 1003.補0:a=0 000 0000 0000 01004.
化為十進位制數:a=4
18樓:匿名使用者
%d:輸入輸出為整形 %ld 長整型 %hd短整型%hu無符號整形 %u %lu
%s:輸入輸出為字串
%c字元
%f:輸入輸出為浮點型 %lf雙精度浮點型
19樓:匿名使用者
這個是這個是右移
符號例如a>>b 就是a右移b位
例子:a=5,a>>2
需將5,化為8位二進位制,00000101
右移的意思就是把最右邊的兩位直接抹去,然後在最左邊增加2個0移去多少位就加多少個0,然後再轉為十進位制就是移動結果
20樓:匿名使用者
「>>」在c語言中是右移的意思,
「<<」則是左移的意思。
比如:portd |= (1<<4);//把1左移4位後(值為0x10)賦給portd。
//也就是讓portd的第5個輸出i/o輸出為高電平的意思。
21樓:匿名使用者
a++ 和 ++a 這兩個都表示給i的值加1.
它們的區別在於a++是先i進行運算,然後再a加1,++a則是先給i加1,然後a參與運算。
如:a= 0;
b = i++; // 此時,先給i賦值給a,然後i加1.即b = 0, i = 1;
c= ++i; // 此時,先i加1.然後i賦值給c,即 i = 2, c = 2;
22樓:匿名使用者
這是c語言的邏輯運算子:異或
這個**講的非常詳細,我摘抄了一些,詳細的你看以看看。有很例子,好懂!
邏輯運算子把各個運算的變數(或常量)連線起來組成乙個邏輯表示式。
邏輯運算子有4個,它們分別是: !(邏輯非)、 ||(邏輯或)、&&(邏輯與) ^(異或)。在位運算裡面還有 &(位與)、|(位或)的運算。
什麼是邏輯運算--邏輯運算用來判斷一件事情是「對」的還是「錯」的,或者說是「成立」還是「不成立」,判斷的結果是二值的,即沒有「可能是」或者「可能不是」,這個「可能」的用法是乙個模糊概念,在計算機裡面進行的是二進位制運算,邏輯判斷的結果只有二個值,稱這二個值為「邏輯值」,用數的符號表示就是「1」和「0」。其中「1」表示該邏輯運算的結果是「成立」的,如果乙個邏輯表示式的結果為「0」,那麼這個邏輯表示式表達的內容「不成立「。
例 1:通常乙個教室有二個門,這二個門是併排的。要進教室從門a進可以,從門b進教室也行,用一句話來說是「要進教室去,可以從a門進『或者』從b門進」
用邏輯符號來表示這乙個過程--能否進教室用符號c表示,教室門分別為a和b。c的值為1表示可以進教室,為0 表示進不了教室。a和b的值為1時表示門是開的,為0表示門是關著的,列表如下:
說明 c a b
2個教室的門都關著,進不去教室 0 0 0
門b是開著的,可以進去 1 0 1
門a是開著的,可以進去 1 1 0
門a和b都是開著的,可以進去 1 1 1
把表中的過程寫成邏輯運算就是: c = a || b 這就是乙個邏輯表示式,它是乙個「或」運算的邏輯表示式。這個表示式要表達的是這個意思--如果要使得c為1,只要 a「或」b其中之一為 1即可以達到。
所以「||」運算稱為「或」運算。
c語言中 》和 的區別,c語言中 a a 和 a 的區別
1 指向不同 一般情況下用 只需要宣告一個結構體。格式是,結構體型別名 結構體名。然後用結構體名加 加域名就可以引用域 了。因為自動分配了結構體的記憶體。如同 int a 一樣。而用 則要宣告一個結構體的指標,還要手動開闢一個該結構體的記憶體,然後把返回的指標給宣告的結構體指標,才能用 正確引用。否...
c語言中u的意思,c語言中的 u 什麼意思啊?
天方夜譚的哆啦a夢 u是無符號10進製整數,後是格式字串,n是換行的意思。u n用於格式化輸出語句中,如printf,sprintf,vsprintf,fprintf等。例 printf u n 19 則輸出為 19即換行標識。擴充套件資料定義c語言無符號整數 整型變數的分類 基本整型 int 短整...
在C語言中是什麼意思,C語言中 c 是什麼意思?
勢如雲 這是c語言的邏輯運算子 異或 這個 講的非常詳細,我摘抄了一些,詳細的你看以看看。有很例子,好懂!http hi.baidu.com rect blog item b5be43da977c6adbb7fd4855.html 邏輯運算子把各個運算的變數 或常量 連線起來組成一個邏輯表示式。邏輯...