Ввод строки с клавиатуры и запись в файл - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Давно не практиковалась в написании программ на Си, поэтому прошу помочь с заданием. Необходимо ввести с клавиатуры набор положительных целых чисел по возрастанию (пользователь сам вводит числа по возрастанию) через пробел и записать в файл. Признак конца ввода данных в файл - набор нуля. Вот что пока имею:
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <dir.h>
  4. #include <ctype.h>
  5. void main()
  6. {
  7. int i,n;
  8. int a[20];
  9. printf ("VVedite stroky chisel v poryadke vozrastaniya: \n");
  10. while (a[i]!='\0')
  11. gets(a);
  12. printf("%s\n",a);
  13. scanf("%d",&a[i]);
  14. chdir("c:");
  15. FILE *f=fopen("file1.txt", "w");
  16. fprintf(f, a);
  17. fclose(f);
  18. }
Оно не работает. Помогите, пожалуйста.

Решение задачи: «Ввод строки с клавиатуры и запись в файл»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. const int N = 10;
  4. int main()
  5. {
  6.     int i = 0, a[N];
  7.     char str[80];
  8.     FILE *f1, *f2, *f3;
  9.     f1 = fopen("file1.txt", "w");
  10.     f2 = fopen("file2.txt", "w");
  11.     f3 = fopen("file3.txt", "w");
  12.     printf ("Dlya massiva 1 vvedite stroky chisel v poryadke vozrastaniya: \n");
  13.     while (i < N){
  14.         scanf("%d", &a[i]);
  15.         ++i;
  16.     }
  17.  
  18.     for(i = 0; i < N; ++i)
  19.         fprintf(f1, "%d ", a[i]);
  20.     printf ("\nDlya massiva 2 vvedite stroky chisel v poryadke vozrastaniya: \n");
  21.     i = 0;
  22.     while (i < N){
  23.         scanf("%d", &a[i]);
  24.         ++i;
  25.     }
  26.     for(i = 0; i < N; ++i)
  27.         fprintf(f2, "%d ", a[i]);
  28.     fclose(f1);
  29.     fclose(f2);
  30.     f1 = fopen("file1.txt", "r");
  31.     f2 = fopen("file2.txt", "r");
  32.  
  33.     while(NULL != fgets(str, 80, f1)){
  34.         fprintf(f3, "%s", str);
  35.     }
  36.     while(NULL != fgets(str, 80, f2)){
  37.         fprintf(f3, "%s", str);
  38.     }
  39.     fclose(f1);
  40.     fclose(f2);
  41.     fclose(f3);
  42.     return 0;
  43. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.7 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы