c语言的double和int的区别 d和 f的区别
double型是双精度浮点型,int型是整型。浮点型与整型数据,在计算机内部的表达形式不同,浮点型由数符,尾数,阶符,阶码四部分组成,double型长度为64位。int型由数符和数组成,长度为32位。正因为如此,所以输入数据和输出数据时,语句中要给出转换格式的命令。
%d是转换成整型的命令,%f是转换成float型的命令。数据--变量名--转换格式要匹配,匹配错了,运算结果就错了。
double型输入要用%lf格式,lf是英文LF的小写,意思是longfloat,即double.double型输出要用%lf格式,输出也允许用%f(和%e,%g)格式。
int型输入输出要用%d格式。这是规定。double型输入你用了%f格式,用错了,故得了0。要用%lf格式才对。10/3是整除运算,即整数除以整数得整数,丢弃小数,故得整数3。
若是10.0/3或10/3.0,或10.0/3.0,或10./3等等,则得浮点数3.33333...