0

我必须创建从文本文件中读取值的 ac 文件,并将它们传递到数组中。新来的c。

要读取的 file.txt

 1989 500 222000
 1997 1500 180000
 1976 4000 20000
 1967 20000 10000

程序应该从标准输入读取表数据。如下(来自 shell): % ./tsort file.txt

到目前为止我的代码

int main( int argc, char *argv[] ) {
     FILE *inputFile;
     inputFile = fopen( argv[2], "r" );
     int number;

    while(fscanf(inputFile, "%i", number)==1)
    {
            printf("%i", number);
    }

return 0;

   }
4

1 回答 1

1

尝试这个。注意 & on 数字和检查 inputFile 是否为空。命令行应该是“./tsort file.txt”

int main( int argc, char *argv[] ) {
     FILE *inputFile;
     int number;

     if(argc != 2) {
         printf("Usage: %s filename\n", argv[0]);
         return 1;
     }
     inputFile = fopen(argv[1], "r" );

    if(inputFile == 0) {
        printf("Can't open '%s'\n", argv[1]);
        return 1;
    }

    while(fscanf(inputFile, "%i", &number)==1)
    {
            printf("%i\n", number);
    }

    return 0;

   }
于 2013-09-20T02:55:10.243 回答