0 / 0 / 0
Регистрация: 06.06.2017
Сообщений: 4
1

Составить списки неуспевающих студентов, распределив их по группам

07.06.2017, 12:01. Показов 736. Ответов 0
Метки нет (Все метки)

Нужна помощь с результирующим составлением списков неуспевающих и распределением их по группам, не знаю как это сделать.

· Результирующая информация должна быть занесена в один или несколько файлов согласно индивидуальному условию;

Экзаменационная сводная ведомость содержит группу, номер зачетной книжки, фамилию и инициалы, оценку по 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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <fstream>
#include<time.h>
 
 
typedef struct {
    char inicialy[40];
    char group[20];
    int russ;
    int matem;
    int programm;
    int angl;
    int nomer_kniga;
    float sr_ochenka;
} vedomost;
 
//Функция ввода данных
void fun_vvoda()
{
    vedomost s; int i, n;
    FILE* pf_in; pf_in = fopen("file_isx.txt", "w");
    printf("Введите количество ведомостей:  ");
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        printf("Введите инициалы: ");
        scanf("%s", &s.inicialy);
        printf("Ввидите группу: ");
        scanf("%s", &s.group);
        printf("Введите номер книги: ");
        scanf("%d", &s.nomer_kniga);
        printf("Введите оценку по русскому: ");
        scanf("%d", &s.russ);
        printf("Введите оценку по математике: ");
        scanf("%d", &s.matem);
        printf("Введите оценку по программированию: ");
        scanf("%d", &s.programm);
        printf("Введите оценку по английскому: ");
        scanf("%d", &s.angl);
        s.sr_ochenka = (s.russ + s.matem + s.programm + s.angl) / 4.0;
        fprintf(pf_in, "%s  %s  %d  %d  %d  %d  %d  %1.1f  \n", s.inicialy, s.group, s.nomer_kniga, s.russ, s.matem, s.programm, s.angl, s.sr_ochenka);
    }
    fclose(pf_in);
    }
 
//Функция вывода
void fun_vuv_isx()
{
    vedomost s; int i, n;
    FILE* pf_in; pf_in = fopen("file_isx.txt", "r");
    printf("\n Исходный список \n");
    printf("\n ___________________________________________________________________ \n");
    while (!feof(pf_in))
    {
        fscanf(pf_in, "%s  %s  %d  %d  %d  %d  %d  %f  \n", &s.inicialy, &s.group, &s.nomer_kniga, &s.russ, &s.matem, &s.programm, &s.angl, &s.sr_ochenka);
        printf("\n  %-10s   %-10s   %-10d   %-1d   %-1d   %-1d   %-1d   %-1.1f", s.inicialy, s.group, s.nomer_kniga, s.russ, s.matem, s.programm, s.angl, s.sr_ochenka);
        printf("\n");
    }
        fclose(pf_in);
}
 
//Функция обработки данных
void fun_obrab(int *k)
{
    vedomost s; int i, n, kol = 0;
    FILE* pf_in;  pf_in = fopen("file_isx.txt", "r");
    FILE* pf_out; pf_out = fopen("file_res.txt", "w");
    while (!feof(pf_in))
    {
        fscanf(pf_in, "%s  %s  %d  %d  %d  %d  %d  %f  \n", &s.inicialy, &s.group, &s.nomer_kniga, &s.russ, &s.matem, &s.programm, &s.angl, &s.sr_ochenka);
        if (s.sr_ochenka < 4) kol++;
            fprintf(pf_out, "%s  %s  %d  %d  %d  %d  %d  %1.1f  \n", s.inicialy, s.group, s.nomer_kniga, s.russ, s.matem, s.programm, s.angl, s.sr_ochenka);
    }
    *k = kol;
    printf("\n");
    printf("Обработка завершена");
    fclose(pf_in);
    fclose(pf_out);
}
int main()
{
    setlocale(0, "RUS");
    int kol_neysp, sr_ochenka;
    fun_vvoda();
    fun_vuv_isx();
    fun_obrab(&kol_neysp);
    printf("\n\n kol_neysp = %d", kol_neysp);
    _getch();
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.06.2017, 12:01
Ответы с готовыми решениями:

Составить списки трех груп, равномерно распределив студентов по успеваемости в каждую из груп
Кто поможет написать алгоритм?Очень надо! Задан список из N абитуриентов, поступивших в вуз (в...

Вывести списки студентов по группам
Помогите пожалуйста в задаче, во условие: Написать программу формирования сведения об успеваемости...

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

Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов)
Задача: Дан массив структур, содержащий сведения об успеваемости по информатике группы из 25...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.06.2017, 12:01
Помогаю со студенческими работами здесь

Распечатать списки студентов по группам
Написать программу формулирования ведомости об успеваемости студентов. Каждая запись этой ведомости...

Определите количество неуспевающих студентов
Дана матрица А, имеющая 30 строк и 10 столбцов, содержащая оценки группы за первый семестр....

Подсчитать количество неуспевающих студентов
Дана матрица A, имеющая 30 строк и 10 столбцов, содержащая оценки группы за первый семестр....

Подсчитать количество неуспевающих студентов
Дана матрица A, имеющая 30 строк и 10 столбцов, содержащая оценки группы за первый семестр....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru