为什么我的printf浮动显示器不显示? (初学者)

时间:2019-02-02 02:38:07

标签: c

这是我为学校计划编写的代码 我的问题是,为什么printf不会将浮点值显示为inf(我认为是无穷大?),我知道以前的值都是int的,如果我将float放入() 无论如何,我们很感谢您的帮助

cheerzx

#include <stdio.h>
#include <conio.h>

int main()
{
    int c1, c2, c3, parallelCap;
    float seriesCap;

    printf("please enter the value of the first resistor:");
    scanf(" %d", &c1);
    printf("please enter the value of the second rstr:");
    scanf(" %d", &c2);
    printf("please enter the value of the third resistor:");
    scanf(" %d", &c3);
    parallelCap = c1 + c2 + c3;
    seriesCap = (float)1/(1/c1 + 1/c2 + 1/c3);
    printf("the parallel capacitance is: %d the series 
    capacitance is: %f/n ", parallelCap, seriesCap);
getch();
return 0;
}

1 个答案:

答案 0 :(得分:3)

您之所以得到inf,是因为{{1},1/c1 + 1/c2 + 1/c30大于{{1 }},因此您最终将c1除以c2。这是因为它可以作为整数除法。您可以分别转换其中每个浮点数,也可以使用c2作为分子

1