c语言的基础问题请来解决

1.为什么这个运行起来后要输入两次华氏温度才会开始计算?
2.为什么这里while的块中并没有添加scanf相关语句要求再次输入另一个华氏温度,完成计算后重新输入还是会开始计算?
谢谢了

#include <stdio.h>
void Temperature(double n);
int main()
{
    double hua;
    scanf("%lf",&hua);
    while(scanf("%lf",&hua)==1)
        {
            Temperature(hua);
        }
    return 0;
}
void Temperature(double n)
{
    const double JZ = 273.16;
    double she,kai,zhong;
    zhong = n - 32;
    she =  5.0 /9.0 *zhong;
    kai = she + JZ;
    printf("%.2lf\n%.2lf\n%.2lf\n",n,she,kai);
}

还有一个忘记了,在这里写一下,为什么Temperature中使用如下方式,仍然会因为浮点数和整数的原因变为0?

she = 5.0 / (9.0 * (n - 32.0))

明明就有两个scanf,你while的条件里面也有一个


#include <stdio.h>
void Temperature(double n);
int main()
{
    double hua;
    scanf("%lf",&hua);
    while(hua==1)
        {
            Temperature(hua);
        }
    return 0;
}
void Temperature(double n)
{
    const double JZ = 273.16;
    double she,kai,zhong;
    zhong = n - 32;
    she =  5.0 /9.0 *zhong;
    kai = she + JZ;
    printf("%.2lf\n%.2lf\n%.2lf\n",n,she,kai);
}