为什么我的那么多错误?哪位大神指教一下
你的代码中一些问题:
① 图片第四行少写了分号,并且该函数声明 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;
}
② 在主函数中直接求
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