C语言 如何返回读取数的计数或N,以数组中较小者为准

  • 本文关键字:数组 何返回 语言 返回 读取 arrays
  • 更新时间 :
  • 英文 :


我很困惑下面的函数是如何工作的,这样它就可以从数据文件中读取数字,将数字放在数组a中,并返回读取的数字数量或N的计数,以较小的为准。

#include <stdio.h>
{
    int readNumbers(FILE* input,int A[],int N)
    int n;
    n = 0;
    while(n < N&&!feof(input))
    {
        fscanf_s(input,"%f",&A[n]));
        n++;
    }
}

上面的程序应该读取一个数字文件并将它们放入数组中。我只是被困在了如何对读取的数字计数或n进行编程

1 scanf()用法错误

int readNumbers(FILE* input,int A[],int N)
...
// fscanf_s(input,"%f",&A[n]));
fscanf_s(input, "%d", &A[n]));

2为了区分feof()ferror(),应该在 fscanf_s()返回EOF后使用,而不是错误地使用feof()

while(n < N && fscanf_s(input,"%d", &A[n]) != EOF) {
  ...
}

3如@Hogan所说,添加返回n;

语法错误:change
{
int readNumbers(FILE* input,int A[],int N)
// to
int readNumbers(FILE* input,int A[],int N) {

相关内容

  • 没有找到相关文章

最新更新