c语言改错,输入长和宽求矩形边长和面积,保留两位小数。

如题所述

#inlcude
<stdio.h>
int
main()
//注意,开始学就学规范,具体在后面说
{
double
a,b,d,s;
//错的就是这个地方吧
printf("请输入长和宽的值:\n");
scanf("%f%f",&a,&b);
d=2*(a+b);
s=a*b;
printf("周长为%.2f\n",d);
printf("面积为%.2f\n",s);
return
0;
//还有这个地方
}
你既然输出的就是小数,那么定义就应该定义成小数,或者其实有编译器自带的强制类型转换或者其他什么的,其实就这样一个程序讨论这些也没有什么意义
然后这个程序有一些其他的错误,其实也不能说错误吧,就是c语言的标准改了以后造成的不兼容,新手很常见的会疑惑。。。现在比较多的是C99标准,C11虽然说颁布了,但是11年才颁布,你应该也用不着。。。
C99标准规定主函数应该有类型,直接写main()或者写void
main()不符合C99标准,至于为什么是int
main(),这个int有什么用,你以后学到函数调用就明白了,是操作系统有一个win32函数吧(好像是,我记不清了。。。)要调用main函数,main函数要有返回值,然后最后加了一句return
0;这个就是和int呼应吧,就是返回一个整数型的0给操作系统的win32函数。
温馨提示:答案为网友推荐,仅供参考
相似回答