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

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

Войти
Регистрация
Восстановить пароль
 
Тангенс
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 121
#1

Копирование массива в переменные структуры - C++

11.05.2014, 19:27. Просмотров 258. Ответов 3
Метки нет (Все метки)

Необходимо что бы считывало со первого элемента массива buf в переменную t структуры NI, со второго элемента массива buf в переменную p структуры NI и последующие элементы в массив mas_p структуры NI.
Вводится элементы должны через пробел.
Затем вывести эти элементы

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
41
42
#include <iostream>
#include <conio.h>
 
using namespace std;
 
struct NI{
    int t;
    int p;
    int mas_p[128];
};
 
void main(){
 
       
        const c int = 3;
    NI ni[c];
 
    int t=0;
    for(int i=0;i<c;i++){
        char buf[128];
        cin>>buf;
 
        ni[i].t = atoi(&buf[0]);
        ni[i].p = atoi(&buf[3]);
 
        for(int j=5; j<5+ni[i].p; j+=2){
            ni[i].mas_p[t] = atoi(&buf[j]);
            t++;
        }
    }
 
    for(int i=0;i<c;i++){
        cout<<ni[i].t<<' '<<ni[i].p;
        for(int j=0;j<ni[i].p;j++){
            cout<<ni[i].mas_p[j];
        }
        cout<<endl;
    }
 
 
    _getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.05.2014, 19:27
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Копирование массива в переменные структуры (C++):

Структуры и строковые переменные - C++
Помогите, пожалуйста, найти ошибку. Четвёртый час сношаюсь с задачей, не могу найти, в чём баг. Задача простейшая с массивом из двух...

Структуры, копирование файла - C++
Подскажите, как написать программку с меню с пунктами: – посимвольное копирование файла; – построчное копирование файла; ...

Как глобально объявить указатель структуры, и переменные хранящиеся в ней? - C++
Как глобально объявить указатель структуры, и переменные хранящиеся в ней? Вот указатель вроде объявил, но всё же есть ошибки. #include...

Структуры. Сортировка массива структуры - C++
Здравствуйте! В чем моя ошибка?? Нужно отсортировать массив структуры по возрастанию среднего балла?? Делаю это с помощью...

Помещение структуры в вектор, удаление структуры, изменение элементов структуры - C++
Здравствуйте. Помогите разобраться с тем, как: 1 - находить элементы в векторе зная уникальный элемент структуры. 2 - удалять...

Копирование массива - C++
Как скопировать массив одномерный, который ввели?

3
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,926
Записей в блоге: 1
11.05.2014, 19:38 #2
почему же тогда массив buf имеет тип char, а поля структуры, которые надо считать int? и при чём тут вообще atoi? Тебе элементы массива надо считывать или какой-то текст из строки?
0
nmcf
5324 / 4644 / 1553
Регистрация: 14.04.2014
Сообщений: 18,479
11.05.2014, 19:46 #3
atoi() так нельзя использовать, она весь кусок строки будет брать начиная с указанной позиции. Сначала выделяй подстроку из buf.
0
Тангенс
1 / 1 / 0
Регистрация: 19.07.2013
Сообщений: 121
11.05.2014, 20:10  [ТС] #4
Если я пишу
C++
1
2
int buf[128];
        cin>>buf
то выдает ошибку

Добавлено через 20 минут
Переписал не работает

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
for(int i=0;i<c;i++){
        int buf[128];
        cin>>*buf;
 
        ni[i].t = buf[0];
        ni[i].p = buf[2];
        ni[i].mas_p = new int[ni[i].p];
 
        int t=0;
        for(int j=4; j<4+ni[i].p; j+=2){
            ni[i].mas_p[t] = buf[j];
            t++;
        }
    }
 
    for(int i=0;i<c;i++){
        cout<<ni[i].t<<' '<<ni[i].p;
        for(int j=0;j<ni[i].p;j++){
            cout<<ni[i].mas_p[j];
        }
        cout<<endl;
    }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.05.2014, 20:10
Привет! Вот еще темы с ответами:

Копирование элементов массива - C++
Дано два массива одинакового размера. Они содержат целые числа. Как скопировать элементы, содержащиеся только во втором массиве в третий...

Копирование частей массива - C++
Здравствуйте, есть задача: сделать чтобы информация из одного массива , копировалась в два массива на примере: Igori Necrasov- в первом...

Положительные и отрицательные элементы массива записать в разные переменные - C++
В универе используем компилятор DEV C++. Была дана задача ввести массив разными способами(вручную и рандомно). И сделать следующее: чтобы...

Копирование из массива строк в строку - C++
Есть динамический массив строк.Двумерный.И есть &quot;координаты&quot;(положение символа(i,j) начала выделения и конца),нужно скопировать в...


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

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

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