注册 登录
编程论坛 C语言论坛

求圆的面积,书上的代码可执行却是0,不知道为什么

y1473015206 发布于 2021-01-22 15:14, 1960 次点击
#include <stdio.h>
#define PI 3.14159
double Area(double r);
int main()
{
    double Radii,s;
    printf("请输入圆的半径:");
    scanf("%1f",&Radii);
    s=Area(Radii);
    printf("半径为%1f的圆的面积是%1f\n",Radii,s);
    return 0;
}
double Area(double r)
{
    double s;
    s=PI*r*r;
    return s;
}
4 回复
#2
rjsp2021-01-22 16:22
我猜你想要的不是 "%1f",而是 "%lf"
#3
y14730152062021-01-22 16:27
回复 2楼 rjsp
#4
纯蓝之刃2021-01-22 16:38
scanf("%lf",&Radii);

是L和F,不是数字1.
#5
会飞的鸡2021-01-28 11:15
Radii是double型,用scanf输入应该是"lf",不是"1f".
1