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

Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть. Найти ошибку

20.05.2015, 18:58. Показов 3461. Ответов 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 <iostream.h>
#include <string.h>
#include <stdio.h>
 
struct stud
{ char surname[100];
   int klass;
   int math;
   int lit;
   int bio;
   int him;
   int fiz;
} A[10];
void main ()
{ int N,K,i;
  struct stud A[10];
  cout <<"Enter number students:";
  cin >> N;
    for (i=0;i<N;i++){
  cout <<"Enter info about "<< i+1<<" student:\n";
  scanf ("%s",A[i]);}
 
for (i=0;i<N;i++){
  if (A[i].math>3 && A[i].lit>3 && A[i].bio>3 && A[i].him>3 && A[i].fiz>3){
     printf ("Surname:%s\n",A[i].surname);
     N=(A[i].math+A[i].lit+A[i].bio+A[i].him+A[i].fiz)/5;
     printf ("Average rating:%2d\n",N);}}
}
Подскажите пожалуйста, в чём ошибка?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.05.2015, 18:58
Ответы с готовыми решениями:

Распечатать фамилии тех учеников, которые не получили ни одной тройки. С++
Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть. В...

Записи: Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть
2. Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть. В...

Записи.Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть
Распечатать фамилии тех учеников, которые не получили ни одной тройки за последнюю четверть. В...

Распечатать фамилию тех учеников которые не получили ни одной тройки за последнюю четверть
Решите пожалуйста программу на паскале:распечатать фамилию тех учеников которые не получили ни...

3
Эксперт .NET
5858 / 4735 / 2940
Регистрация: 20.04.2015
Сообщений: 8,361
20.05.2015, 19:19 2
Ошибка здесь:
Цитата Сообщение от Samara Посмотреть сообщение
C++
1
scanf ("%s",A[i]);
Нужно вводить отдельно поля структуры.
Ну и если средний бал может быть дробным, например, 3.5, то не получится..
1
0 / 0 / 3
Регистрация: 20.05.2015
Сообщений: 17
20.05.2015, 19:32 3
Лучший ответ Сообщение было отмечено Samara как решение

Решение

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
#include <iostream>
#include <clocale>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    struct stud
    {
        char surname[20];
        int klass;
        int mat;
        int lit;
        int bio;
        int xim;
        int fiz;
    }A[20];
    int a;
    cout <<"Введите количество учеников, которые будут в базе данных (не больше 20) - ";
    cin >>a;
    for(int i=0;i<a;i++)
    {
        cout <<"Заполняем данные про ученика № "<<i+1<<"\n";
        cout <<"Введите фамилию ученика - ";
        cin >> A[i].surname;
        cout <<"Введите класс в котором он учится - ";
        cin >> A[i].klass;
        cout <<"Введите оценку по математике - ";
        cin >> A[i].mat;
        cout <<"Введите оценку по литературе - ";
        cin >> A[i].lit;
        cout <<"Введите оценку по биологии - ";
        cin >> A[i].bio;
        cout <<"Введите оценку по химии - ";
        cin >> A[i].xim;
        cout <<"Введите оценку по физике - ";
        cin >> A[i].fiz;
        cout <<"\n\n";
    }
    int b=0;
    float sr;
    cout <<"Ученики, у которых нет троек за четверть: "<<"\n";
    for(int i=0;i<a;i++)
    {
        if(A[i].mat>3 && A[i].lit>3 && A[i].bio>3 && A[i].xim>3 && A[i].fiz>3)
        {
            b++;
            cout <<"Фамилия - "<<A[i].surname<<"\n";
            cout <<"Класс - "<<A[i].klass<<"\n";
            sr=(A[i].mat+A[i].lit+A[i].bio+A[i].xim+A[i].fiz)/5;
            cout <<"Средний балл - "<<sr<<"\n\n";
        }
    }
    if(b==0)
        cout <<"Таких учеников нет";
    return 0;
}
0
0 / 2 / 1
Регистрация: 14.02.2017
Сообщений: 33
08.03.2017, 10:24 4
последняя программа не работает
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.03.2017, 10:24
Помогаю со студенческими работами здесь

Распечатать фамилии учеников, которые не получили ни одной 3-ки за последнюю четверть
Распечатать фамилии тех учеников, которые не получили ни одной 3-ки за последнюю четверть. В каких...

Распечатать (вывести на экран) фамилии тех учеников, которые не получили ни одной тройки
Разработать программу: - записи подготовленных данных хранятся во внешнем файле с именем...

Комбинированный тип данных (записи). Распечатать фамилии тех учеников, которые не получили ни одной 3 за последнию четверть
помогите решить. Распечатать фамилии тех учеников, которые не получили ни одной 3 за последнию...

Вывести учеников, которые не получили ни одной тройки за последнюю четверть
Uses crt; Type book=Record fam: String; oc1: Byte; oc2: Byte; oc3: Byte; klass: String;...


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

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

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