C语言中,如何读取txt文件中多列数据中的一列?

如图三列数据,我只想读第三列数据(https://img-ask.csdn.net/upload/201705/02/1493708233_7575.png)

char *fgets( 
   char* string, 
   int n, 
   FILE *stream 
);

代码如下:

#include <stdio.h>


int main()
{

    FILE* file = fopen("d:\\input.dat", "r"); 
    char line[256]; //存每行
    char str[20];    //存第三列字符串的值
    double result; //存第三列转化为double后的值
    while (fgets(line, sizeof(line), file)) { //fgets逐行读取文件,到达文件尾终止while循环

        sscanf(line, "%*d %*s %s", str); //sscanf解析每行数据,因为第1、2列不需要,在格式字符前加上*
        result = atof(str); //将第三列转化为double类型
        printf("%f\n", result); //打印第三列,测试结果
    }
    fclose(file);
    return 0;
}

基本逻辑可行。
但如果是项目程序,还需要加上对打开文件是否成功的判断等代码。
另外,读取到第三列后如何处理,也需要根据你项目的具体要求。