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

Структуры(ввод...) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разбиение строки на слова http://www.cyberforum.ru/cpp-beginners/thread126084.html
записываем слова через токен в массив))) не работает if который сразу после for помогите плиз....))) заранее спасибо)))) в конце само общее задание)))) #include "stdafx.h"
C++ Strings По воле случая я со строками не дружу, и с ними вообще не сталкиваюсь. Меня попросили выполнить задание, и я хочу переадресовать его вам, так как время тоже теряется. "Для произвольного текста,... http://www.cyberforum.ru/cpp-beginners/thread126078.html
Обработка строк. C++
Определить, сколько раз в строке встречается последовательность символов «ВЕС».
C++ RSA-степень-переполнение
Хай. Проблема: нужно возводить в степень большие числа (это для шифрования методом RSA). НО: если результат меньше 19 знаков, то все в порядке. А если больше - не считает, т.к. выходит за диапазон...
C++ перевод из строк в числа http://www.cyberforum.ru/cpp-beginners/thread126031.html
помогите с корректированием задачи: дан текст, содержащий целые числа, составить программу, которая выводит на экран минимальное из чисел. тут идея с поиском в строке целых чисел и закидыванием...
C++ Информация о типе Есть ли в сях возможность прочитать класс объекта в строку, заканчивающуюся нулём? Известно, что базовый класс имеет виртуальные члены. Не известно, является ли фактический класс базовым. Перегрузка... подробнее

Показать сообщение отдельно
Bi-2
0 / 0 / 0
Регистрация: 24.02.2010
Сообщений: 17
06.05.2010, 16:25  [ТС]
C++
1
2
3
4
5
6
7
8
9
10
int n = 0;
cout << "Введите количество студентов: ";
cin >> n;
 
STUDENT b = new STUDENT[n];
 
// остальной код. здесь работаешь как и с обычным массивом.
 
// в конце не забыть освободить выделенную память
delete[] b;
вставил.....ошибок-туча(((

Error 1 error C2440: 'initializing' : cannot convert from 'STUDENT *' to 'STUDENT'
Error 2 error C2057: expected constant expression 19
Error 3 error C2466: cannot allocate an array of constant size 0 19

Error 4 error C2133: 'M' : unknown size
Error 5 error C2057: expected constant expression 43
Error 6 error C2466: cannot allocate an array of constant size 0 43
Error 7 error C2057: expected constant expression 44
Error 8 error C2466: cannot allocate an array of constant size 0 44
Error 9 error C2065: 'N' : undeclared identifier 65
Error 10 error C2065: 'b' : undeclared identifier 111
Error 11 error C2541: 'delete' : cannot delete objects that are not pointers
получился код:

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
#include <iostream>                          //Подключаем библиотеку функций ввода-вывода
#include <string>                            //Подключаем библиотеку для работы со строками
#include "main.h"                              //Подключаем заголовочный файл с описанием структуры СТУДЕНТ
 
using namespace std;
//Объявляем функции 
//Главная функция
void main()
{
    int N = 0;
cout << "Введите количество студентов: ";
cin >> N;
 
STUDENT b = new STUDENT[N];
    
    STUDENT M[N];//Массив записей о студентах (N элементов)
    int i,j;                                   //Переменные циклов
    
 
    cout<<"Vvedite informaciu o studentah:"<<endl;  //Вывод "Введите информацию о студентах"
    
    for (i=0; i<N; i++)                       //Цикл по всем записям
    {
        cout<<"Student "<<i+1<<":"<<endl;      //Вывод "Студент 1..10"
        cout<<"FIO: ";                         //Вывод "ФИО"
    
        cin>>M[i].FIO;                         //Ввод ФИО
        cout<<"Gruppa: ";                      //Вывод "Группа"
        
        cin>>M[i].group;                       //Ввод группы
        for (j=0; j<5; j++)                    //Цикл по пяти оценкам
        {
            cout<<"Ocenka "<<j+1<<": ";        //Вывод "Оценка 1.. 5"
        
            cin>>M[i].ocenki[j];               //Ввод j-ой оценки
        }
    }
 
/////////////////////////////////////////////////////////////////////////
void sortM(STUDENT S[N]);                     //Сортировка списка студентов по фамилии в алфавитном порядке
void student2(STUDENT S[N]);                  //Определение студентов хотя бы с одной двойкой            
///////////////////////////////////////////////////////////////////////////
 
 
    sortM(M);                                  //Вызов функции сортировки записей
                                               //Вывод "Упорядоченный массив записей по ФИО"
    cout<<endl<<"Uporyadochennii massiv zapisei po FIO:"<<endl;
    for (i=0; i<N; i++)                       //Цикл по всем 10 записям
                                               //Вывод "ФИО, группа, оценки"
        cout<<M[i].FIO<<"    "<<M[i].group<<"    "<<M[i].ocenki[0]<<
            "  "<<M[i].ocenki[1]<<"  "<<M[i].ocenki[2]<<"  "<<
            M[i].ocenki[3]<<"  "<<M[i].ocenki[4]<<endl;
    student2(M);                               //Вызов функции определения студентов с двойками
 
}
 
 
 
 
//Функция сортировки списка студентов по фамилии в алфавитном порядке
//Входной параметр S - массив записей о студентах
void sortM(STUDENT S[N])
{
    STUDENT tmp;                               //Хранит временно данные о студенте (используется в сортировке)
    bool sort = true;                          //Указывает нужно сортировать или нет
    int i;                                     //Счетчик цикла
    //Сортировка методом пузырька
    while (sort)                               //Цикл (пока нужно сортировать)
    {
        sort=false;                            //Делаем предположение, что сортировать уже не нужно
        for (i=0; i<N-1; i++)                    //Просматриваем все записи минус один
            if (strcmp(S[i].FIO,S[i+1].FIO)>0) //strcmp - функция сравнения строк, если первая больше второй 
            {
                tmp=S[i];                      //Меняем эти строки местами
                S[i]=S[i+1];
                S[i+1]=tmp;
                sort=true;                     //Считаем, что нужно дальше сортировать
            }
    }                                          //Конец цикла (пока нужно сортировать)
}
 
//Функция определения студентов хотя бы с одной двойкой
//Входной параметр S - массив записей о студентах
void student2(STUDENT S[N])
{
    STUDENT T[N];                             //Массив "двоечников"
    int i,j;                                   //Переменные циклов
    int k = 0;                                 //Количество "двоечников" (пока 0)
    for (i=0; i<N; i++)                       //Смотрим по всем записям
    {
        for (j=0; j<5; j++)                    //Смотрим все оценки студента
            if (S[i].ocenki[j]==2)             //Если нашли двойку
            {
                T[k]=S[i];                     //Добавляем запись о студенте в массив "двоечников"
                k++;                           //Увеличиваем число двоечников на 1
                break;                         //Выходим из цикла по оценкам
            }
    }
    if (k>0)                                   //Если есть студенты с двойками
    {
        cout<<endl<<"Studenti, imeuschie dvoiki:"<<endl;  //Вывод "Студенты, имеющие двойки"
    
        for (i=0; i<k; i++)                    //Выводим всех студентов с двойками
            cout<<T[i].FIO<<"    "<<T[i].group<<endl;
    }
    else                                       //Если студентов с двойками не найдено
        cout<<endl<<"Net studentov s dvoikami"<<endl;  //Вывод "Нет студентов с двойками"
 
}
delete[] b;
напишите все что нужно сразу с моим кодом плз!(((( ГОРЮ!((((
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru