1樓:恆戰天兵
「/」代表整除的意思,5/2=2,不是2.5,double意思是強制轉為雙精度型,通常是6位小數。所以(double)(5/2)=(double)2=2.000000 。
但是(double) 5/2=2.500000,這時的算式是先算(double)5 =5.000000,然後再算5.
000000除以2得到2.500000。請注意上述兩式的區別。
(int)就是強制轉為整型的意思,即把小數部分都去掉。
最後結果為4。
2樓:嬌嬌的藍水晶
5/2=2 ;
2強制轉換成double之後變成了2.0;
2.0+2.5=4.5;
4.5強制轉換成int之後變成4
3樓:畫雲舞語
注意c語言的資料是帶型別的
從括號最裡面開始
int 5/int 2 = int 2 (/對於整形是整除)(double) int 2 = double 2double 2 + double 2.5 = double 4.5(int)double 4.
5 = int 4 (double轉化成int向下取整)
C語言問題C語言問題,C語言問題C語言問題
include include int main b k p b k 0 puts b return 0 c語言問題c語言問題 include int main int h,m scanf d d h,m printf s num h if m 0 else printf o clock print...
C語言問題,C語言問題C語言問題
這題考的是自動型別轉換,由編譯系統自動完成,轉換是 向上 靠的 舉個例子 include stdio.h void main 你編譯一下就會有警告 conversion from double to float possible loss of data 也就是說系統預設轉化了a,b的資料型別為do...
c語言問題,C語言問題
1 c2 a 3 d4 a 5 d6 b 7 a8 a9 d c語言問題 include define n 30 typedef struct student student r n int main void num 1 for i 0 ir max score max j if max i if...