Вывести в файл 30 раз массив из шести символов - C (СИ)

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

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

надо вывести в файл 30 раз массив из шести символов, каждый раз чтоб он начинался с новой строки, символы задавать рандомно. Что то не работает прога.
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. int main()
  5. {
  6. char array[6];
  7. char alpha[52]={'q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j','k','l','z','x','c','v','b','n','m','Q','W','E','R','T','Y','U','I','O','P','A','S','D','F','G','H','J','K','L','Z','X','C','V','B','N','M'};
  8. int i;
  9. int a;
  10. int n=0;
  11. char b;
  12. FILE *fp;
  13. fp = fopen("input.txt","w");
  14. srand(time(NULL));
  15. while (n<30){
  16. for (i=0;i<=5;i++)
  17. {
  18. a=rand()%52;
  19. array[i]=alpha[a];
  20. b=array[i];
  21. fprintf(fp, "%p", b);
  22. }
  23. printf(fp," /n");
  24. n=n+1;
  25. fclose(fp);
  26. }
  27. }

Решение задачи: «Вывести в файл 30 раз массив из шести символов»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4.  
  5. int main()
  6. {
  7.  char alpha[52]={'q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j','k','l','z','x','c','v','b','n','m','Q','W','E','R','T','Y','U','I','O','P','A','S','D','F','G','H','J','K','L','Z','X','C','V','B','N','M'};
  8.  int n=0;
  9.  FILE *fp;
  10.  fp = fopen("input.txt","w");
  11.  
  12.  while (n<30){
  13.     for (int i=0;i<6;i++)
  14.     {
  15.  
  16.         fprintf(fp, "%c ", alpha[rand()%52]);
  17.     }
  18.     fprintf(fp,"\n");
  19.     n++;
  20.  }
  21.  
  22.   fclose(fp);
  23.  
  24.  }

Объяснение кода листинга программы

В этом коде используется язык программирования C.

  1. Объявляется массив символов alpha размером 52, который заполняется значениями из ряда 'qwertyuiopasdfghjklzxcvbnm'.
  2. Создается переменная n для подсчета количества записей в файл.
  3. Открывается файл input.txt в режиме записи с помощью функции fopen.
  4. В цикле while при условии, что n меньше 30, происходит запись в файл.
  5. В цикле for перебираются 6 символов из массива alpha с помощью функции rand() выбирается случайный индекс символа.
  6. С помощью функции fprintf в файл записывается символ и пробел.
  7. После каждой записи в файл выводится символ новой строки \n.
  8. Переменная n увеличивается на 1.
  9. По завершении цикла while файл закрывается с помощью функции fclose.

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


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

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

13   голосов , оценка 4.077 из 5

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

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

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