tuzzzzi 2022-09-08 19:38 采纳率: 50%
浏览 37
已结题

C语言输出,数据问题

问题遇到的现象和发生背景

刚刚开始C语言学习,根据编程题求球的体积而衍生出来的问题

问题相关代码,请勿粘贴截图

#include <stdio.h>
#include <windows.h>
#define SCALE (4.0f * 3.1415926 / 3.0f)
int main()
{
int r = 10;
printf("volume = %f\n", r 的三次方(AI助手不允许我多次出现r) * SCALE);
system("pause");
return 0;
}

运行结果及报错内容

此程序正常运行
但问题是当我将%f 改为%d后
输出结果 volume = 1177393702

我的解答思路和尝试过的方法

我将3.1415926变更为3 但此时输出结果为0

我想要达到的结果

对此我存在疑惑,在搜索无果后,希望可以得到一些帮助,同时我也想理解一下 printf("%d“,a)中 ,a 的含义
因为我是刚刚开始入门所以问题可能在一些能力强的人眼里很简单,如果您不愿意帮助我就当看个笑话,勿恶意评论嘲讽;如果愿意,很感谢您对我的帮助
谢谢

  • 写回答

4条回答 默认 最新

  • _GX_ 2022-09-08 19:48
    关注

    printf()输出格式中%f需要对应输出数据类float, %d对应输出数据类型int,由于你的程序计算结果是float类型,你不能将%f改为%d,否则的话,显示结果就可能是无意义的数

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

报告相同问题?

问题事件

  • 系统已结题 9月16日
  • 已采纳回答 9月8日
  • 创建了问题 9月8日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效