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

Структуры: вывести фамилии трех лучших учеников данного класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ запуск файла http://www.cyberforum.ru/cpp-beginners/thread153657.html
народ написал вот такую прогу но незнаю как сделать чтоб открывал файл путь к которому я напишу //Это праграмма которая проверяет код и открывает файл #include <iostream> #include <conio.h> using namespace std; int main () { setlocale(0,"russian"); int password, program;
C++ _tmain(...) вместо main(...) Почему? только что установил MVS 2010. когда создаю новы фаил, то вместо привычной мне функции main() там функция _tmain(int argc, _TCHAR* argv). что это такое? я переделал имье на main(), и вроде бы всё ок. не повлияет никак? http://www.cyberforum.ru/cpp-beginners/thread153652.html
После выполнения программа сразу закрывается и не даёт увидеть результат C++
После выполнения программа сразу закрывается и не даёт увидеть результат если не вставить system("pause"); //Эта программа для сравнения двух целых чисел. #include <iostream> #include <conio.h> using namespace std; int main () { setlocale(0,"russian"); int num1, num2; cout << "Введите два целых числа через пробел и вы\nузнаете в каких соотношениях они находятся:\n";
функции класса раздела private реализуються так же как и раздела public? в смысле виртуальных функций, дружественных функций, и т.д. C++
функции класса раздела private реализуються так же как и раздела public? в смысле виртуальных функций, дружественных функций, и т.д.
C++ Сформировать очеред содержащую весенние даты, упорядоченные только по месяцу и числу. http://www.cyberforum.ru/cpp-beginners/thread153565.html
Здравствуйте. Помогите пожалуйста дорешать задачу: Дан текстовый файл, содержащий даты в формате «день/месяц/год», причем под день месяц отводится по две позиции, а под год – четыре (например, «16/04/2001»). Сформировать очередь содержащую весенние даты, упорядоченные только по месяцу и числу. Задача почти решена: #include <stdio.h> #include <stdlib.h> #include <string.h> int...
C++ Проверка : нажал ли пользователь клавишу Извиняюсь за тупой вопрос. Нужна функция которая проверяет, нажал ли пользователь какую то клавишу или нет. Знаю только наподобие getch() cin.get() cin.peek() но это не то.. если пользователь ничего не нажимал то функции ЖДУТ нажатия, а мне нужно чтоб цикл продолжался без остановок. подробнее

Показать сообщение отдельно
Qwerty_coder
29 / 29 / 2
Регистрация: 14.12.2009
Сообщений: 79
15.07.2010, 21:13     Структуры: вывести фамилии трех лучших учеников данного класса
Держи первое задание... Писал в ms visual 2008, если что...

p.s. единственное, что есть один маленький баг: когда вводишь Ф.И.О., например так, Petrov A.V., то программа зацикливается...
Чтобы этого не было, вводить ФИО нужно слитно, то есть так: Petrov.A.V. без пробелов

Анкета школьника включает в себя Ф.И.О., номер школы, номер класса и оценки по пяти предметам. Вывести фамилии трех лучших учеников данного класса.
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int _getch(void);
 
struct anketa
{
    char FIO[300];
    int num_school, num_class, mark1, mark2, mark3, mark4, mark5, sred;
} a[500], temp;
 
int kod = 0, kol = -1, temp_school = 0, temp_class = 0;
 
int main()
{
    while(true)
    {
        cout << " Add - 1\n Task - 2\n View - 3\n Exit - 0: ";
        scanf("%d", &kod);
        switch(kod)
        {
        case 1:
            //Ввод исходных данных
            kol++;
            cout << "\n\tInput F.I.O.: "; cin >> a[kol].FIO;
            cout << "\tInput school number: "; cin >> a[kol].num_school;
            cout << "\tInput class number: "; cin >> a[kol].num_class;
            cout << "\t--- Input marks ---" << endl;
            cout << "\tInput first mark: "; cin >> a[kol].mark1;
            cout << "\tInput second mark: "; cin >> a[kol].mark2;
            cout << "\tInput third mark: "; cin >> a[kol].mark3;
            cout << "\tInput fourth mark: "; cin >> a[kol].mark4;
            cout << "\tInput fifth mark: "; cin >> a[kol].mark5; cout << endl;
            break;
        case 2:
            cout << "\nInput the school number you like: "; cin >> temp_school;
            cout << "Input the class you like: "; cin >> temp_class;
            cout << "\n--- The best pupils of school N" << temp_school << " class N" << temp_class << "---"<< endl;
            
            //Вычисление среднего балла учеников
            for (int i = 0; i <= kol; i++)
            {
                a[i].sred = (a[i].mark1 + a[i].mark2 + a[i].mark3 + a[i].mark4 + a[i].mark5) / 5;
            }
 
            //Сортировка
            for (int i = 0; i <= kol - 1; i++)
            {
                for (int j = i + 1; j <= kol; j++)
                {
                    if (a[i].sred > a[j].sred)
                    {
                        temp = a[i];
                        a[i] = a[j];
                        a[j] = temp;
                    }
                }
            }
 
            //Вывод задания на экран
            for (int i = kol; i >= kol - 2; i--)
            {
                if (a[i].num_school == temp_school)
                {
                    if (a[i].num_class == temp_class)
                    {
                        cout << "\tF.I.O.: " << a[i].FIO << endl;
                        cout << "\tSchool number: " << a[i].num_school << endl;
                        cout << "\tClass number: " << a[i].num_class << endl;
                        cout << "\tFirst mark: " << a[i].mark1 << endl;
                        cout << "\tSecond mark: " << a[i].mark2 << endl;
                        cout << "\tThird mark: " << a[i].mark3 << endl;
                        cout << "\tFourth mark: " << a[i].mark4 << endl;
                        cout << "\tFifth mark: " << a[i].mark5 << endl;
                        cout << "\tAverage mark: " << a[i].sred << endl; cout << endl;
                    }
                }
            }
            break;
        case 3:
            for (int i = 0; i <= kol; i++)
            {
                a[i].sred = (a[i].mark1 + a[i].mark2 + a[i].mark3 + a[i].mark4 + a[i].mark5) / 5;
            }
            cout << "\n\t--- View ---" << endl;
            for (int i = 0; i <= kol; i++)
            {
                cout << "\tF.I.O.: " << a[i].FIO << endl;
                cout << "\tSchool number: " << a[i].num_school << endl;
                cout << "\tClass number: " << a[i].num_class << endl;
                cout << "\tFirst mark: " << a[i].mark1 << endl;
                cout << "\tSecond mark: " << a[i].mark2 << endl;
                cout << "\tThird mark: " << a[i].mark3 << endl;
                cout << "\tFourth mark: " << a[i].mark4 << endl;
                cout << "\tFifth mark: " << a[i].mark5 << endl;
                cout << "\tAverage mark: " << a[i].sred << endl; cout << endl;
            }
            break;
        case 0:
            //Выход из программы
            char letter = 0;
            cout << endl << "Would you like to leave this programm, input Y / N? "; cin >> letter;
            cout << endl;
            if (letter == 'Y') return 0;
            if (letter == 'N') cout << "Great decision!\n" << endl; 
            break;
        }
    }
 
    _getch();
}
 
Текущее время: 10:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru