如何用C程序 编写 求‘三角形面积’?
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/13 17:21:20
如何用C程序 编写 求‘三角形面积’?
#include
void main ()
{
float a,b,c,s,area;
printf("请输入三角形的三边:\n");
scanf("%f,%f,%f",&a,&b,&c);
if (a+b>c&&a+c>b&&b+c>a)
{
printf("\n这三个数可以组成三角形\n");
s=(a+b+c)\2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是%f\n");
}
else
printf("\n输入错误!\n");
}
为什么这个编译错误呢?
#include
void main ()
{
float a,b,c,s,area;
printf("请输入三角形的三边:\n");
scanf("%f,%f,%f",&a,&b,&c);
if (a+b>c&&a+c>b&&b+c>a)
{
printf("\n这三个数可以组成三角形\n");
s=(a+b+c)\2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积是%f\n");
}
else
printf("\n输入错误!\n");
}
为什么这个编译错误呢?
加上头文件 #INCLUDE
if(((a+b) >c) && ((a+c) >b) && ((b+c) >a))
注意书写,看得出你对运算符的优先级没有很深入的了解,现在很正确的方法是在子表达式上加括号,这样自己看得出清楚嘛,不要写完程序自己都看不懂就完了.
s = (a+b+c) / 2.0
注意数据类型.
强制类型的转换要用如:
int first = 1;
double sec ;
sec = (double)first;
好好打下基础.
再问: 呵呵 是呀 我们现在才刚开始学习 那个头文件必须加吗? 我们老师说过不写也行……
再答: 你们老师是教授么,是有过多年开发经验的高工么,如果不是,那就不要听他(她)放屁,你现在什么都不是很清楚,最好写代码的时候老实点,不然哪里出了错你都不知道,你们老师他当然清楚优先级的排序啦,你很清楚优先级么,不一定吧,所以你们老师这样也是不负责任,误人子弟,这是书写规范,是保证整个项目能够不出现乱七八糟问题的基本要点,让自己的代码规范了,才能做出好的项目,如果按你说你们老师只说了“不写也行”而没有讲其它的,那他就根本就算只会C理论而已,完全没有项目经验。 头文件必须加,你想,加上头文件的用处在哪? 就在于 能够使用该文件中的函数或变量等。 如果不加上头文件,系统根本就不知道你要到哪去拿东西(比如:printf()函数)。 加上头文件,也是代码复用的利器,小兄弟,好好学!三年后,你一定比我强。 给分吧!
if(((a+b) >c) && ((a+c) >b) && ((b+c) >a))
注意书写,看得出你对运算符的优先级没有很深入的了解,现在很正确的方法是在子表达式上加括号,这样自己看得出清楚嘛,不要写完程序自己都看不懂就完了.
s = (a+b+c) / 2.0
注意数据类型.
强制类型的转换要用如:
int first = 1;
double sec ;
sec = (double)first;
好好打下基础.
再问: 呵呵 是呀 我们现在才刚开始学习 那个头文件必须加吗? 我们老师说过不写也行……
再答: 你们老师是教授么,是有过多年开发经验的高工么,如果不是,那就不要听他(她)放屁,你现在什么都不是很清楚,最好写代码的时候老实点,不然哪里出了错你都不知道,你们老师他当然清楚优先级的排序啦,你很清楚优先级么,不一定吧,所以你们老师这样也是不负责任,误人子弟,这是书写规范,是保证整个项目能够不出现乱七八糟问题的基本要点,让自己的代码规范了,才能做出好的项目,如果按你说你们老师只说了“不写也行”而没有讲其它的,那他就根本就算只会C理论而已,完全没有项目经验。 头文件必须加,你想,加上头文件的用处在哪? 就在于 能够使用该文件中的函数或变量等。 如果不加上头文件,系统根本就不知道你要到哪去拿东西(比如:printf()函数)。 加上头文件,也是代码复用的利器,小兄弟,好好学!三年后,你一定比我强。 给分吧!