首页 > 解决方案 > 为什么这会给出 0 输出

问题描述

请告诉我为什么这段代码将所有内容都返回为 0,让它成为长度、面积或其他任何东西。我做了一个计算面积的函数,它总是给出 0 我不知道为什么请在这里告诉我。

#include<stdio.h> 
 
double area(double length);

int main() 
{ 

    double  l = 20.0;
    double a = area(l);
    printf("The area of the square is %d\n" ,a);

}
 
double area(double length)
{

    double area = length*length;
    printf("l is %d \n",length);
    printf("%d  \n",area+length);
    return area;

}

标签: c

解决方案


%f在你的printf陈述中使用。

#include<stdio.h> 
double area(double length);

int main() 
{ 
    double  l = 20.0;
    double a = area(l);
    printf("The area of the square is %f\n" ,a);

    return 0; 
}
 
double area(double length)
{
    double area = length*length;
    printf("l is %f \n",length);
    printf("%f  \n",area+length);
    return area;

}

推荐阅读