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

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

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

Массив структур (работа с указателями) - C++

17.12.2013, 20:22. Просмотров 223. Ответов 0
Метки нет (Все метки)

Здравствуйте! Интересует такой вопрос! Мы только начали изучать указатели, а на защиту лабораторной работы задали программу, которая должна с помощью указателей:
- вставить в массив структур еще одну структуру по месту где встретится NULL;
- вставить структуру в начало массива;
- отсортировать массив структур по любой из характеристик находящихся в структуре.
У меня есть такой вариант вставки по месту NULL! Исправьте пожалуйста ошибки и подскажите что делать дальше.

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
#include <iostream>
#include <cmath>
using namespace std;
struct kom {
    int nomer;
    int parta;
    int shkaf;
    int window;
    kom *next;
};
kom rooms[6] = {
    { 421, 25, 2, 3, &rooms[1] },
    { 169, 20, 3, 5, &rooms[2] },
    { 5, 50, 6, 261, &rooms[3] },
    { 59, 10, 3, 169, &rooms[4] },
    { 261, 60, 10, 59, NULL },
    { 425, 25, 5, 10, &rooms[3] }
};
int nroot(kom *rooms);
void sortNomer(kom *rooms);
int main() {
    cout <<nroot(rooms);
    return 0;
}
int nroot(kom *rooms) {
    int n = 0;
    for(kom *i = rooms; i != NULL; i = i->next) {
        n++;
    }
    return n;
}
Добавлено через 52 минуты
Подскажите пожалуйста!

Добавлено через 18 минут
Извиняюсь! У меня такой вариант! это я не то сбросил
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
#include <iostream>
#include <cmath>
using namespace std;
struct kom {
    int nomer;
    int parta;
    int shkaf;
    int window;
    kom *next;
};
kom rooms[6] = {
    { 421, 25, 2, 3, &rooms[1] },
    { 169, 20, 3, 5, &rooms[2] },
    { 5, 50, 6, 261, &rooms[3] },
    { 59, 10, 3, 169, &rooms[4] },
    { 261, 60, 10, 59, NULL },
};
kom New[1]={
    { 425, 25, 5, 10, &rooms[3] }
};
void nroot(kom *rooms, kom *New) {
    for(kom *i = rooms; i->next != NULL; i = i->next) {
       *i->next=New;
    }
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2013, 20:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив структур (работа с указателями) (C++):

Освобождение памяти и работа с 2 указателями на массив - C++
Пользователь вводит числа, которые поступают в массив. Длина массива неизвестна, а использовать большие массивы запрещено. Вопрос, можно ли...

Memcpy и копирование структур с указателями - C++
Всем привет. Есть структура: struct ClientInfo { const char* szUid; const char* szName; const char* szSurname; const...

Работа с массивом структур в функции через указатель на этот массив - C++
Добрый вечер. Имеется следующая задача: &quot;Разработайте программу, сохраняющую записи (порядковый номер ввода, число с плавающей точкой и...

Блочная сортировка структур (Отсортировать массив структур по фамилии) - C++
Подскажите алгоритм блочной сортировки структур на языке С++. Мне нужно отсортировать массив структур по фамилии.

Массив структур, сохранение начала каждой из структур - C++
Я создал такую структуру class Lancuch { public: char cos; Lancuch * nastepny; }; Lancuch * poczatek=NULL; cin &gt;&gt;...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2013, 20:22
Привет! Вот еще темы с ответами:

Работа с указателями - C++
Помогите пожалуйста объяснить, не понимаю почему число присваемое через указатель *А в кавычках, и равны ли *А и просто А??? char *A =...

Работа с указателями - C++
Расскажите как работает каждая строка в коде char *A = &quot;123456789&quot;; unsigned B = 1; char *X = A + B; char *Y = A - (-...

Работа с указателями - C++
Подскажите пожалуйста, зачем написано * Rad_to_deg void show_polar (const polar * pda) { using namespace std; const...

работа с указателями - C++
Вспоминаю с++ и в связи с этим возникло несколько вопросов. 1) если сделать так : myobj *obj = new myobj(); то потом можно...


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

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

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