如何将用户界面添加到我的简单C代码中



我希望能够询问他想从输入文件打印哪个列。输入文件是一个标准文本文件,该文件具有4个列(如全局变量中的代码所述),该文件被空间分开(这是我用来分隔Getline函数中的每一行的方法。)

谢谢。

#include <stdio.h>
#include <string.h>
#define LINE_SIZE 256
#define COL_NUM 3
int main()
{
    char line[LINE_SIZE];
    char *ptr;
    int column;
    FILE * fp = fopen("input.txt", "r");
    while(!feof(fp)){                    // if not the end of file
        fgets(line, sizeof(line), fp);   // get one line each time
        ptr = strtok(line, " ");         // split line by space
        column = 1;                      // starting column is one
        while(ptr != NULL)               // if the line is not finished
        {
            if(column == COL_NUM){
                printf("%sn", ptr);     // print what we got
                ptr = strtok(NULL, " "); // and keep splitting
            }
            ptr = strtok(NULL, " ");     // and keep splitting
            column++;
        }
    }
    fclose(fp);
    return 0;
}

首先,您需要要求用户输入列号,之后您需要检查输入号是否在1和4之间,然后打印您选择的行。<<<<<<<<

int input = 0;
int i = 0;
printf("Select a column number!n");
scanf("%d", &input);
if (input>0 && input <5) 
{
    for (i=1; i<5; i++) 
    {
        fgets(line, sizeof(line), fp);
        if (input == i)
            printf("The column is %sn", line);
    }
}

最新更新