输入将为浮动价值,程序返回整个部分和小数值

Input will be floating value and program return whole part and decimal value

本文关键字:返回 个部 小数 程序 输入      更新时间:2023-10-16

我正在尝试进行C 的分配。

我必须执行任务才能在浮动数据类型中从用户中获取输入,并给出输出以分离给定值的整个部分,而十进制零件则无需点。例如,如果用户输入4.456,并且输出应为全部为4,并且没有点的小数部分为456。

我已经尝试过,但不确定下一步该怎么做。

#include<iostream>
using namespace std;
int main(int argc, char* argv[])
{
    float a,b;
    int c,d=0,z;
    cout<<"entre a number"<<endl;
    cin>>a;
    c=static_cast<int>(a);  
    b=a-c;
    b=z;
    cout<<z;
    return 0;
}

一种简单/原始的方法是首先将(铸造)float/double转换为int。这将放弃小数为您的答案的第一部分 - "。"之前的整数。然后,您可以简单地从原始数字中减去此整数,然后将其留下0.xxxx-确定要打印多少个小数值,然后将该值乘以10到该数字的幂,然后再施放到int并再次打印它。