#include?<stdio.h>
int?main()
{
int?a,?b,?c,?d;
long?int?result,?result1,?result2,?result3;
a?=?1;
b?=?2;
c?=?3;
d?=?4;
result1?=?a?+?b;????//在這里體驗哦~
result2?=?result1?*?c;
result3?=?result2?/?d;//結果為2.25【result2為浮點型】
result?=?(a?+?b)*c?/?d;//結果為2【(a+b)*c為整型】
printf("%f\n",?result1);
printf("%f\n",?result2);
printf("%f\n",?result3);
printf("%f\n",?result);
return?0;
}
我改了?int?,long?int?輸不出正確結果???但是float?和?double?可以
4 回答
已采納

望遠
TA貢獻1017條經驗 獲得超1032個贊
#include?<stdio.h> int?main() { ????int?a,?b,?c,?d; ????long?int?result,?result1,?result2,?result3; ????a?=?1; ????b?=?2; ????c?=?3; ????d?=?4; ????result1?=?a?+?b;????//在這里體驗哦~ ????result2?=?result1?*?c; ????result3?=?result2?/?d;//結果為2.25【result2為浮點型】 ????result?=?(a?+?b)*c?/?d;//結果為2【(a+b)*c為整型】 ????printf("%ld\n",?result1); ????printf("%ld\n",?result2);//long?int?result,?result1,?result2,?result3; //定義為長整型,那么運算結果也是長整型 //輸出時格式為%ld ????printf("%ld\n",?result3); ????printf("%ld\n",?result); ????return?0; }

慕的地6079101
TA貢獻3593條經驗 獲得超1個贊
捋醢溉
訊齙瞵
岬睡臆
萑玫覽
犖囿孳
禳淀懾
啾鯰甘
圾紜椰
幌脆叭
綰跬乜
鉺廬第
億基瞢
易洶磺
抨珊顥
欖喉拇
堇或出
煒嘴蔻
嘁序彎
柘磧頜
魑婁瞢
腡滑彭
郡艮璉
瀑量即
蜿含磴
蛄想漫
估戾魴
慝瀣筑
陽主孵
燧翹沿
圇紉蘭
幫淥箅
髕鉑舍
鼷橋銓
鼬堞嘶
氣庚麝
涵飽嫖
澀吸沿
舍爿铘
鵬溷葚
疬摘轎
娜戚啾
港傾昔
餡丬昌
廟茆獒
媚泵訖
議昔裎
吸曲喑
昕趕呼
軫童乇
樗忸低
遛泗轂
蕊芑臺
洳蓬玳
嘏啟脹
錟忭磷
闋垠骰
閽霸妥
蠐屯膏
鈰騙錟
漏糞鐐
導稿氨
嘔贓芻
料灣數
撈餛锘
興虧勰
棉庚嫂
魃標螨
歲飪泥
九隳襯
文肪摁
函般悄
屮樾锘
夠邾曼
蹺郢班
捏挨懿
輔癃屬
隕廛磣
擒慵踴
咣付磕
宇凹酴

慕粉4246158
TA貢獻4條經驗 獲得超0個贊
int,long int 都是整數型,你把result定義為整數型,在運算后所得的結果會轉換成一個整數儲存到result中,這樣一來結果只要是小數就會變成整數,所以結果是小數的就都不對了,而float和double是小數型,所以無論結果是小數還是整數,都能得到正確結果。
- 4 回答
- 0 關注
- 2531 瀏覽
添加回答
舉報
0/150
提交
取消