4sqrt408值的資料型別,為什麼

2021-03-03 20:34:15 字數 3958 閱讀 4684

1樓:匿名使用者

浮點型呀!因為sqrt(4.0)為浮點型呀!根據隱式轉換可以得到的!看書

表示式18/4*sqrt(4.0)/8值的資料型別為(

2樓:匿名使用者

double

首先計算18/4得到的int型的。

然後結果和sqrt(4.0)計算,sqrt返回double型的數。

然後/8.

由於c語言算數計算向上相容,所以結果為double型的。

但結果是1.000000是不是?

3樓:匿名使用者

c語言的話應該是double,因為c語言資料進行計算時資料型別會由低階向高階進行隱式轉化,sqrt函式得到的是double型別,比其他的int資料型別高,所以整個結果得到的是double型別

4樓:匿名使用者

小數型別預設是double,要用float得強制型別轉換。

5樓:尤里安龍捲風

就是sqrt()返回的型別

記得是返回double的吧

c語言中怎麼算表示式的資料型別例如:表示式18/4*sqrt(4.0)/8值的資料型別為什麼?謝謝

6樓:幻翼高達

需要準備的材料分別有:電腦、c語言編譯器。

1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:printf("%d", sizeof(18/4*sqrt(4.0)/8));。

3、編譯器執行test.cpp檔案,此時通過sizeof得到其佔用位元組數為8,因此是double型別的資料。

7樓:風過滄海

double

18/4 = 4 int 與 int運算仍為 intsqrt(4.0) = 2.0 double 返回值的型別是函式sqrt定義的

18/4*sqrt(4.0) 為int與double運算,為保證精度將前面的int提升為double型別,此時結果為double

double/int 與前面類似 ,要提升int為double,結果仍為double

8樓:匿名使用者

/和*等於平時計算的除以(不取餘數)和乘以 然後sqrt()等於開方

18/4*sqrt(4.0)/8=18除以4乘以2.0除以8=1.0

c語言試題,新手不懂,表示式18/4*sqrt(4.0)/8值的資料型別是? 10

9樓:金色潛鳥

最終資料型別是 double .

但是copy,一開始bai

計算 的

18/4 是整型du

除以整型 得整型 4。

計算步驟:

(1)zhi18/4 = 4

(2) sqrt(4.0) = 2.0 -- sqrt() 結果是 double 型。dao

(3) 4 = 4.0

(4) 4.0 * 2.0 = 8.0

(5) 8.0 / 8 = 1.0

結果 是 1.0

10樓:餘東祥

4.0暴露了資料的型別,float

表示式18/4*sqrt(4.0)/8值的資料型別是什麼?

11樓:匿名使用者

double

首先計算18/4得到的

baiint型的。

然後結果和dusqrt(4.0)計算,sqrt返回zhidouble型的數。dao

然後/8.

由於專c語言算數計屬算向上相容,所以結果為double型的。

但結果是1.000000是不是?

12樓:己亮禾代

答案ad肯定不

來對。自

因為int(4.0)的結果一定不是整數,所以整個運算結果不是整數。答案a不對。

一個有結果的算式,最後的資料型別一定是確定的。答案d不對答案一定是在b

和c中選擇。

我選擇b,請明白

的人給解釋吧。

c++表示式18/4*sqrt(4.0)/5值的資料型別是(). 怎麼做

13樓:匿名使用者

1. 這個牽涉到強制轉化問題,有個優先順序,低精度的和高精度的資料運算時,把低精度的轉化為高精度的資料,結果是高精度的資料2. 由於sqrt返回值是double型別,在這個表示式中double是最高精度

3. 所以結果應該是double型別

14樓:

=4*2.0/5=8.0/5=1.600000。

15樓:匿名使用者

應該是float型別

16樓:翠代秋毓瑰

18/4*sqrt(4.0)/5

按優先順序分為:

(1)18/4

整數除以整數

用「整除」得4

--int

型(2)sqrt(4.0)

得2.0

--double

型(3)4*

2.0得

8.0--

double

型(4)

8.0/5得

1.6--

double

型資料型別是

double,

數值是1.6

為什麼18/4*sqrt(4.0)/8的資料型別不確定??

17樓:匿名使用者

沒有資料bai型別不確定的

程式語言資料du型別永zhi遠是確定的。

不存在絕對dao的隨機。

比如這專個

依次從左到屬右計算。

sqrt返回值為double

於是這個就是

int/int*double/int

=int*double/int

=double/int

=double

表示式為double型別。

18/4*sqrt(4.0)/8

=4*2.0/8

=8.0/8

=1.0

18樓:物理公司的

double

首先計算18/4得到的int型的。

然後結果和sqrt(4.0)計算,sqrt返回double型的數。

然後/8.

由於c語言算數計算向上相容,所以結果為double型的。

表示式18/4*sqrt(4.0)/8值的資料型別是什麼,求回答,給好評,這是c語言

19樓:匿名使用者

為double型別,因為sqrt()原型為double sqrt(double_x),所以上述表示式返回值為double型別

20樓:匿名使用者

根據http://****cplusplus.

***/reference/cmath/sqrt/的來介紹自可知,在不同版本的c語言bai標準中,sqrt的返回du值型別是不同的,例如zhi在c99版,其原型有

1)daodouble sqrt (double x);

2)float sqrtf (float x);

3)long double sqrtl (long double x);

根據型別轉換的規則可知,這個版本的結果應該是float型別的

21樓:匿名使用者

sqrt(4.0)/8是一個float型,所以整個表示式是個float型。

22樓:香夢沉酣

資料型別是float啊!18/4是整形,主要是sqrt(4.0)是一個小數,所以整個結果都為小數了。

表示式184sqrt408值的資料型別為

答案a d肯定不對。因為來int 4.0 的結自 果一定不是整數,所以整個運算結果 不是整數。答案a不對。一個有結果的算式,最後的資料型別一定是確定的。答案d不對答案一定是在b 和 c中選擇。我選擇b,請明白 的人給解釋吧。要看sqrt函式返回值型別 c語言中怎麼算表示式的資料型別例如 表示式18 ...

值傳遞和引用傳遞的區別,資料型別,值傳遞和引用傳遞有什麼區別,String是什麼傳遞

值傳遞是隻把物件的值傳入函式,函式中可以使用這個值,但卻無法更改該物件的值。我這裡以c語言為例 如 void a int v void main 最後結果為010 這裡b的值在a函式中被呼叫,但是b本身沒變。其實值傳遞相當於在函式中新建了一個物件然後對它賦值再使用。在上例中相當於 void a in...

4 2 75這個的值算出來是什麼資料型別,因為這個未定義啊,順便說下最後值等於多少

1 4 2.75等於2.75是double型,預設2.75的寫法是double型資料 在c c 中,1 4 2.75結果是double型,值為2.75。因為計 算是從左至右的,先計算1 4,其值是0 整型取整除 然後算0 2.75,將0提升為double型與2.75相加得上述結果。如果給出的答案不是...