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

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

Войти
Регистрация
Восстановить пароль
 
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
#1

Вывести фамилии студентов, которые не получают стипендию и их перечень дисциплин (переделать под объединение и перечисление) - C++

29.05.2013, 18:25. Просмотров 391. Ответов 1
Метки нет (Все метки)

Дан список студентов. Общие поля: Ф.И.О., дата рождения, группа, средний балл. Если средний балл 4 и выше, то указать размер стипендии. Если средний балл ниже, то указать перечень дисциплин с оценками. Вывести фамилии студентов, которые не получают стипендию и их перечень дисциплин.
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
#include <stdio.h>
#include <string.h>
#include <clocale>
 
int main() {
    setlocale(0,"Rus");
    static char res[128][128];
    int res_top = 0;
    printf("Количество студентов: "); 
    /*fflush - функция, чтобы выведенная строка гарантированно попала на экран до ввода пользователя. Её, в принципе, для простоты можно убрать
     gets - считать строку с экрана (читать до перевода строки)*/   
    fflush(stdout);
    int students_count;
    scanf("%d", &students_count);
    int i, k;
    for (i = 0; i < students_count; i++) {
        char name[128];
        printf("Студента %d\nИмя: ", i + 1); 
        fflush(stdout);
        gets(name);
        gets(name);
        char group[128];
        printf("Группа: "); 
        fflush(stdout);
        scanf("%s", group);
        double mark;
        printf("Средний балл: "); 
        fflush(stdout);
        scanf("%lf", &mark);
        if (mark >= 4.0) {
            double grant;
            printf("Стипендия: "); 
            fflush(stdout);
            scanf("%lf", &grant);
        } else {            
            strcpy(res[res_top], name);
            int j = strlen(name);
            /*strcpy - скопировать строку (не класс string, а null-terminated string, то есть массив char'ов),
            в данном случае добавить одну строку к концу другой*/
            strcpy(res[res_top] + j, ": ");
            j += 2;
            printf("Количество предметоов: "); 
            fflush(stdout);
            int subjects_count;
            scanf("%d", &subjects_count); 
            for (k = 0; k < subjects_count; k++) {                
                char name[128];
                printf("Предметы %d\nИмя: ", i + 1); 
                fflush(stdout);
                scanf("%s", name);
                strcpy(res[res_top] + j, name);
                /*strlen - получить длину строки*/
                j += strlen(name);
                strcpy(res[res_top] + j, ", ");
                j += 2;
                int mark;
                printf("Оценка: "); 
                fflush(stdout);
                scanf("%d", &mark);
            }
            res_top++;
        }
    }
    
    for (i = 0; i < res_top; i++) {
        res[i][strlen(res[i]) - 2] = 0;
        puts(res[i]);
    }
    return 0;
}
Прога рабочая, нужно переделать под объединение и перечисление
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.05.2013, 18:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести фамилии студентов, которые не получают стипендию и их перечень дисциплин (переделать под объединение и перечисление) (C++):

Вывести фамилии студентов, которые не получают стипендию и их перечень дисциплин - C (СИ)
4. Дан список студентов. Общие поля: Ф.И.О., дата рождения, группа, средний балл. Если средний балл 4 и выше, то указать размер стипендии....

Вывод студентов, которые получают стипендию, в виде таблицы - Turbo Pascal
Помогите решить. Для студентов некоторой группы задана следующая информация: порядковый номер, ФИО, дата рождения, курс, год поступления, и...

Списки. Вывести первых 3 студентов, которые получат стипендию - Prolog
Всем привет! Нужно чтобы выводило первых 3 студентов, которые получат стипендию. Какие предложения с чего начать? domains fi,...

В файле, содержащем фамилии студентов и их оценки, записать большими буквами фамилии тех студентов, которые имеют средний балл более "4". - Java SE
В файле, содержащем фамилии студентов и их оценки, записать большими буквами фамилии тех студентов, которые имеют средний балл более &quot;4&quot;. ...

Найти и вывести фамилии тех студентов, которые все экзамены сдали на 9 - PascalABC.NET
Даны оценки группы студентов на экзаменах по 4 предметам: алгебре, геометрии, философии, информатике. Найти и вывести фамилии тех...

Найти и вывести фамилии тех студентов, которые все экзамены сдали на 9 - Pascal
Даны оценки группы студентов на экзаменах по 4 предметам: алгебре, геометрии, философии, информатике. Найти и вывести фамилии тех...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
DRUNY195
2 / 2 / 0
Регистрация: 04.04.2013
Сообщений: 247
07.06.2013, 19:52  [ТС] #2
нужно только переделать!!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.06.2013, 19:52
Привет! Вот еще темы с ответами:

Найти и вывести фамилии тех студентов, которые на экзаменах получили не ниже 7 баллов - Pascal
Даны оценки группы студентов на экзаменах по 4 предметам: алгебре, геометрии, философии, информатике. Найти и вывести фамилии тех...

Записи. Вывести фамилии студентов, которые играют волейбол, рост которых превышает 180 см - Pascal ABC
Помогите плиз решить вот такую вот задачу: Есть ведомость про студентов группы.Вывести фамилии тех студентов,которые играют волейбол,и...

Вывести на экран фамилии тех студентов, которые не выполнили и не сдали хотя бы одну работу - Free Pascal
Program lab3; uses Crt; type vedomost=record nz_pr:string; nom_gr:string;

Вывести на экран фамилии тех студентов, которые уже получили неполное высшее образование - Pascal ABC
Информация о студентах университета хранится в следующем порядке: фамилия, имя (и отчество), пол, группа, сведения по послед- ней сессии...


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

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

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