C語言計算問題,c語言這題怎麼計算?

2023-06-07 02:15:12 字數 5763 閱讀 3567

1樓:湯菊孝嬋

答案是22.。

t=(+i)+(i)+(i)=6+8+8=22。。

為什麼呢。這是v

c++編譯器。

的特性。就是最後兩個數的優先順序是相同的。。這樣說起來有點抽象。舉幾個例子您自己去琢磨吧。。

這是因為31=6+7+9+9。。

這是因為41=6+7+8+10+10

這是因為52=6+7+8+9+11+11。。

我只能這樣解釋了。。什麼看不懂的再問我吧。。嘿嘿。

2樓:盤季問浩

c語言裡以0開頭的數表示是八進位制數,那麼,八進位制轉換成二進位制的方法是,一個八進位制位佔3個二進位制位。

如果用二進位制表示那麼。

x=001011

y=010101

z=000001

z=111110

的優先順序高於^,,優先順序高於|

y&z=000001,.x|y&z=001011,即十進位制的11,所以第一個用%d輸出的是11

y&~z=010100,.x|y&~z=011111,十進位制的31y&~z=010111,x^y&~z=011111,十進位制的31

3樓:實娜夫白

首先x,y,z都是八進位制的數,這裡面的運算都是用二進位制的所以化為二進位制是x=00001011,y=0010101,z

00000001(用八位表示,不足八位的用0補足)(1)先進行與運算再進行或運算即(x|(y&z))11(十進位制)

2)先進行取反再進行與運算,最後或運算即(x|(y&(~z))31(十進位制)

3)先進行取反再進行與運算,最後進行異或運算即(x^(y&(~z))

00001011^(00010101&(~00000001))=00011111=31(十進位制)

4樓:燕澹厲採

求反運算。求反運算子~為單目運算子,具有右結合性。

其功能是對參與運算的數的各二進位按位求反。例如~9的運算為:

0000000000001001)結果為:1111111111110110

按位或運算。

按位或運算子「|」是雙目運算子。其功能是參與運算的兩數各對應的二進位相或。只要對應的二個二進位有一個為1時,結果位就為1。參與運算的兩個數均以補碼出現。

例如:9|5可寫算式如下:

十進位制為13)可見9|5=13

按位與運算。

按位與運算子"&"是雙目運算子。其功能是參與運算的兩數各對應的二進位相與。只有對應的兩個二進位均為1時,結果位才為1,否則為0。參與運算的數以補碼方式出現。

例如:9&5可寫算式如下:

9的二進位制補碼)&00000101

5的二進位制補碼) 00000001

1的二進位制補碼)可見9&5=1。

c語言這題怎麼計算?

5樓:四季花城廣場

**執行結果:

int left = 0;//左下標變數。

int right = 0;//右下標變數。

int arr[10] =陣列。

int lsarr[10] =臨時陣列。

right = sizeof(arr) /4 - 1;//獲取陣列位數。

while (right !=0)//進行迴圈。

lsarr[left] =arr[right];/將arr右下標賦值給lsarr左下標。

right--;

left++;

for (int i = 0; i < 10; i++)列印出來。

printf("%d ",lsarr[i]);

return 0;

c語言問題計算

6樓:仲孫金生羊婷

因為sum=a+b;的時候a,b都沒有賦初值。應該先對a

0,b0再參加運算。

7樓:祈蕾杞培

開始定義變數後沒有賦值操作,直接進行了運算。

所以出現這種情況,正確的是。

voidmain()

8樓:網友

順序問題。編譯器是按照循序執行語句。

程式當中你先定義了a,b

並沒有初始化。編譯器給分配了儲存空間但其中的內容並不確定。

所以當執行到sum=a+b的時候就把a,b當中的隨機的值取了出來。

然後你又定義了a,b的值,這是並不影響sum的值。所以可以這樣改。

voidmain()

9樓:魯實丘辛

選b*(p+8)

過程見下:*p=a;//初始時陣列a的首元素的地址賦給了指標變數p說明:在c語言裡陣列名代表陣列首元素,這句話你必須得記住。

推論:*(p+8)

括號裡的優先順序比*號要高,所以先執行。

p+8(p+8與a[8]等價)p+8是地址。

通過上述可知:*(p+8)//其中「

表示「指向」,*p+8)表示「指標變數p所指向的變數」即a[8]元素的值9

這個用c語言怎麼算?

10樓:戎曼凡申從

那個~~~嘿嘿,如果你只想知道第一題的話我到可以解決。

問題是:怎麼算出a和b的年齡?

答:設a的年齡是x,b的年齡是y.

由已知可得方程:

x*125+6)*8+y-365=40722解得:y=-1000x+40708

是一元一次函式,在座標上是一條直線,只要是在直線上的整數解的話,就都是這題的正確解。

又要滿足0<=x<=150,0<=y<=150(這個是從生活經驗來的)

通過觀察法,發現只有當x=41時,y才能取得整數。

所以答案為:x=41,y=39.

第二題就是他們寫的那樣啦~~嘿嘿~~~

11樓:晏良哲鄔蕾

窮舉法的意思就是列出所有可能的數值,然後判斷那對符合。

對於你的問題,演算法的思想就是:試(1,2),(1,3),(1,4),。1,99),(2,2),(2,3),。

。。99,2),(99,3),。99,99)看那組資料滿足你的條件就是計算結果了。

