萌新求助,为什么一个整数减去与它数值相等的小数不是零啊
  • 板块学术版
  • 楼主XTZ11
  • 当前回复4
  • 已保存回复6
  • 发布时间2024/10/12 23:11
  • 上次更新2024/10/13 16:17:33
查看原帖
萌新求助,为什么一个整数减去与它数值相等的小数不是零啊
421981
XTZ11楼主2024/10/12 23:11
#include<bits/stdc++.h>
using namespace std;

int i,z;
double x,y,k;
int main()
{
   scanf("%lf",&x);
   y=x-(int)x;  //y=小数部分
   z=(int)x;    //z=整数部分
   k=y-(int)y;  //k=还有没有小数
   printf("%lf\n",k);
   for(i=1;i<=100;i++){
	y*=10;
	k=y-(int)y;
	cout<<"K等于"<<k<<"    y等于"<<y<<"     (int)y等于"<< (int)y<<endl;
    }
}
以下为程序运行结果
```latex
输入:
1.332
输出
0.332000
K等于0.32    y等于3.32     (int)y等于3
K等于0.2    y等于33.2     (int)y等于33
K等于1.13687e-013    y等于332     (int)y等于332
K等于9.09495e-013    y等于3320     (int)y等于3320
K等于7.27596e-012    y等于33200     (int)y等于33200
K等于5.82077e-011    y等于332000     (int)y等于332000
K等于4.65661e-010    y等于3.32e+006     (int)y等于3320000
K等于3.72529e-009    y等于3.32e+007     (int)y等于33200000
K等于5.96046e-008    y等于3.32e+008     (int)y等于332000000
K等于5.46748e+009    y等于3.32e+009     (int)y等于-2147483648
K等于3.53475e+010    y等于3.32e+010     (int)y等于-2147483648
K等于3.34147e+011    y等于3.32e+011     (int)y等于-2147483648
K等于3.32215e+012    y等于3.32e+012     (int)y等于-2147483648
K等于3.32021e+013    y等于3.32e+013     (int)y等于-2147483648
K等于3.32002e+014    y等于3.32e+014     (int)y等于-2147483648
K等于3.32e+015    y等于3.32e+015     (int)y等于-2147483648
K等于3.32e+016    y等于3.32e+016     (int)y等于-2147483648
2024/10/12 23:11
加载中...