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

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

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

надо вывести в файл 30 раз массив из шести символов, каждый раз чтоб он начинался с новой строки, символы задавать рандомно. Что то не работает прога.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main()
{
 char array[6];
 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'};
 
 int i;
 int a;
 int n=0;
 char b;
 FILE *fp;
 fp = fopen("input.txt","w");
srand(time(NULL));
 while (n<30){
 for (i=0;i<=5;i++)
 {
  a=rand()%52;
    array[i]=alpha[a];
    b=array[i];
    fprintf(fp, "%p", b);
 }
 printf(fp," /n");
 n=n+1;
 fclose(fp);
 
 }
 
}

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

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
 
 
int main()
{
 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'};
 int n=0;
 FILE *fp;
 fp = fopen("input.txt","w");
 
 while (n<30){
    for (int i=0;i<6;i++)
    {
 
        fprintf(fp, "%c ", alpha[rand()%52]);
    }
    fprintf(fp,"\n");
    n++;
 }
 
  fclose(fp);
 
 }

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

В этом коде используется язык программирования 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
Похожие ответы