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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 19, средняя оценка - 4.63
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
#1

Описать структуру с именем AEROFLOT - C++

09.06.2012, 20:41. Просмотров 2917. Ответов 25

Описать структуру с именем AEROFLOT , содержащую следующие поля:
* название пункта назначения рейса;
* номер рейса;
* тип самолета;



Написать программу, выполняющую следующие действия:
* ввод с клавиатуры данных в массив, состоящий из семи элементов типа AEROFLOT; записи должны быть размещены в алфавитном порядке по названиям пунктов назначения;
* вывод на экран пунктов назначения и номеров рейсов, обслуживаемых самолетом, тип которого введен с клавиатуры;
* если таких рейсов нет, выдать на дисплей соответствующее сообщение.

Выдает следующие ошибки. Не могу понять, что не так


Compiling...
строки.cpp
C:\Program Files\Microsoft Visual Studio\MyProjects\строки\строки.cpp(9) : error C2447: missing function header (old-style formal list?)
C:\Program Files\Microsoft Visual Studio\MyProjects\строки\строки.cpp(17) : warning C4518: 'char ' : storage-class or type specifier(s) unexpected here; ignored
C:\Program Files\Microsoft Visual Studio\MyProjects\строки\строки.cpp(17) : error C2146: syntax error : missing ';' before identifier 'as'
C:\Program Files\Microsoft Visual Studio\MyProjects\строки\строки.cpp(17) : fatal error C1004: unexpected end of file found
Error executing cl.exe.

строки.obj - 3 error(s), 1 warning(s)

C++ (Qt)
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include "iostream.h"
#include "conio.h"
#include "string.h"
#include "stdlib.h"
#include "iomanip.h"
#include "stdio.h"
 
struct Aeroflot;
{
 char punkt naznachenia[40];
 int nomer reisa;
 char tip samoleta[20];
}
 
int main(void)
 
char as[7];
int i=0,kol=0;
 
cout<<"Vvedite nazvanie punkta naznachenia reisa(ne bolee 40 simvolov) "<<endl;
cout<<"Vvedite nomer reisa "<<endl;
cout<<"Vvedite tip samoleta(ne bolee 20 simvolov) "<<endl;
 
{
cout<<i+1<<"-aya zapis "<<endl;
cin>> as[i].punkt naznachenia;
cin>> as[i].nomer reisa;
cin>> as[i].tip samoleta;
}
 
qsort(aeroflot, sizeof(aeroflot[0]);
cout<<"Vivod zapisey "<<endl;
 
{
cout<<as[i].punkt naznachenia;
cout<<as[i].nomer reisa;
cout<<as[i].tip samoleta;
}
while(true) {
char poisk samoletov[30];
cout<<"Punkt naznachenia reisa "<<endl;
cin>>poisk samoletov;
bool f=false;
for(i=0;i<kol;i++)
if(strcmp (aeroflot.punkt naznachenia,  poisk samoletov)==0) 
{
cout<<"Nomer reisa "<<endl;
cout<<as[i].nomer reisa;
cout<<"Tip samoleta "<<endl;
cout<<as[i].tip samoleta;
f=true;
}
if(!f);
cout<<"Net takogo punkta naznachenia reisa "<<endl;
}
 
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2012, 20:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать структуру с именем AEROFLOT (C++):

Описать структуру с именем AEROFLOT - C++
Описать структуру с именем AEROFLOT, содержащую следующие поля: • название пункта назначения рейса; • номер рейса; • тип самолета.

Описать структуру с именем AEROFLOT - C++
Вариант 4 1. Описать структуру с именем АЕRОFLОТ, содержащую следующие поля: • NAZN - название пункта назначения рейса; • NUMR -...

Описать структуру с именем Aeroflot - C++
Описать структуру с именем AEROFLOT , содержащую следующие поля: * название пункта назначения рейса; * номер рейса; * тип самолета; ...

Описать структуру с именем AEROFLOT - C++
1. Описать структуру с именем AEROFLOT, содержащую следующие поля: a)название пункта назначения рейса; б)номер рейса; в)тип...

Описать структуру с именем AEROFLOT - C++
Помогите пожалуйста, очень прошу. Описать структуру с именем AEROFLOT, содержащую следующие поля: название пункта назначения рейса,...

Описать структуру с именем AEROFLOT - C++
Ребят, помогите пожалуйста с заданием на С++. 1. Описать структуру с именем AEROFLOT, содержащую следующие поля:  1. название пункта...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
09.06.2012, 22:52  [ТС] #16
never old, спасибо большое! Сейчас буду с сортировкой возиться)

Добавлено через 17 минут
вот окончательный код, он работает!)))

C++ (Qt)
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#include <iostream>
 
using namespace std;
 
struct Aeroflot
{
 char punkt_naznachenia[40];
 int nomer_reisa;
 char tip_samoleta[20];
};
 
int main(){
 
Aeroflot as[7];
int i=0,kol=7;
 
for(i=0;i<kol;i++){
cout<<i+1<<"-aya zapis "<<endl;
cout<<"Vvedite nazvanie punkta naznachenia reisa(ne bolee 40 simvolov) "<<endl;
cin>> as[i].punkt_naznachenia;
cout<<"Vvedite nomer reisa "<<endl;
cin>> as[i].nomer_reisa;
cout<<"Vvedite tip samoleta(ne bolee 20 simvolov) "<<endl;
cin>> as[i].tip_samoleta;
}
 
int temp;
for(i=0;i<kol;i++) {
    if(as[i].nomer_reisa > as[i+1].nomer_reisa) { temp = as[i].nomer_reisa; as[i].nomer_reisa = as[i+1].nomer_reisa; as[i].nomer_reisa = as[i+1].nomer_reisa = temp; continue;} 
cout<<"Vivod zapisey "<<endl;
 
for(i=0;i<kol;i++){
cout<<as[i].punkt_naznachenia<<" ";
cout<<as[i].nomer_reisa<<" ";
cout<<as[i].tip_samoleta<<endl;
}
 
char poisk_samoletov[40];
cout<<"Punkt naznachenia reisa "<<endl;
cin>>poisk_samoletov;
bool f=false;
for(i=0;i<kol;i++)
if(strcmp(as[i].punkt_naznachenia,  poisk_samoletov)==0) 
{
cout<<"Nomer reisa ";
cout<<as[i].nomer_reisa<<endl;
cout<<"Tip samoleta ";
cout<<as[i].tip_samoleta<<endl;
f=true;
}
if(!f){
cout<<"Net takogo punkta naznachenia reisa "<<endl;
}
 
system("pause");
}
return 0;
}
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
09.06.2012, 22:57 #17
У меня такое чувство, что там что-то не так, но я не могу читать такой код. (
never old
8 / 8 / 1
Регистрация: 02.06.2012
Сообщений: 25
09.06.2012, 23:29 #18
Ага, не так.
5 минут, я лучше тогда сам напишу

Добавлено через 17 минут
Как-то так:
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
#include <string>
 
using namespace std;
 
struct Aeroflot
{
 char punkt_naznachenia[40];
 int nomer_reisa;
 char tip_samoleta[20];
};
 
int main(void){
 
Aeroflot as[7];
int i,j,kol=7;
 
for(i=0;i<kol;i++){
cout<<i+1<<"-aya zapis "<<endl;
cout<<"Vvedite nazvanie punkta naznachenia reisa(ne bolee 40 simvolov) "<<endl;
cin>> as[i].punkt_naznachenia;
cout<<"Vvedite nomer reisa "<<endl;
cin>> as[i].nomer_reisa;
cout<<"Vvedite tip samoleta(ne bolee 20 simvolov) "<<endl;
cin>> as[i].tip_samoleta;
}
 
Aeroflot temp;
int adr;
for(i=0;i<kol-1;i++){
    adr=i;
    for(j=i+1;j<kol;j++)
        if(strcoll(as[adr].punkt_naznachenia,as[j].punkt_naznachenia)>0) adr=j;
    if(adr!=i){
        strcpy_s(temp.punkt_naznachenia,as[adr].punkt_naznachenia);
        temp.nomer_reisa = as[adr].nomer_reisa;
        strcpy_s(temp.tip_samoleta,as[adr].tip_samoleta);
        strcpy_s(as[adr].punkt_naznachenia,as[i].punkt_naznachenia);
        as[adr].nomer_reisa = as[i].nomer_reisa;
        strcpy_s(as[adr].tip_samoleta,as[i].tip_samoleta);
        strcpy_s(as[i].punkt_naznachenia,temp.punkt_naznachenia);
        as[i].nomer_reisa = temp.nomer_reisa;
        strcpy_s(as[i].tip_samoleta,temp.tip_samoleta);
    }
}
cout<<"Vivod zapisey "<<endl;
 
for(i=0;i<kol;i++){
cout<<as[i].punkt_naznachenia<<" ";
cout<<as[i].nomer_reisa<<" ";
cout<<as[i].tip_samoleta<<endl;
}
 
char poisk_samoletov[40];
cout<<"Punkt naznachenia reisa "<<endl;
cin>>poisk_samoletov;
bool f=false;
for(i=0;i<kol;i++)
if(strcmp(as[i].punkt_naznachenia,  poisk_samoletov)==0) 
{
cout<<"Nomer reisa ";
cout<<as[i].nomer_reisa<<endl;
cout<<"Tip samoleta ";
cout<<as[i].tip_samoleta<<endl;
f=true;
}
if(!f){
cout<<"Net takogo punkta naznachenia reisa "<<endl;
}
 
system("pause");
}
Еще бы это все в приятный читабельный вид привести и на функции разбить...
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
09.06.2012, 23:41  [ТС] #19
never old, код выдает это

Compiling...
aeroflot.cpp
C:\Program Files\Microsoft Visual Studio\MyProjects\aeroflot\aeroflot.cpp(35) : error C2065: 'strcpy_s' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\aeroflot\aeroflot.cpp(72) : warning C4508: 'main' : function should return a value; 'void' return type assumed
Error executing cl.exe.

aeroflot.obj - 1 error(s), 1 warning(s)
never old
8 / 8 / 1
Регистрация: 02.06.2012
Сообщений: 25
09.06.2012, 23:45 #20
Julia9311, поменяйте тогда все strcpy_s на strcpy

Добавлено через 2 минуты
и в самом конце перед последней }
C++
1
return 0;
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
09.06.2012, 23:48 #21
Цитата Сообщение от Julia9311 Посмотреть сообщение
C:\Program Files\Microsoft Visual Studio\MyProjects\aeroflot\aeroflot.cpp(72) : warning C4508: 'main' : function should return a value; 'void' return type assumed
Какой-то странный warning. Стандарт C++ явно разрешает не возвращать ничего из main.
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
10.06.2012, 00:00  [ТС] #22
теперь при запуске выдает это
--------------------Configuration: aeroflot - Win32 Debug--------------------
Linking...
строки.obj : error LNK2005: _main already defined in aeroflot.obj
Debug/aeroflot.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.

