使用简单的数学总是相同的答案

  • 本文关键字:答案 简单 c
  • 更新时间 :
  • 英文 :

#include <stdio.h>
#include <stdlib.h>
int main()
{
long double luc = 3.156E+7;
long double age;
long double seconds = age * luc;
printf("insert age here:n");
scanf("%Le", &age);
printf("Hello world! %Len", seconds);
return 0;
}

我刚开始在大学里学习C,我们的第一项任务是制作一个能做基础数学的程序。我觉得我的代码没有错,但当我显示"*"或"+"时,我得到的答案是错误的。例如,我为每个变量输入2,第一次得到-2.0000,第二次得到一些随机数。是什么原因造成的?

在读取age变量的值之前,您正在使用它!将seconds的声明(或至少是计算(移动到scanf调用之后:

int main()
{
long double luc = 3.156E+7;
long double age;
long double seconds;
printf("insert age here:n");
scanf("%Le", &age);
seconds = age * luc;
printf("Hello world! %Len", seconds);
return 0;
}

最新更新