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

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

Войти
Регистрация
Восстановить пароль
 
Дима-Дима
1 / 1 / 0
Регистрация: 09.12.2010
Сообщений: 63
#1

Указатели на структуры! - C++

10.03.2011, 11:46. Просмотров 319. Ответов 0
Метки нет (Все метки)

Захватить память для массива из 10 структур.
Заполните массив данными из файла "1.dat".
Вывести информацию о маршрутах, имеющих определенный пункт в качестве начального или конечного. Высчитать для них среднюю длину.
Перед завершением программы освободить память.
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
43
44
#include "iostream"
#include "stdio.h"
using namespace std;
struct MARSH
{
    char start_name[20];
    char finish_name[20];
    int nom_msrsh;
    int dl_msrsh;
};
void main()
{
    int y=0, d=0;
    MARSH mas[10];
    MARSH *pmas;
    pmas=&mas[10];
    FILE *f1;
    f1 = fopen("1.bin","r+b");
    while(true)
    {
               fread(&pmas,sizeof(pmas),1,f1);
               if(!feof(f1)) break;
               else {pmas++; ++y;}
    }
    for (int i=0;i<y; i++)
        {
               if((*pmas).start_name[i]!=NULL && (*pmas).finish_name[i]!=NULL)
               {
                   cout<<"nachal'nii punkt"<<endl;
                   cout<<(*pmas).start_name<<endl;
                   cout<<"konechnii punkt"<<endl;
                   cout<<(*pmas).finish_name<<endl;
                   cout<<"Nomer marshruta"<<endl;
                   cout<<(*pmas).nom_msrsh<<endl;
                   cout<<"Dlina marshruta"<<endl;
                   cout<<(*pmas).dl_msrsh<<endl;
                   d+=(*pmas).dl_msrsh;
                   pmas++;
               }
        }
    cout<<"Srednay dlina="<<d/y<<endl;
    fclose(f1);
 
}
Это я написал, а вот как исправить, чтоб работало, не знаю.
Вот предыдущая программа, которая записывает в "1.dat"
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
#include "iostream"
#include "stdio.h"
using namespace std;
struct MARSH
{
    char start_name[20];
    char finish_name[20];
    int nom_msrsh;
    int dl_msrsh;
}sp;
void main()
{
    FILE *f1;
    f1 = fopen("1.bin","a+b");
    int n;
    cout<<"Vvedite kol-vo zapisey"<<endl;
    cin>>n;
    MARSH mas[100];
    MARSH *pmas;
    pmas=&mas[n];
    for (int i = 0; i < n; i++)
    {
        cout<<"Vvedite nachal'nii punkt"<<endl;
        cin>>pmas[i].start_name;
        cout<<"Vvedite konechnii punkt"<<endl;
        cin>>pmas[i].finish_name;
        cout<<"Nomer marshruta"<<endl;
        cin>>pmas[i].nom_msrsh;
        cout<<"Dlina marshruta"<<endl;
        cin>>pmas[i].dl_msrsh;
    }
    fwrite(&pmas,sizeof(pmas),n,f1);
    fclose(f1);
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.03.2011, 11:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатели на структуры! (C++):

Указатели и структуры - C++
Здравствуйте. Подскажите, пожалуйста, почему не меня среда ругается. error C2440: =: невозможно преобразовать &quot;Book *&quot; в...

Указатели на структуры - C++
type celltype = record elетеt: integer; next: ^celltype end; DICTIONARY = array of ^celltype; какой аналог этой записи...

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

Указатели и структуры - C++
Здравия желаю. Подскажите пожалуйста каким образом осуществляется доступ к полю структуры, если оно является указателем?

Структуры и указатели - C++
Привет форумчане, столкнулся вот с такой вот задачкой на структуры: 1. Описать структуру с именем PRICE, содержащую следующие поля: -...

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

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.03.2011, 11:46
Привет! Вот еще темы с ответами:

Структуры и указатели на структуры - C++
Так ли я сделал? #include &lt;iostream&gt; struct S { int i; }; void f1(S*s1,int k=0){ s1-&gt;i=k;};

Указатели и динамические структуры данных - C++
Задание 1. Дан указатель P1 на вершину стека (если стек пуст, то P1 = nil). Из- влечь из стека все элементы и вывести их...

Указатели и динамические структуры данных - C++
В данный момент занимаюсь изучением динамических структур данных и указателей, и вот вот возник вопрос, есть ли разница изучать эту тему в...

список (в программе обнуляются указатели на структуры) - C++
здравствуйте помогите найти ошибку, при возврате указателя на структуру из функции в функцию майн он обнуляется, это меня сбивает с толку...


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

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

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