Fprintf не печатает - PullRequest
1 голос
/ 02 июля 2019

Я пытался выполнять файловые упражнения на C, но когда я запускаю программы от преподавателя или учебные пособия (которые должны работать), файл всегда выходит пустым.Есть ли решение для этого?

Мой компьютер довольно старый, но он все еще может запускать различные программы, я не понимаю, почему он не работает с файлами

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/*program that prints on a file your shopping list*/
int main(int argc, char **argv)
{
    FILE *fp= fopen("Shopping list.txt", "w");
    int end= 0; //have you finished writing the articles
    char article[80];   //the article you want to buy
    int n;      //quantity

    while(!end){
        printf("What do you need to buy? ");
        fgets(article, 80, stdin);
        article[strlen(article)- 1]= '\0';
        fprintf(fp, "%s ", article);

        printf("How much of it? ");
        scanf("%d", &n);
        fprintf(fp, "%d\n", n);

        printf("Are you done? (1= Yes, 0= No) ");
        scanf("%d%*c", &end);
    }
    fclose(fp);
}

Этодолжен распечатать на файл (который создается и остается пустым) ваш ввод.Нет сообщения об ошибке

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...