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

Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов) - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
bubik
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 21
22.05.2013, 20:55     Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов) #1
Задача:
Дан массив структур, содержащий сведения об успеваемости по информатике группы из 25 студентов.
Структура содержит следующие сведения:
1)Ф.И.О
2)4 оценки, отражающие его успеваемость в течении семестра.

Вывести на экран список неуспевающих студентов, имеющих хотя бы одну 2.

Комментарии к задаче:
Второе поле int massiv[4]
Список студентов и оценки забить в структуру, т.е создается массив структуры из 25 студентов.
Забивать студентов так:
for (i=0;i<=25;i++) // Массив студентов
for (i...) // Массив оценок
Обращение к полю, пример: massiv.FIO


Программа выводит неверный ответ. Когда я ввожу оценки, и среди них есть 2, то программа все равно выводит, что "двоечников нет", хотя они есть. Помогите исправить, пожалуйста!!!

Вот код программы:
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
#include "stdafx.h"
#include <stdio.h>
#include <locale>
#include <conio.h>
 
 
struct student {
char FIO[30];
int oc[4];};
 
const int n=2;
int i,j, c=0, k=0;
 
struct student stud[n];
 
void _tmain()
{
for (i=0;i<n;i++)
{printf("Vvedite FIO: \n");
scanf("%s", &stud[i].FIO);
printf("Vvedite ocenki: \n");
for(j=0;j<4;j++)
scanf("%d", &stud[i].oc [j]);
}
 
printf("Dvoechniki: \n");
for(i=0;i<n;i++)
{c=0;
for(j=0;j<4;j++)
{if(stud[i].oc[j]<2)
c++;
}
if(c!=0)
{printf("%s", &stud[i].FIO);
printf("\n");
k++;
}
}
if(k==0)
printf("Dvoechnikov net! \n");
printf("\n");
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2013, 20:55     Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов)
Посмотрите здесь:

C++ сведения об успеваемости студентов
C++ Программа контроля успеваемости студентов
Разработать класс "зачетная книжка", содержащий информацию об успеваемости студентов C++
C++ Вывести список неуспевающих студентов(в алфавитном порядке)
Дан массив студентов ВУЗа: ФИО, возраст, регион, факультет. Вывести на экран результирующую таблицу: регион, количество студентов из этого региона C++
Программа об успеваемости студентов C++
Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году. C++
C++ Вывести в новый файл список студентов, удалив из него студентов окончивших школу в текущем году

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SpeZnaC
3 / 3 / 0
Регистрация: 18.05.2013
Сообщений: 11
22.05.2013, 21:04     Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов) #2
if(stud[i].oc[j]<2) исправь на if(stud[i].oc[j]<=2)
bubik
0 / 0 / 0
Регистрация: 18.12.2012
Сообщений: 21
22.05.2013, 21:14  [ТС]     Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов) #3
Точно же...)
Спасибо огромное!)
Yandex
Объявления
22.05.2013, 21:14     Программа выводит неверный ответ (дан массив структур, содержащий сведения об успеваемости студентов - вывести список неуспевающих студентов)
Ответ Создать тему
Опции темы

Текущее время: 10:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru