这个c程序错在哪里了?

来源:百度知道 编辑:UC知道 时间:2024/05/15 12:47:33
我是个新手 这属于弱智问题 大家见笑了!
/************
计算圆的周长
*************/
#include"stdio.h"
#define PI 3.1415926
main()
{
int r;
printf("请输入半径:");
scanf("r=%d",&r);
printf("周长为: %d",2*r*PI);
}

它没有报错 但算出的数为什么不对啊?

两个严重错误:
1。主函数要写:void main() 不是main(),不加void表示返回值是int啊。
2.输出2*r*PI是实数,你怎能写%d用整形输出呢?应该是%f。
**还有一处不好,在写输入函数scanf时,要越简洁越好,不知你输入时是否按你写程序的输入的,即按你写的scanf("r=%d",&r),你输入时要输入“r= ”,不知你是否输入了r=。
帮你修改的程序如下:
#include"stdio.h"
#define PI 3.1415926
void main()
{
int r;
printf("请输入半径\n:");
scanf("%d",&r);
printf("周长为: %f",2*r*PI);
}
我帮你改后,输入时只要输入r的值然后按回车就行了,因为我把“r=”去掉了

scanf("r=%d",&r); 改为:scanf("%d",&r);
printf("周长为: %d",2*r*PI); 改为printf("周长为: %f",2*r*PI);