12樓:泣國興零閔

首先說這個題有解。

a=41b=39

對於窮舉法是可以的。

但是一般資料很大時。

急速太慢。關於此題。

可以先用數學方法進行化簡。

設a,b為兩個年齡。

a*125+6)*8+b-365=407221000a+b=41039

a=41039/1000;b=41039%1000;

因此我們可以得出這樣結論。

對於任意的計算出來的值p

a=(p+365-48)/1000;b=(p+365-48)%1000;

這樣就可以對多組年齡。

進行計算。複雜度可以忽略不計了。

c語言計算問題問題

13樓:匿名使用者

a=1,b=0,c=3

首先看運算子的級別:()關係運算子》賦值運算子整個是一個關係表示式:

從左往右:ik為假 值為0,賦給b,所以b=0

因為是與運算,有一個為假就整體為假,後面就不做,故c=3

14樓:匿名使用者

ik是假的,所以j>k=0;所以b=0,ijk都!=0,所以c=1;

c語言運算的問題

15樓:一個愛學習的

// 先執行右邊括號裡面的 從左向右執行,//第一步 執行a = 3 ==a = 3// 第二步 執行 b = a-- 因為--在後,所以a先賦值給b 即b=3 a在--,即a = 2

第三步 x的值,在此執行過程中,x取括號裡面最後一次執行的值,即取b的值。

16樓:匿名使用者

b=a--,先將a的值賦給b,a再自減1

a=3,b=a=3,然後a自減1,a=2

x=(a=3,b=a--)右邊為逗號運算子,從左至右執行各語句,並將最後一個語句的計算結果賦給x,對於本題,也就是將b的值賦給。

因此,執行語句x=(a=3,b=a--)後,x的值是3,a的值是2,b的值是3。

17樓:烏綸奇初珍

0/3=0

對於除法運算子的運算屬於算術運算的範疇。

進行算術運算的資料型別一般為:整型(int),長整型(long),短整型(short),字元型(char),實型《實型又分單精度實型(float)雙精度實型(double)>

1.當運算雙方是同型別的話,那麼結果也是一樣的型別,比如如果都為整型(int),那麼結果也是整型。

例:2/4=0;7/2=3;-5/3=-1

採取向0取整的原則。如果雙方是float型,那麼結果也是float型(小數部位是7個有效數字)

2.當運算雙方不是同型別的話,那麼機器就會自動地進行型別轉換。

double<--float

longunsigned

int<--char,short

橫向向左的箭頭是必定轉換的,如果資料型別是char的話必須先轉換為int型,對於縱向的越往上級別越高,也就是兩個資料間低等級的型別要先轉化到那個高等級的資料型別,然後再進行計算,當然結果也就是那個高等級資料型別的形式。

3.還有種強制轉化計算的方式,就是為了得到自己想要的資料型別,而將一個不符合標準的資料型別進行強制轉換,比如float型的資料不能進行求餘運算,所以必須要將他強制轉化為int型方可運算,否則出錯。例:

floata=;(int)a%2=1;

c語言的一個計算題

18樓:匿名使用者

這個問題是一個運算子優先順序的問題!題目中的優先順序()最高,依次是()、

所以上一題首先求解的是():

第一個()求解:z>y為真,所以結果是1,用它的結果和x比較,1<2,所以括號內的結果是0;

第二個()求解:y!=z為真,結果為1;

第三個()求解:x+y=2+4=6;

第四個()求解:y-z=-2;

所以得到的結果是!0+1||6&&-2;

完畢,如有不對,請高手指教!謝謝!

19樓:匿名使用者

此題的運算順序是:

z>y>x)+(y!=z) )x+y)&&y-z) )z>y>x)=1,(y!=z)=1,所以!(z>y>x)+(y!=z)=2

x+y=8,y-z=2,所以(x+y)&&y-z)=1所以( !z>y>x)+(y!=z) )x+y)&&y-z) )1

20樓:若冰炎

建議你去看下c語言中運算子的優先順序。

c語言計算題

21樓:佔亞運

首先執行a*a;在執行a-=144;算出a=-132.再執行a+=-132

c語言 基本計算問題?

22樓:網海1書生

x=5>1+2&&2||2*4<4-!0

1 (|後面的不需要計算)

c語言程式設計題計算,C語言程式設計題 計算Cmn

cmn是一個數學上的公式,其中m是其的下角標,n是其的上角標。計算方法是 m m 1 m 2 共有n項的乘積,然後除以n的階乘 用c語言做這個計算的程式設計,步驟如下 1 首先需要讀取m和n的值,然後在讀取的同時進行判斷是否滿足m 0 n 0 m n的條件,如果不滿足要求重新輸入。2 然後可以構建兩...

c語言巨集定義計算問題,C語言巨集定義計算問題

i f 4 4 f 2 2 4 4 4 4 2 2 2 2 28如果 define f x x x i f 4 4 f 2 2 4 4 4 4 2 2 2 2 64 define f x x x i f 4 4 f 2 2 這樣i f 4 4 f 2 2 4 4 4 4 2 2 2 2 24 8 3...

c語言問題,C語言問題

struct student拼寫成struct studnt了。拼寫錯誤 struct studnt沒有定義,所以無法執行sizeof。include typedef struct student int main c語言問題?嗯你的理解是對的,break就是用來跳出的switch,如果沒有brea...