如何读取C中的数字?

时间:2017-06-22 21:55:31

标签: c

我有一个非常基本的C程序,我无法从中得到结果。我来自Fortran世界,那里的数字运算是直接的,而且语言并不神秘。我已经完成了很多C语言教程,他们在C语言中处理数字数据而不是字符串的处理方法并不是很全面。我已经在三个示例数据集上尝试了我的程序(整数,浮点数和一组带有三个变量的浮点数(附加intfloatsarray) - 不幸的是我似乎不是能够附加我的数据。 但是,任何示例数据都可以。在我的试验数据中,第一个文件(整数)每行有10行单个整数值;文件2有10个值,每行有一个浮点值,文件3有大约3000行纬度,经度和每行的值,带有标题。

程序编译并执行,但不会给我结果。 我很感激帮助

#include <stdio.h>

void main()
{
FILE *f;
char buff[1000],infile[16]="h900_28Mar09.txt";

f=fopen("infile","r");
fgets(buff, 26, (FILE*)f);
printf("%s\n", buff);

while (fgets(buff, 35, (FILE*)f)!=NULL)
 {
   printf("%s\n",buff);
 }
fclose(f);
}

[在此输入链接描述] [4]

1 个答案:

答案 0 :(得分:2)

你可能想要这个:

#include <stdio.h>

int main()
{
  FILE *f;
  char buff[1000];

  f=fopen("h900_28Mar09.txt", "r");

  if (f == NULL)
  {
    printf("Can't open file\n");
    return 1;
  }

  while (fgets(buff, 35, f) != NULL)
  {
    printf("%s\n",buff);
  }

  fclose(f);
}

此程序只打开文件h900_28Mar09.txt并逐行读取和显示。

替代方式:

...
char buff[1000], infile[] = "h900_28Mar09.txt";

f = fopen(infile,"r");
...