aeroflot.exe - 2 error(s), 0 warning(s)
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
10.06.2012, 00:07 #23
Цитата Сообщение от Julia9311 Посмотреть сообщение
теперь при запуске выдает это
--------------------Configuration: aeroflot - Win32 Debug--------------------
Linking...
строки.obj : error LNK2005: _main already defined in aeroflot.obj
Debug/aeroflot.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.

aeroflot.exe - 2 error(s), 0 warning(s)
В рамках проекта собирается два файла, содержащих main, надо разобраться с файлами.
never old
8 / 8 / 1
Регистрация: 02.06.2012
Сообщений: 25
10.06.2012, 00:07 #24
Julia9311, у Вас в проекте присутствуют другие файлы, в которых так же имеется функция main.
Файл называется "строки". Он Вам нужен в этом проекте?
Julia9311
3 / 3 / 0
Регистрация: 05.11.2011
Сообщений: 190
10.06.2012, 00:12  [ТС] #25
never old, я создала новый проект и все пошло хорошо) большое спасибо вам за помощь!)
dima koz
23 / 17 / 1
Регистрация: 05.06.2012
Сообщений: 72
Записей в блоге: 5
10.06.2012, 18:23 #26
1. курсор на код и ctrl+a , потом del
2. перечитай заново задание, ответь на вопрос зачем тебе структура из массивов?
3. ну и начни примерно так:
#include "stdafx.h"

#include "stdafx.h"
#include "clocale"
#include "limits.h"
#include "windows.h"
#include "iostream"
#include "conio.h"
#include "string.h"
#include "stdio.h"
#include "stdio.h"


using namespace std;

struct Aeroflot
{
char destination;
int flightNumber;
char typeOfAircraft;
};

void main()
{
struct Aeroflot arrAeroflot[7];


}


C++
1
[CPP]
[/CPP]

Добавлено через 3 минуты
1. курсор на код и ctrl+a , потом del
2. перечитай заново задание, ответь на вопрос зачем тебе структура из массивов?
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
25
26
27
28
#include "stdafx.h"
 
#include "stdafx.h"
#include "clocale"
#include "limits.h"
#include "windows.h"
#include "iostream"
#include "conio.h"
#include "string.h"
#include "stdio.h"
#include "stdio.h"
 
 
using namespace std;
 
struct Aeroflot
{
 char destination;
 int flightNumber;
 char typeOfAircraft;
};
 
void main()
{
     struct Aeroflot  arrAeroflot[7];
 
 
}
Добавлено через 14 часов 14 минут
Лови
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
#include "stdafx.h"
#include "clocale"
#include "limits.h"
#include "windows.h"
#include "iostream"
#include "istream"
#include "algorithm"
#include "conio.h"
#include "string.h"
#include "stdio.h"
#include "stdio.h"
#include "string"
 
using namespace std;
 
