用C语言定义一个函数求梯形面积的程序

为什么我的那么多错误?哪位大神指教一下

你的代码中一些问题:

① 图片第四行少写了分号,并且该函数声明 double area(double x,double y,double z); 建议写在最开头。当然,写在主函数里也可以,这是小问题。

② double类型对应的转换说明是 %lf。错误的转换说明会导致输出错误。

③ 主函数中已经利用 s=0.5*(a+b)*c; 求出了梯形的面积,那么为什么还要创建area()函数呢?况且这个函数还没用上。s和area()函数这俩用一个就行。

附上代码:

① 使用area()函数

#include <stdio.h>
double area(double x,double y,double z);
int main(void)
{
double a,b,c,s;
printf("Please enter a,b and c:");
scanf("%lf,%lf,%lf",&a,&b,&c);
s=area(a,b,c);
printf("s=%lf\n",s);
return 0;
}

double area(double x,double y,double z)
{
return 0.5*(x+y)*z;
}

② 在主函数中直接求

#include <stdio.h>
int main(void)
{
double a,b,c,s;
printf("Please enter a,b and c:");
scanf("%lf,%lf,%lf",&a,&b,&c);
s=0.5*(a+b)*c;
printf("s=%lf\n",s);
return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-01-03
1.第4行尾部缺分号; 2.将该文件的扩展名改为.c

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网