Sunny¥ 2022-11-14 22:26 采纳率: 81.8%
浏览 8
已结题

C语言基础问题,关于数据类型

#include<stdio.h>
#include<math.h>
int main()
{
double sum;
int m,z;
for(z=1,sum=0,m=1;fabs(z/m)>=(1e-6);)
{
sum=sum+z/m;
m=m+2;
z=-z;
}
printf("pi的值:%.10f\n",4*sum);
return 0;
}
为什么输出结果不正确,将m改为double型就正确了?

  • 写回答

2条回答 默认 最新

  • 心寒丶 全栈领域优质创作者 2022-11-15 00:30
    关注

    int除以int结果还是int ,比如5/3结果是1,但是如果除数是小数,比如5/3.0就是1.7777有小数的

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 ue2.6.12版本用的若以,安装gojs,引入import * as go from 'gojs';报错
  • ¥15 服务器上的网站安装php5.6版本
  • ¥15 ModuleNotFoundError: No module named 'torch.utils._import_utils' 是缺少什么
  • ¥15 请大咖一起探索iptv 直播源的hls通过反向代理解密
  • ¥100 寻找技术员 云闪付tn转h5输入卡号付款的链接 重酬!
  • ¥100 科大讯飞语音唤醒词,unbuntu环境,报错
  • ¥50 python写segy数据时出错2
  • ¥20 关于R studio 做精确稳定检验的问题!(语言-r语言)
  • ¥50 用贝叶斯决策方法,设计CAD程序
  • ¥20 关于#目标检测#的问题:(qq收集表到时间才能填写,填写的份数有上限)