Как получить пользовательский ввод и сохранить его в текстовом файле с помощью C

Чтобы получить элементы от пользователя и сохранить их в текстовом файле с помощью C, вы можете использовать несколько методов. Вот несколько примеров:

Метод 1: использование функций scanf и fprintf

#include <stdio.h>
int main() {
    int num;
    FILE *file;
    file = fopen("data.txt", "w");
    printf("Enter the number of elements: ");
    scanf("%d", &num);
    fprintf(file, "Number of elements: %d\n", num);
    for (int i = 0; i < num; i++) {
        int element;
        printf("Enter element %d: ", i + 1);
        scanf("%d", &element);
        fprintf(file, "%d\n", element);
    }
    fclose(file);
    printf("Data saved to file.\n");
    return 0;
}

Метод 2. Использование функций fgets и fputs

#include <stdio.h>
#define MAX_LENGTH 100
int main() {
    int num;
    FILE *file;
    file = fopen("data.txt", "w");
    printf("Enter the number of elements: ");
    scanf("%d", &num);
    getchar(); // consume the newline character
    fprintf(file, "Number of elements: %d\n", num);
    char buffer[MAX_LENGTH];
    for (int i = 0; i < num; i++) {
        printf("Enter element %d: ", i + 1);
        fgets(buffer, MAX_LENGTH, stdin);
        fputs(buffer, file);
    }
    fclose(file);
    printf("Data saved to file.\n");
    return 0;
}

Метод 3. Использование аргументов командной строки

#include <stdio.h>
int main(int argc, char *argv[]) {
    int num;
    FILE *file;
    if (argc < 2) {
        printf("Usage: ./program_name <filename>\n");
        return 1;
    }
    file = fopen(argv[1], "w");
    printf("Enter the number of elements: ");
    scanf("%d", &num);
    fprintf(file, "Number of elements: %d\n", num);
    for (int i = 0; i < num; i++) {
        int element;
        printf("Enter element %d: ", i + 1);
        scanf("%d", &element);
        fprintf(file, "%d\n", element);
    }
    fclose(file);
    printf("Data saved to file.\n");
    return 0;
}

Эти методы позволяют пользователю вводить количество элементов и соответствующие значения, которые затем сохраняются в текстовом файле. Данные сохраняются в отформатированном виде, чтобы их можно было прочитать. Не забудьте включить необходимые операторы обработки ошибок и закрытия файлов в вашу фактическую реализацию.