struct Aeroflot
{
 std::string destination;
 int flightNumber;
 std::string typeOfAircraft;
};
 
 
bool compare(Aeroflot &lhs, Aeroflot &rhs);
//функция перегружена
void ListingarrAeroflot(Aeroflot arrAeroflot[ ]) ;
void ListingarrAeroflot(Aeroflot arrAeroflot[ ],string type);
 
 
void main()
{
    std::setlocale(LC_CTYPE,"Russian");
    struct Aeroflot  arrAeroflot[4];
 
    std::cout<<"Заполнение структур начальной информацией ";
 
    //это ввод данных с консоли,снять комменты
    string stringinput;
    //int intinput;
    //int i;
    //for (i=0; i!=4; i++)
    //{
    //  std::cout<<"Введите пункт назначения ";
    //  cin >> stringinput;
    //  arrAeroflot[i].destination = stringinput;
    //  std::cout<<"Введите номер рейса ";
    //  cin >> intinput;
    //  arrAeroflot[i].flightNumber = intinput;
    //  std::cout<<"Введите тип самолета ";
    //  cin >> stringinput;
    //  arrAeroflot[i].typeOfAircraft = stringinput;
    //}
 
    //это начало вместо ввода, для теста,удалить
    arrAeroflot[0].destination = "Казань";
    arrAeroflot[0].flightNumber = 121;
    arrAeroflot[0].typeOfAircraft = "Boing";
    arrAeroflot[1].destination = "Москва";
    arrAeroflot[1].flightNumber = 122;
    arrAeroflot[1].typeOfAircraft = "Boing";
    arrAeroflot[2].flightNumber = 230;
    arrAeroflot[2].destination = "Анталья";
    arrAeroflot[2].typeOfAircraft = "A320";
    arrAeroflot[3].flightNumber = 231;
    arrAeroflot[3].destination = "Москва";
    arrAeroflot[3].typeOfAircraft = "A320";
    //это окончание вместо ввода, для теста,удалить
 
    //показываем полученный массив структур 
    ListingarrAeroflot(arrAeroflot);
 
    //сортируем
    std::sort(arrAeroflot,arrAeroflot+4,compare);
 
    //показываем массив структур после сортировки
    ListingarrAeroflot(arrAeroflot);
 
    //запрашиваем тип возд.судна
    std::cout<<"Введите нужный вам тип возд.судна ";
    cin >> stringinput;
    ListingarrAeroflot(arrAeroflot,stringinput);
 
    _getch();
}
 
void ListingarrAeroflot(Aeroflot arrAeroflot[ ])
{
    std::cout<<"Просмотр введеных данных "<<endl;
    int i;
 
    for (i=0; i!=4;i++)
    {
        std::cout << arrAeroflot[i].destination <<" -   "<<arrAeroflot[i].flightNumber<<" - "<<arrAeroflot[i].typeOfAircraft<<endl;
 
    }
}
 
void ListingarrAeroflot(Aeroflot arrAeroflot[ ],string type)
{
    std::cout<<"Поиск рейсов нужного типа "<<endl;
    int i;
    //запоминаем значение - найден ли нужный тип самолета вообще
    bool finded = false;
    
    for (i=0; i!=4;i++)
    {
        if (strcmp(arrAeroflot[i].typeOfAircraft.c_str(),type.c_str()) == 0)
        {
        //строки идентичны
            if (!finded)
            std::cout << "По типу судна обнаружены след.рейсы:"<<endl;
 
        finded = true;
        
        std::cout << arrAeroflot[i].destination <<" -   "<<arrAeroflot[i].flightNumber<<" - "<<arrAeroflot[i].typeOfAircraft<<endl;
        }
    }
    if (!finded) 
    {
        std::cout << "По данному типу судна рейсов не обнаружено"<<endl;
    }
 
}
 
bool compare(Aeroflot &lhs, Aeroflot &rhs)
{ 
    bool answer;
 
    if (strcmp(lhs.destination.c_str(),rhs.destination.c_str()) < 0)
    {
        answer = true;
    }
    else
    {
        answer = false;
    }
 
    return answer;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2012, 18:23
Привет! Вот еще темы с ответами:

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

Описать структуру с именем AEROFLOT - C++
Приветик всем! Помогите пожалуйста! Надо переделать программу на Си. Ниже написана подобная программа, но некоторое надо изменить: записи...

Описать структуру с именем AEROFLOT - C++
Описать структуру с именем AEROFLOT, содержащую поля:  1)название пункта назначения рейса;  2)номер рейса;  3)тип самолета. ...

Описать структуру с именем AEROFLOT - C++
Ребята помогите решить задачу для лабы....:cry: Описать структуру с именем AER0FL0T, содержащую следующие поля: • название...


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

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

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