Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.88
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
#1

Заполнение структуры - C++

15.11.2012, 22:45. Просмотров 1288. Ответов 9
Метки нет (Все метки)

Вот есть такая программа, как мне сделать чтобы я не вводил данные каждый раз, а программа сама заполняла все поля?

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
39
40
#include <iostream.h>
#include <string>
 
using namespace std;
 
struct timetable{
       char nazv[50];
       int numb;
       int data;
       int time;
       };
 
void inp(timetable []);
void out(timetable []);
 
int main(){
     timetable train[100];
     inp(train);
     out(train);
     system("pause");
     return 0;
     }
     
void inp(timetable train[100]){
     for(int i=0;i<3;i++){
             cin>>train[i].nazv;
             cin>>train[i].numb;
             cin>>train[i].data;
             cin>>train[i].time;
             }
}
 
void out(timetable train[100]){
     for(int i=0;i<3;i++){
             cout<<train[i].nazv<<endl;
             cout<<train[i].numb<<endl;
             cout<<train[i].data<<endl;
             cout<<train[i].time<<endl;
             }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 22:45
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заполнение структуры (C++):

Заполнение структуры - C++
Нужно написать задачку в DeV C++. В общем, при заполнении структуры со второй итерации проваливается гетлайн, цикл просто пропускает его....

Заполнение структуры - C++
Изучаю С++, заполняю объект структуры, в строке cin.getline (human.first_name, 10); выдает &quot;Ошибка C2228: выражение слева от...

Заполнение структуры из файла - C++
Задание вот какое:В текстовом файле хранятся данные о группе студентов следующего содержания: фамилия, имя, домашний адрес, иностранный...

Заполнение полей структуры - C++
Подскажите, в чем ошибка. #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; struct sign { char Lastname; char Firstname; char...

Заполнение структуры из vector - C++
Доброго времени суток. Имеется такого вида структура: struct Point { Point (void); double x,y; int number;

Заполнение структуры значениями - C++
Как правильно заполнить структуру рандомными значениями? Проблема с инициализацией :( #include &lt;iostream&gt; #include &lt;string&gt; ...

9
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
15.11.2012, 22:49 #2
читайте данные из файла, генерируйте случайным образом
0
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
15.11.2012, 22:51  [ТС] #3
I.M., Я знаю что можно заполнить через rand но как это записать в коде, мне неполучаеться!
Если бы вы привели пример реализации я бы был благодарен!
0
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
15.11.2012, 22:53 #4
C++
1
2
3
4
5
6
void inp(timetable train[100]){
     for(int i=0;i<3;i++){
             //...
             train[i].numb = rand()%MAX_NUMB;
             //...
             }
1
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
15.11.2012, 22:58  [ТС] #5
А допустим как так записать чтобы заповнялося из выбранных данных? Например у меня есть такие данные:
boing, ak-47, string, Andrey, Petro.
И чтобы принимало отсюда и записало в train[i].nazv;
0
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
15.11.2012, 23:02 #6
C++
1
2
3
4
5
6
7
8
std::array<std::string, 5> test_data = {{"boing", "ak-47", "string", "Andrey", "Petro"}};//заранее сохраненные данные
 
std::array<std::string, 3> work_data; //а этот массив надо заполнить
 
for (std::string& i : work_data)
{
   i = test_data[rand()%test_data.size()];//т.е. основная идея это rand()%размер массива с сохраненными данными
}
1
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
15.11.2012, 23:03  [ТС] #7
А попроще нельзя заполнить?
0
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
15.11.2012, 23:09 #8
tokar2, вы зря видите лишнюю сложность в типах данных
вместо std::array пишите так, как вы привыкли объявлять массив
вместо std::string делаете строчку char[]
цикл тоже пишите, как привыкли
и будет проще

Добавлено через 2 минуты
C++
1
2
3
4
5
6
7
void inp(timetable train[100]){
     const char* test_data[5] = {"boing", "ak-47", "string", "Andrey", "Petro"};
     for(int i=0;i<3;i++){
             //...
             strcpy(train[i].nazv, test_data[rand()%5]);
             //...
             }
1
tokar2
25 / 25 / 1
Регистрация: 09.11.2012
Сообщений: 229
15.11.2012, 23:38  [ТС] #9
I.M., Большое спасибо!

Добавлено через 8 минут
И не подскажете почему не работает то что я написал?
C++
1
2
3
4
5
6
7
8
9
10
void inp(timetable train[100]){
     const char* test_data[5] = {"boing", "ak-47", "string", "Andrey", "Petro"};
     int *s[5] = { "11", "22", "33", "44", "55" };
     for(int i=0;i<2;i++){
             strcpy(train[i].nazv, test_data[rand()%5]);
             train[i].numb=s[rand()%5];
             train[i].data=rand()%20;
             train[i].time=rand()%20;
             }
}
Добавлено через 18 минут
Ну скажите что не так!
0
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
16.11.2012, 00:18 #10
массив интов неверно задан. там не нужна * и числа без ковычек пишутся
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2012, 00:18
Привет! Вот еще темы с ответами:

Заполнение структуры из файла - C++
Дан файл , содержащий информацию вида «1;162008;1;ООО «Слон»;1;2,5;». Как можно сделать чтение структуры, если поля разделены точкой с...

Заполнение структуры в конструкторе - C++
Нужно в конструкторе вызвать функцию заполнения структуры. Без цикла все работает, а вот с циклом даже в функцию похоже не заходит. Может...

Заполнение полей структуры - C++
Нужна ваша помощь! Нужно считать файл и записать в массив. Потом из этого массива надо раскидать значения по полям структуры. Как это...

Заполнение структуры через rand - C++
Допустим у меня есть такая структура struct list { char name; int year; }; Запись чтобы через rand...


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

Или воспользуйтесь поиском по форуму:
10
Yandex
Объявления
16.11.2012, 00:18
Ответ Создать тему
Опции темы

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