代码:当用%d去读double类型数据时,得到的为零,因为int型只取低32为付给整型变量,item=1.000000时转化成int型为0 1#include<stdio.h>2intmain()3{4inti,j,n;//item,s;5doubleitem,s;//当用%d去读double类型数据时,得到的为零,6//因为int型只取低32为付给整型变量,item=1.000000时转化成int型为07scan...
可以是可以,但是会发生数据丢失,也就回是说小数部分丢失,只留下整数部分。
然而你刚才问这个问题是常见的64位结构double和32位结构int,存在编译器的不确定性,有的编译器会将在...
谭浩强式问题。比分析 a+=a-=a*a 更无知更无聊 编程是为了解决问题,不是为了制造问题,更不是为了...
p 指针的值 e 指数形式的浮点数 x, %X 无符号以十六进制表示的整数 o 无符号以八进制表示的整数 g 自动选择合适的表示法 p 输出地址符 可以在"%"和字母之间加小写字母l, 表示输出的是长型数。例如: %ld 表示输出long整数 lf 表示输出double浮点数 你用%d去输出Double型的j,输出当然不对啊 ...
double是双精度浮点型对应输出%f,int是整形对应%d 浪稳如狗 毛蛋 1 建议问度娘 GTA小鸡 麻婆豆腐 11 内存中的数据没有类型信息,你告诉printf是什么类型,它就按什么类型解释。你告诉printf是%d类型,它就往后取4字节按int的格式解释。double型的数据按int格式解释,结果自然完全错误。要弄懂double型的数据在内...
double d在C语言中表示定义一个双精度浮点型变量,变量名为d。d是输入输出格式说明符,表示按10进制整型的格式输入输出数据。举例说明如下:double d=3.14; // 定义一个double型(双精度浮点型)变量,并初始化为3.14int a; // 定义一个int型(整型)变量,变量名为ascanf("%d", &a);...
c语言double类型不能用%d输出,会出错 #include <stdio.h>#include<math.h>int main(){double PI,last,sum; double i=2,j=1; int k=1; sum=1; do{last=i/j; sum=sum*last; if(k%2==0) i=i+2; else j=j+2; k++; }while(fabs(2*sum-3.1415)>0.00001); PI=2.0*sum; printf("%.4
int:整型,即我们通常意义下的整数变量,例如1、2、3、4、5等。double:双精度实型数,即我们通常意义下的小数,例如1.25、1.37、5.0等。d:这是C语言中scanf用于输入整数的格式,输入整数的格式是scanf("%d",&a)。f:这是C语言中scanf用于输入小数的格式,输入整数的格式是scanf("%lf",&a...
double型的应该是%le le就是double型的,我的程序中就是这么使用的