CHj2004 2023-11-04 02:21 采纳率: 0%
浏览 23

输入金额输出各种面值数量,求解答

img

img

img

img

有不影响出现黑屏的错误代码warning C4244: '=' : conversion from 'double ' to 'int ', possible loss of data

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-04 04:04
    关注

    【以下回答由 GPT 生成】

    由于提示信息是从'double'转换到'int'可能会丢失数据,解决该问题的方法是将double类型的变量amount转换为int类型的变量。

    以下是优化后的代码:

    #include <stdio.h>
    
    int main() {
        double amount;
        int hundred, fifty, twenty, ten, five, two, one;
    
        printf("请输入金额:");
        scanf("%lf", &amount);
    
        // 将double类型的amount转换为int类型
        int amount_int = (int)amount;
    
        // 计算各种面值的数量
        hundred = amount_int / 100;
        amount_int = amount_int - hundred * 100;
        fifty = amount_int / 50;
        amount_int = amount_int - fifty * 50;
        twenty = amount_int / 20;
        amount_int = amount_int - twenty * 20;
        ten = amount_int / 10;
        amount_int = amount_int - ten * 10;
        five = amount_int / 5;
        amount_int = amount_int - five * 5;
        two = amount_int / 2;
        amount_int = amount_int - two * 2;
        one = amount_int;
    
        // 输出结果
        printf("100元的数量:%d\n", hundred);
        printf("50元的数量:%d\n", fifty);
        printf("20元的数量:%d\n", twenty);
        printf("10元的数量:%d\n", ten);
        printf("5元的数量:%d\n", five);
        printf("2元的数量:%d\n", two);
        printf("1元的数量:%d\n", one);
    
        return 0;
    }
    

    通过将变量amount转换为int类型的变量amount_int,即可解决从'double'转换到'int'的问题,并避免丢失数据的风险和警告。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 修改了问题 11月4日
  • 创建了问题 11月4日

悬赏问题

  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画
  • ¥15 TeleScan不能修改bar
  • ¥100 请问我基于逐飞库写的这个有关于mp u6050传感器的函数,为什么输出的值是固定的?
  • ¥15 hadoop中启动hive报错如下怎么解决
  • ¥15 如何优化QWebEngineView 加载url的速度
  • ¥15 关于#hadoop#的问题,请各位专家解答!
  • ¥15 如何批量抓取网站信息
  • ¥15 Spring Boot离线人脸识别
  • ¥15 使用Ant Design Pro vue的时候,使用环境变量的时候,构建报错是什么原因