为什么我在printf中的输出是打印-nan和0.0000 C语言

时间:2016-05-22 16:14:16

标签: c terminal printf

这是用C语言编写的行,就像这样。

//declarations 
int hr, min;
float CHSnow  [143];
float ETime [143];
int Timer;
int CCSc;

printf("V, %i : %i je aktuálna výška snehu na letisku %f a odhadovaný čas pre bezpečné pristátie je %f minút \n", hr, min, CHSnow[Timer], ETime[CCSc] );

输出如下: V,0:10jeakkuálnavýškasovhuna letisku -nan aodhadovanýčasprebezpečnépristátieje 0.000000 minút。

我问你大胆的输出变量会出现什么问题? 谢谢, Matoosh

1 个答案:

答案 0 :(得分:1)

在浮点数中,NaN是“非数字”的首字母缩写,通常是通过使用浮点数进行无效操作而产生的。

如果该号码无法表示,则会打印nan

由于未初始化的数据或无效的操作,可能会发生这种情况。

对于“错误的”0.000000,没有任何一个stackoverflow可以告诉你你不知道,因为我们没有完整的代码可供查看。

您是否尝试过调试代码?