最最初级的程序大家帮我指出毛病。谢谢。QQ:13628198

z4b 2005-11-17 06:25:42
/*
*【例4.14】输入三角形的三边长,求三角形面积。
*

*/




#include <stdio.h>
#include <math.h>
int main()
{
float fSideA;
float fSideB;
float fSideC;
float fPerimeter;
double dArea;

scanf("%f,%f,%f", &fSideA, &fSideB, &fSideC);

fPerimeter = ( 1/2 ) * ( fSideA + fSideB + fSideC );
dArea = sqrt( fPerimeter * (fPerimeter-fSideA) * (fPerimeter-fSideB) * (fPerimeter-fSideC) );
printf("%7.2f, %7.2f, %7.2f\n", fSideA, fSideB, fSideC);
printf("%f \n",fPerimeter);
printf("the Area of Triangle is %7.2f \n", dArea);
return 0;
}

输入 3 4 5 怎么不出从对fSideB, fSideC传不进去值呢?谢谢。
...全文
50 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
wuwen19 2005-11-17
scanf("%f%f%f", &fSideA, &fSideB, &fSideC);
回复
seabreeze9802 2005-11-17
因为输入的参数定义为要以逗号隔开。应输入
3,4,5

另外( 1/2 ) 的结果可是为零哦,所以无论你输入什么,三角形面积都为零。
回复
SereinLi 2005-11-17
试试我改后的代码,自己琢磨把。

#include <stdio.h>
#include <math.h>
int main()
{
float fSideA;
float fSideB;
float fSideC;
float fPerimeter;
double dArea;

scanf("%f,%f,%f", &fSideA, &fSideB, &fSideC);
printf("fSideA = %7.2f, fSideB = %7.2f, fSideC = %7.2f\n", fSideA, fSideB, fSideC);
fPerimeter = ( 1.0/2 ) * ( fSideA + fSideB + fSideC );
printf("fPerimeter = %f \n",fPerimeter);
dArea = sqrt( fPerimeter * (fPerimeter-fSideA) * (fPerimeter-fSideB) * (fPerimeter-fSideC) );
printf("the Area of Triangle is %7.2f \n", dArea);
return 0;
}
回复
相关推荐
发帖
C语言
创建于2007-09-28

6.4w+

社区成员

C语言相关问题讨论
申请成为版主
帖子事件
创建了帖子
2005-11-17 06:25
社区公告
暂无公告