c語言中int後是帶有小數的數字那麼它的值是

2021-03-07 03:59:30 字數 3428 閱讀 8624

1樓:我是果瘋

int(2.5+4.7)=7

在c語言中,取int()系統會強制將其他資料型別轉換為int型,不會四捨五入直接捨去小數點後面的數字。

例如:int b=10;//宣告變數為int型並初始化賦值

printf("%f",b*5.0);//列印為浮點型的數字,強制將10*5.0結果為50.000000

float a=2.1314;//宣告變數為實數型並初始化賦值

int c=(int) a;//宣告變數c為int型並將a強制轉換為int型所得值賦給c,即c=2

擴充套件資料:

資料型別關鍵字:

short:修飾int,短整型資料,可省略被修飾的int。(k&r時期引入)

long:修飾int,長整型資料,可省略被修飾的int。(k&r時期引入)

long long:修飾int,超長整型資料,可省略被修飾的int。(c99標準新增)

signed:修飾整型資料,有符號資料型別。(c89標準新增)

unsigned:修飾整型資料,無符號資料型別。(k&r時期引入)

restrict:用於限定和約束指標,並表明指標是訪問乙個資料物件的唯一且初始的方式。(c99標準新增)

2樓:聽不清啊

系統會自動截尾取整的。

例如:int x=12.945;

printf("%d\n",x);

會輸出12。

3樓:匿名使用者

例子:int(2.5+4.

7)的值為:7,先求和,再將浮點型7.2強制轉化為整形7。

若不帶括號,如:(int)2.3+5.

5,則先將2.3強制轉化為2,再和5.5相加,結果為7.

5(2和5.5相加時,2先隱式轉化為浮點型再跟5.5相加)。

c語言中int 能定義小數嗎?下面這個程式怎麼回事?

4樓:卒子的瘋狂

int 是整數型別,只會取整數

你那 x=567.12; y=123.4;也只等與567,y=123;

所以sum的值為567+123

5樓:覺悟壯志

int 不能定義小數

定義小數用float(單精度)

或者double(雙精度)

main()

6樓:儲楊

不能定義小數,但編譯時不會報錯,它會直接把後面的小數去掉再參加運算!

7樓:

定義小數沒有,他還是整數。要是小數選用float或者double型。首先,x,y,是整形,所以賦值時,你賦小數,他本生還是整數,即x=567,y=123,但sum為單精度形,有6位小數,後面的輸出形式%f,是採用單精度輸出,所以輸出有6位小數。

8樓:匿名使用者

可以的,但是有warning,也沒有意義,程式會強制轉換成float型,由小轉大,,,你這個寫的printf裡面的「」是中文的,不是英文""

9樓:匿名使用者

567.12會被強制型別轉換吧.

10樓:匿名使用者

這個。。。

按道理不行的

11樓:匿名使用者

可以,但是會自動修正。

c語言中int,float,double,char四種資料型別所能表示的資料範圍是多少?

12樓:小黑裙

資料範圍:

1、char        1位元組

2、short       2位元組

3、int         4位元組

4、long        4位元組

5、long long   8位元組

6、float       4位元組

7、double      5位元組

8、long double 12位元組

13樓:匿名使用者

int 有符號整數,根據系統(編譯器)不同,有不同的範圍,16bits系統(dos系統):-(2^15)到(2^15-1),32bits系統:-(2^31)到(2^31-1),64bits:

-(2^63)到(2^63-1)。如果是無符號整數unsigned int,那麼16bits系統(dos系統):0到(2^16-1),32bits:

0到(2^32-1),64bits:0到(2^64-1)

float, double是浮點型和雙精度型,表示小數,區別是精度不同。

float為單精度浮點型,能準確到小數點後六位,3.4 x 10^(-38)~ 3.4 x 10^(+38)

double為雙精度浮點型,能準確到小數點後十二位,1.7 x 10^(-308)~ 1.7 x 10^(+308)

char為單位元組字元型,-(2^7)到2^7-1即-128到127。如果是無符號字元unsigned char,那麼是0到2^8-1即0到255

希望採納

c語言裡面,定義int型的變數後面打個小括號(不是中括號!),裡面寫個數字,是什麼意思?比如說:i

14樓:

int x(5);就是int x=5;的意思。其實最早的c編譯器並不支援這種寫法,後來c++相容c的編譯器就都支援這種寫法了。

你拒絕吧,我實在看不出int x(5);這種寫法還有別的什麼意思,「不完整」我也無能為力了。如果認證員還知道int x(5);有別的意思,告訴我不就讓我進步了嗎?

15樓:匿名使用者

這個意思是宣告i並對i進行初始化為1

16樓:紫夜丶風流

int 也是類 x是物件,這是物件的初始化

17樓:滄海雄風

void main()

1press any key to continue

等同於=1

c語言中,若int a=5,b=3,c=1;則表示式「f=a>b>c」,運算後的結果f的值是多少

18樓:瞿冷農英博

答案應該是0;

f=a>b>c

這個式子從左向右計算,a>b

(5>3)

=1,1>c(1)

=0,所以f=0

19樓:柴鋒沙荃

f值是5

表示式「f=a>b>c」是比較表示式

先是a與b比較如果a>b則取a得值,如果a<b則取b得值,然後再與c比較取大的值,再賦值給f

前提是必須定義f也為整數

樓上的判定用函式if()表示

c語言中小數怎麼表示c語言中乙個數的小數如何表示

兩種表示方式 1 定點表示 必須有小數點。例如 0.123,123,123.0。2 指數表示 e或e之前必須有數字,指數必須為整數。例如 12.3e3 123e2,1.23e4。注意 浮點數常量預設為double型別,如果浮點數常量表示float型別,在末尾新增小寫的f或者大寫的f,表示此常量為單精...

c語言中什麼是數的有效數字,C語言中什麼是乙個數的有效數字?

樓上誤解 樓主問的是c語言 不是數學 這要看你的機器型別和變數型別了 如果定義的是int型 那1234是有 版效數字 權 後面小數都是無效的 如果定義的是float型 那在限定位元組長度內都是有效數字不同機器型別也不一樣 int型有2個位元組 也有4個位元組的 在c語言中,bai乙個數的有效數du字...

c語言中int型數8在記憶體中的儲存形式為《a》

負數是以補碼存的,求補碼的方法是符號位不變,其他位取反加一啊啊專啊1000 0000 0000 1000 取反是111 1111 1111 0111加一是11111 1111 1111 1000不是剛屬好麼 8在記憶體bai中的儲存形式為 1111111111111000這是du8的按位zhi取反 ...