2011-02-24 94 views
0

我有一个浮动数字用空格分隔的文件,我想打开文件并使用这个文件中的数字进行数学运算(例如平均数),我将如何使用以下操作来完成此操作:fopen,fscanf,fclose ,printf/scanf,指针,if/else/switch/loops? (没有阵列)。如何使用带限制的fscanf读取C中的空格分隔文件?

空格分隔文件中值的数量可以是任意数量。

+2

这功课吗? – 2011-02-24 22:35:01

+0

是的,我还没有做任何格式化输入,我试图找到scanf/fscanf的好资源。 – user633153 2011-02-24 22:41:57

+0

'man fscanf'会给出很多关于使用什么参数的信息。它可能会回答你所有的问题,特别是如果你的文件只是以空格分隔的话。 – 2011-02-24 22:45:38

回答

0

没有数量的任何知识,你将不得不直到你遇到文件的末尾改为数字,例如使用while构造。保持读取的数字的运行计数。

记住:

  1. 检查从 fscanf的返回值,它告诉许多 值是如何读取。
  2. 每个循环读取一个数字以获得 工作。
  3. 测试EOF从 读取该文件后,因为读数可能会触发 EOF。
  4. 还检查其他可能的文件 错误。
+0

感谢您的回复。在用循环读取文件后,如何在浮点数上执行操作(如sum,average)而不使用数组? – user633153 2011-02-25 00:01:21

+0

'sum'只需要求和变量。将读取的值添加到'sum'中。在总结所有的值后,除以计数值并给出平均值。如果您想在读取文件后进行更多分析,则只存储这些值。 – 2011-02-25 00:52:23

+0

感谢您的帮助。事实证明,我的困惑源于fscanf在做什么(例如,什么时候它是一个特定的浮动?),所以我要寻找更多的C资源/练习文件。 – user633153 2011-02-25 01:09:29

相关问题