TTT_TEO 2021-10-15 21:50 采纳率: 80%
浏览 24
已结题

请问这两种写法有什么区别吗?


double m=0;
for (j=2;m<c;j++){
            m+=(1.0*1/j);
        }

double m=0;
 for (j=2;m<c;j++){
            m+=(1/j);
        }
  • 写回答

2条回答 默认 最新

  • 快乐鹦鹉 2021-10-15 21:56
    关注

    因为1/j是两个整数相除,是进行整除操作。所以第二种是错误的。1/j结果一直是0

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 关注

    *1.0相当于做了一个类型转换 转为浮点类型数据了

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月15日

悬赏问题

  • ¥15 网络打印机Ip地址自动获取出现问题
  • ¥15 求局部放电案例库,用于预测局部放电类型
  • ¥100 QT Open62541
  • ¥15 stata合并季度数据和日度数据
  • ¥15 谁能提供rabbitmq,erlang,socat压缩包,记住版本要对应
  • ¥15 Vue3 中使用 `vue-router` 只能跳转到主页面?
  • ¥15 用QT,进行QGIS二次开发,如何在添加栅格图层时,将黑白的矢量图渲染成彩色
  • ¥50 监控摄像头 乐橙和家亲版 保存sd卡的文件怎么打开?视频怎么播放?
  • ¥15 Python的Py-QT扩展库开发GUI
  • ¥60 提问一下周期性信信号的问题