| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1702 人关注过本帖
标题:给定三角形三边长,求面积。程序源码找错
取消只看楼主 加入收藏
RNLSoul
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2016-5-4
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:1 
给定三角形三边长,求面积。程序源码找错
    自己查了几遍,觉得没错。请大家帮忙找错,先谢过了。
//给定三角形三边长,求面积
#include<stdio.h>
#include<math.h>
int main(void)
{
    double a, b, c, s, area;
    printf("请输入三角形三边长a, b, c:\n");
    scanf("%f, %f, %f", &a, &b, &c);
    s = (a + b + c) / 2.0;
    area = sqrt(s * (s - a) * (s - b) * (s - c));
    printf("该三角形的面积为:%.2f", area);
    return 0;
}
输入3.0, 4.0, 5.0运算结果为-0.00
搜索更多相关主题的帖子: include double return 三角形 
2016-05-24 15:26
RNLSoul
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2016-5-4
收藏
得分:0 
    感谢“rjsp”的回复。帮我找到了问题的根源,我说怎么谭浩强书上用的%f没错,我的程序错了。顺便百度,深入了解了一下。
%f和%lf分别是float类型和double类型用于格式化输入输出时对应的格式符号。
其中:
float,单精度浮点型,对应%f.
double,双精度浮点型,对应%lf.

在用于输出时:
float类型可以使用%lf格式,但不会有任何好处。
double类型如果使用了%f格式可能会导致输出错误。

在用于输入时:
double 类型使用了%f格式,会导致输入值错误。
float类型使用double类型不仅会导致输入错误,还可能引起程序崩溃。

所以在输入输出时,一定要区分好double和float,而使用对应的格式符号。


C语言自学者(初登殿堂)
2016-05-24 16:01
快速回复:给定三角形三边长,求面积。程序源码找错
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039398 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved