1樓:沈偉棟
(int)a+b/b=6.0。
(int)a = 5;對於b/b,因為b是double型別,所以它們的商也是一個double型別,為2.5/2.5 = 1.0(注意要在小數位上加一個0);
最後計算5 + 1.0 = 6.0,因為5是int型別,而1.
0是double型別,它們倆相加時,5將自動轉換成double型別資料5.0,從而實際參加運算的是:5.
0 + 1.0 = 6.0。
在c語言中,將一個double型別的資料強轉成int型別時,將會丟棄該資料的小數部分,而只保留它的整數部分。
強制型別轉換是通過型別轉換運算來實現的。其一般形式為:(型別說明符) (表示式) 其功能是把表示式的運算結果強制轉換成型別說明符所表示的型別。
擴充套件資料
數字資料型別有integer(整型)、long(長整型)、single(單精度浮點型)、double(雙精度浮點型)和 currency(貨幣型)。
型別說明符和表示式都必須加括號(單個變數可以不加括號),如把(int)(x+y)寫成(int)x+y則成了把x轉換成int型之後再與y相加了。
無論是強制轉換或是自動轉換,都只是為了本次運算的需要而對變數的資料長度進行的臨時性轉換,而不改變資料說明時對該變數定義的型別。
2樓:匿名使用者
(int)a+b/b=6,應為(int)a就是將a取整,a取整後就是5(這裡不能用四捨五入取整,捨棄小數部分取整,然後b/b就是2.5/2.5等於1,故(int)a+b/b=6。
下圖是用python計算的結果。
3樓:匿名使用者
我這麼跟你解釋:
這個涉及到c語言中強制型別轉換的知識。
在c語言中,將一個double型別的資料強轉成int型別時,將會丟棄該資料的小數部分,而只保留它的整數部分,因此(int)a = 5;對於b/b,因為b是double型別,所以它們的商也是一個double型別,為2.5/2.5 = 1.
0(注意要在小數位上加一個0);最後計算5 + 1.0 = 6.0,因為5是int型別,而1.
0是double型別,它們倆相加時,5將自動轉換成double型別資料5.0,從而實際參加運算的是:5.
0 + 1.0 = 6.0.
最後告訴你一個轉換的法則:
double ←── float 高
↑long
↑unsigned
↑int ←── char,short 低
4樓:蟬鳴幽靜
答案是d,因為(int)a 是強制將a轉換為int型,可以得到(int)a=5; b是double型,b/b=1.000000;由於是int與double型相加,會將int型轉換為double型再相加,最終得到的答案是6.000000。
5樓:匿名使用者
(int)a+b/b
=5+1.0
=6.0 -------->結果是double型的。
6樓:匿名使用者
答案是d b/b=1.0 (int)a=5
(int)a+b/b=5+1.0=6.0
(int)只是作用於a,與b無關
7樓:匿名使用者
應該為6.000000,因為它是double型的。
8樓:匿名使用者
5+2.5/2.5=6
9樓:匿名使用者
因為:(int)a=5(強制型別轉換,抹去小數點後面的數),b/b=2.5/2.
5=1.0(double型)5+1.0=6(隱式型別轉換,講double 隱式轉換為 int型的1)
所以:(int)a+b/b=6
10樓:超越說
(int)a+b/b 的值是6 ,
優先順序:(int)強制型別轉換 > / 除號 > + 加號,先算(int)a,c語言不四捨五入,直接抹去小數部分,得到整數值5,然後算b/b,得值1,這個小學生都知道,
加起來就是6了。
11樓:匿名使用者
b/b=1,int a=5,5+1=6
設a和b均為double型變數,且a=5.5,b=2.5,則表示式(int)a+b/b的值是多少?
12樓:匿名使用者
答案應該是double型別。
(int)a+b/b等價於((int)a)+(b/b),這個根據運算的優先順序別可以得到。
(int)這個是強制型別轉換,強制轉換之後((int)a)就是整型。一般這個double轉化為int型別時多數平臺下是按照向零取整的方法,於是這一步強制型別轉化後,得到5.
b/b,除號兩邊都是double型別,得到的結果也是double型別。也就是1.000000;
第一步得到的5是int型別,int型別和double型別進行相加運算時,int型別會自動轉化為double型別再進行加法運算。
綜上所述有,整個表示式的結果是6.000000.
注意:在強制型別轉化時,a的型別還是double型別,保持不變。(int)這個強制轉化會產生一個新的中間變數,利用這個int型別的中間變數去進行接下來的運算。
以下是程式:
#include "stdio.h"
#include "stdlib.h"
int main()
程式結果是:
...c
86.000000
...a8
13樓:匿名使用者
是整形的,因為(int)a+b/b中/的優先順序比+高所以所以是先運算b/b結果是1,然後在加上(int)a最後結果是6
14樓:匿名使用者
先算b/b=1,a+b=6.5,結果應該是doubie…型別轉換…
15樓:匿名使用者
結果是6.0
是double型
16樓:穆璟褒悅可
首先考慮的是運算子的優先順序,「(int)」的括號屬於型別轉換運算子,它的優先順序高於「/」和「+」所以先運算「(int)a」結果是變數a強制轉換為int型,也就是由5.5變成5,然後「/」的優先順序高於「+」所以先算「b/b」得到一個double型的1.0000……值,剩下就是運算「+」,「+」左邊的資料型別為int型,右邊的資料型別為double型(不同型別的資料進行運算是要轉換成同一型別,然後再開始運算,起規則為:
char,short
->int->
unsigned
->long
->double
<-char
箭頭指向的方向是必定的轉換),所以是將「+」左邊的int型轉換為double型進行運算,結果為double型
自變數為分類變數,調節變數和結果變數均為連續型變數,如何用spss進行分析呢
無需處理可以直接進行迴歸分析 分層迴歸分析 1 做y對x和m的迴歸,得測定係數r12。2 做y對x m和xm的迴歸得r22,若r22顯著高於r12,則調節效應顯著。自變數為定量和分類變數,因變數為連續性定量變數,如何用spss做迴歸 如果自變數裡面的分類變數是隻有兩個分類的,那你就把它跟其他定量專自...
假設所有變數均為整型,則表示式 a 2,b 5,b
c裡面用逗來號表示每個源來運算,上式是運算完bai了再引用b的值,當du然是2 6了。zhi 在c語言中,多個表示式dao 可以用逗號分開,其中用逗號分開的表示式的值分別結算,但整個表示式的值是最後一個表示式的值。整型值可以用十進位制,十六進位制或八進位制符號指定,前面可以加上可選的符號 或者 如果...
b型血和o型血在愛情上配嗎,B型血和O型血在愛情上配嗎?
血型跟愛情好像沒有必然聯絡,那麼配不配就看你們彼此的性格了 僅靠這些什麼血型,星座是沒有根據的,就拿星座來說吧,根據科學研究表明在白羊座和金牛座之間還有一個星座,也就是說總共有13個星座,而不是12個,因為星座的週期並不是固定的30天,所以血型配不配並不重要,關鍵的是有沒有感覺,也就是來不來電,祝你...