Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Lin_Kor
0 / 0 / 0
Регистрация: 29.11.2016
Сообщений: 9
Завершенные тесты: 1
1

Заполнение массива структур случайными символами

09.03.2017, 20:51. Просмотров 525. Ответов 6
Метки нет (Все метки)

Добрый день!
Есть такое задание:
Разработайте программу «Библиотека». Создайте структуру «Книга» (название, автор, издательство, жанр). Создайте массив из 10 книг. Реализуйте для него следующие возможности:
Редактировать книгу
Печать всех книг
Поиск книг по автору
Поиск книги по названию
Сортировка массива по названию книг
Сортировка массива по автору
Сортировка массива по издательству
Как обычный char массив заполнить случайными символами я знаю, но как это сделать со структурами не понимаю.
Вот попытка, выдаёт ошибку: cannot convert from 'int' to 'char **'
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
struct Library {
    char** name;
    char** author; 
    char** publish_house;
    char** genre;
};
 
void filler(Library**st, int n) {
    for (int i = 0; i < n; i++) {
        for (int j = 0;j < n;j++) {
            st[i][j].name = rand() % 26 + 97;
            if (j == n - 1) st[i][j].name = '\0';
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2017, 20:51
Ответы с готовыми решениями:

Заполнение строки случайными символами на стадии препроцессора
Ситуация такова: есть string, и ее нужно заполнить рандомными символами на...

Заполнение массива случайными числами
Доброго времени суток. Перейду сразу к сути: Надо построить массив из 5000...

Заполнение массива случайными числами
Здравствуйте. Необходимо заполнить два массива случайными числами. Проблема...

Заполнение массива случайными числами
напишите функцию для заполнения массива случайными числами

Заполнение массива случайными числами
Подскажите пожалуйста, как заполнить массив случайными числами в div-C++?...

6
art-evgeniy
6 / 6 / 9
Регистрация: 20.11.2016
Сообщений: 120
09.03.2017, 20:57 2
Вас приветствует форум Cyberforum!!!

Нажмите CTRL-ALT-DELETE для перезагрузки.

можете не отвечать на это сообщение, оно послано автоматически!

Добавлено через 3 минуты
Если вы хотите Заполнить массив структур случайными символами то Код такой

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream>
#include <cctype>
#include <ctime>
using namespace std;
 
int main() 
{
   srand(time(0)); 
   char arr[100];
    
    for(int i = 0; i < 100;)
    {
        char ch = rand() % 127;
        if (isalnum(ch))
        {
            arr[i] = ch;
            cout << arr[i];
            ++i;
        }
    }
    
    cin.get();
    return 0;
}


и такой
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include<iostream>
#include <cctype>
#include <ctime>
using namespace std;
 
int main() 
{
   srand(time(0)); 
   char arr[100];
    
    for(int i = 0; i < 100;)
    {
        char ch = rand() % 127;
        if (isalnum(ch))
        {
            arr[i] = ch;
            cout << arr[i];
            ++i;
        }
    }
    
    cin.get();
    return 0;
}


Вы можете заказать Свежую Пиццу у Модераторов!

Чтобы заказать ПИЦЦУ. отправьте короткое сообщение в ОТВЕТЫ.

Наберите 1 - если с грибами 2. с сыром. 3 - с мясом
0
Lin_Kor
0 / 0 / 0
Регистрация: 29.11.2016
Сообщений: 9
Завершенные тесты: 1
09.03.2017, 21:11  [ТС] 3
art-evgeniy, возможно, я неясно объяснила суть проблемы. У меня есть структура, состоящая из названия книги, издания, автора и жанра:
C++
1
2
3
4
5
6
struct Library {
    char** name;
    char** author; 
    char** publish_house;
    char** genre;
};
Из этой структуры мне каждый массив необходимо заполнить случайными символами, но мне выдаёт ошибку
0
nmcf
6277 / 5578 / 2539
Регистрация: 14.04.2014
Сообщений: 23,479
09.03.2017, 21:19 4
Во-первых, это не соответствует заданию. Где структура и массив?
0
Lin_Kor
0 / 0 / 0
Регистрация: 29.11.2016
Сообщений: 9
Завершенные тесты: 1
09.03.2017, 21:42  [ТС] 5
nmcf,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <iostream>
#include <string>
#include <cstdlib>
#include <ctime>
using namespace std;
 
//создание структуры "Книга"
struct Book {
    char *name; //название
    char *author; //автор
    char *publish_house; //издание
    char *genre; //жанр
};
 
//заполнение массива из десяти книг случайным образом
void fill (Book* a, int n) {
    for (int i=0; i<n; i++) {
        a[i].name=rand()%27+97;
        if (i==n-1) a[i].name='\0';
    }
}
 
//печать книг
void show (Book* a, int n) {
    for (int i=0; i<n; i++)
        puts (a[i].name);
}
 
int main() {
    srand (time (NULL));
    int n=10;
    Book* a=new Book [n];
    fill (a, n);
    show (a, n);
    system ("pause");
    delete [] a;
    return 0;
}
0
art-evgeniy
6 / 6 / 9
Регистрация: 20.11.2016
Сообщений: 120
09.03.2017, 21:57 6
Девушка, если судить по ошибке.

C++
1
Вот попытка, выдаёт ошибку: cannot convert from 'int' to 'char **'
То вы просто с Луны свалились
0
nmcf
6277 / 5578 / 2539
Регистрация: 14.04.2014
Сообщений: 23,479
09.03.2017, 22:01 7
Lin_Kor, в таком виде тебе придётся память выделять под каждое поле. Лучше массивы char используй.
0
09.03.2017, 22:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2017, 22:01

Заполнение массива случайными числами
Извините за наиглупейший вопрос, но я забыл как задавать диапазон случайных...

Заполнение массива случайными значениями в С
Необходимо заполнить масив случайными значениями в диапазоне 1-9, причем они...

Заполнение двухмерного массива типа char символами цифр
Приветствую всех! Разбираю одну задачу, в которой двухмерный символьный массив...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru