鱼C论坛

 找回密码
 立即注册
查看: 2257|回复: 7

求助,我是c语言菜鸟

[复制链接]
发表于 2014-1-20 16:07:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Prentis 于 2014-1-20 16:11 编辑

#include <stdio.h>

void main()
{
      float PI=3.14159;
          double s;
          int r = 5;
          s = r * r * PI;
          printf("s=%d\n",s);
}
这个程序错哪了,为什么运行的结果是s=1342177280

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-1-20 16:31:54 | 显示全部楼层
printf语句输出格式写错了,把%d改成%f
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-20 17:00:04 | 显示全部楼层
#include <stdio.h>

void main()
{
        float PI=3.14159;
        double s;
        int r = 5;
        s = r * r * PI;
        //printf("s=%d\n",s);//是%f不是%d  
        printf("s = %f\n",s);
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-1-31 14:26:55 | 显示全部楼层
r是整形,PI是浮点型,%d改成%f这个程序就是正确的了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-3 14:28:20 | 显示全部楼层
printf("s=%d\n",s); 这一句错了,%d表示以十进制整数输出。改成%f
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-10 00:58:18 From FishC Mobile | 显示全部楼层
改成%f看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-10 10:06:48 From FishC Mobile | 显示全部楼层
强制转换一下数据类型,float和int数据类型不同,你要定义的话,可以定义成全是float的,比如,float  r=5.0    ,还有就是你可以使用宏定义,定义下pi,不过我建议你还是找些简单的数学计算吧。不一定非要用这个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-10 10:10:46 From FishC Mobile | 显示全部楼层
啥?!!咋还有double数据类型,你要把三个数据类型转换成一种数据类型才行,不过别使用int,因为pi,3.1415926,计算结果会自动截取小数点,直接现实整数的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-10 10:12:03 From FishC Mobile | 显示全部楼层
你还是都使用double吧,这种程序,网上都这样写的。我也是新手,只是给个建议。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-2-10 10:35:01 | 显示全部楼层
三个数据都是不同类型的啊,如果直接计算的话编译器好像会把其他数据类型转化成int类型,但是不准确
把printf语句的d%格式改成f%格式估计就没问题了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-24 04:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表