1樓:匿名使用者
會繼續計算的。
從概率來說
除數為0 屬於小概率事件
為這個 增加一步判斷,並不會提高效率
反而會在大多數時候降低效率
所以 不會有這樣的判斷的。
在c語言的環境下,a=5;b=a++;c=--a-b++;d=(a++)-(++b)+c--;結果是多少,怎麼算?
2樓:匿名使用者
首先進行第一步「a=5」:將5賦給a,這樣實現了a=5
然後進行第二步「b=a++」,由於++為字尾,所以先將a值賦給b,結果b=5,然後進行a++運算,a=6
然後進行第三步「c=--a-b++」,首先--為字首,所以先運算--a,結果a=5,由於++為字尾,所以接下來先運算c=a-b,結果c=5-5.為0,最後進行b++運算,結果b=6
最後一步「d=(a++)-(++b)+c--」,先運算括號裡面的「a++」和「++b」,結果a=6,b=7,由於--為字尾,所以先運算d=a-b+c,也就是d=6-7+1=0,最後運算c--。結果c=-1
以上是運算結果,考的主要是運算的優先順序,是這樣的,看見括號裡面的,先運算括號裡面的,沒有括號的,你要看++或是--,是字首,還是字尾,如果是字首的話,先運算++或是--運算,如果是字尾的話,你就先運算整個式子,運算完了整個式子,再運算++或是--運算,至於具體的例子,我給你的計算過程,你可以自己結合著體會一下,有什麼不明白的,就追問我。
3樓:匿名使用者
a=5;
b=a++,這部之後b=5,a=6
c=--a-b++這步之後c=0,a=5,b=6d=(a++)-(++b)+c--這步之後d=0,a=6,b=7,c=-1
4樓:猶望亭菅羅
1.switch結構分支沒加break;跳出語句,開始執行後,程式由x=1調到case1分支
a++(a由0自己加為1),由於沒有break語句,程式繼續執行到case2分支
a++b++(a由1自加變2,b由0自加為1),之後程式printf輸出
a=2,b=1
2.新增break後,結果是a=1,b=0#include
"stdio.h"
main()
printf("a=%d,b=%d\n",a,b);}
c語言上的問題 !(a+b)+c-1&&b+c/2的值 a=3,b=4,c=5
5樓:聽不清啊
整個表示式的值為真(即 1)
!(a+b)=!7=0
!(a+b)+c-1=0+5-1=4
b+c/2=4+2=6
原式=4&&6=1 //兩個非0的值,即兩個true,相與的值,仍為true,即1
6樓:匿名使用者
根據從左到右計算順序,結合運算子優先順序,根據定義
a = 3, b = 4, c = 5,假定 a,b,c 為 int。真值為1,假值為0。
計算步驟如下:
1、計算 a + b,結果為 a + b = 7
2、計算 !( a + b) 結果為 0,也可以認為是false(假)。
3、計算 c/2,假定c為int時,結果為 2(取整),為float或者double時為2.5,但不影響最終結果,因為都是真值(非零值)。
4、計算 0 + c,結果為 5
5、計算 5 -1,結果為 4。
6、計算 b + 2 或者 b + 2.5,結果為 6 或者 6.5。
7、計算 4 && 6 後者 4 && 6.5,因為兩邊都為非零值,所以結果為 1,或者true。
這裡主要是一個運算子優先順序的問題,在本表達多中。
小括號的優先順序最高,所以最先計算括號內的值。
其次是邏輯非,然後是除法,然後是 加減法,最終是 邏輯與。
7樓:匿名使用者
這個是邏輯運算只討論真假,與數值沒有多大關係只要弄懂運算級別高低就可以最後結果為一,不懂可以mm我
8樓:匿名使用者
()優先順序最高先算 !(a+b) =!7=0算術運算子大於&& 所以先算c-1=4
* /大於加減先算c/2=2然後加b等於6最後相與 4&&6 真與真還是真 最後等於1
9樓:麒麟也涅槃
a=3,b=4,c=5
a+b=7
!7=0
c-1=4 為真
b+c/2 不為0 所以也是真
真&&真 值為真 即=1
10樓:k寂寞的小炮
結果等於1
!(a+b) = 0;
0+c-1 = 4;
b+c/2 = 6;
6&&4 = 1;
11樓:匿名使用者
整個表示式為1啊···
12樓:有郊範圍
!(a+b)+c-1&&b+c/2=1
13樓:皚子萋萋
!(a+b)=0;1&&b=1;所以0+5-1+5/2=6
請問c語言裡的這個怎麼算? a=3,b=4 a+b%(a+b)/a+a*b-b
14樓:公式小阿伯
按優bai先級,出現的運算子裡,du
括號最高,zhi然後
是dao*/%,再之後是+-
3 + 4%(3+4)/3 + 3*4 - 4(括號運版算以後權) 3 + 4%7/3 + 3*4 - 4(*/%級運算以後) 3 + 1 + 12 - 4(+-運算以後) 12
這裡特殊注意4%7得到(int型的)4,然後(int)4/(int)3是整數除法應該得到1。
經過檢驗沒有問題。
51微控制器資料搬運c語言程式,51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫???
aa i bb i 51微控制器訪問片內資料儲存器某單元的內容用c語言怎麼寫?方法1 char data p 定義一個指向片內ram地址的指標 p 0x30 片內ram地址為0x30 p 0x12 向0x30內寫入立即數0x12 方法2 include char x x dbyte 0x30 將片內...
c語言與微控制器
正如bai樓上的話,微控制器要du學模電數電,它還要學計zhi算機組成原理的,單dao片版機其實是大學的一個專業,要學權四年,要學得精並且能找到工作的話,恐怕你還是得看一下大學的課程包括什麼了。c語言的話理解容易但說學熟的話恐怕也不是一年半載的事情,你對電腦不熟這個是個很大的麻煩,我看過很多對電腦不...
微控制器C語言問題,微控制器C語言的一個問題 static bit a 什麼意思
c語言也不難,如果閣下肯花20小時,把c語言最基本的東西弄懂,肯定沒有什麼問題。我覺得微控制器開發中c語言用到最多的幾個部分基礎知識 比如資料型別,運算子,格式轉換 順序控制 if語句 switch語句 迴圈控制 while語句 for語句 陣列指標 其他一些c語言中的東西微控制器上用不了,也就大概...