Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
1

Ввести из файла информацию о K студентах группы

16.05.2011, 16:44. Показов 2695. Ответов 10
Метки нет (Все метки)

Информация содержит ФИО студента, год рождения, четыре оценки за экзамены последней сессии. Распечатать данные студентов, получивших в сессию все оценки "5". Имя файла передается через командную строку.
Народ, помогите пожалуйста решить элементарную задачку, а то мне завтра на пару ее нести надо, если не сдам - не получу допуск к зачету... а это будет просто жесть, ибо я хочу в другой ВУЗ перевестись.
я немного знаю Си++, но не умею с gets всякими обращаться.. пожалуйста, выручайте!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.05.2011, 16:44
Ответы с готовыми решениями:

Ввести информацию о 10 студентах группы
Ввести информацию о 10 студентах группы. Информация содержит фамилию, имя, отчество студента, год...

Ввести с клавиатуры информацию о студентах группы и вывести на экран весь список
Ребят буду благодарен, кто поможет решить данный примерчик: 1. Создайте двухмерный массив типа...

Массив структур содержит информацию о студентах группы
/*Массив структур содержит информацию о студентах группы: в первом поле стоит фамилия, во втором...

Напечатать таблицу, содержащую информацию о студентах группы
Задание: напечатать таблицу , содержащую номера , фамилии , оценки и средний балл студентов группы...

10
быдлокодер
1721 / 908 / 106
Регистрация: 04.06.2008
Сообщений: 5,639
16.05.2011, 16:53 2
Имя какого файла передаётся через командную строку?
0
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 17:00  [ТС] 3
Ввести из файла информацию о K студентах группы
любой txt файл, в котором будет написана вся эта инфа о студентах. наверное, каждого студента лучше с новой строчки писать. вот
0
быдлокодер
1721 / 908 / 106
Регистрация: 04.06.2008
Сообщений: 5,639
16.05.2011, 18:29 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
#include <stdio.h>
#include <vector>
#include <fstream>
#include <iostream>
#include <string.h>
using namespace std;
 
//Ñòðóêòóðà "ñòóäåíò, áóäåì å¸ çàïîëíÿòü"
struct student {
 string ima;
 string fam;
 string otch;
 int otsenki [4];
};
 
 
int main (int argc, char* argv[]){
 vector<student> vec;
 student temp;
 
 
 //ÎÒêðûâàåì ôàéë
 ifstream f (argv[1]);
 
 //ñ÷èòûâàåì
 while (f.good()) {
  f>> temp.ima>> temp.fam>> temp.otch>> temp.otsenki[0]>> temp.otsenki[1]>> temp.otsenki[2]>> temp.otsenki[3];
  vec.push_back(temp);
 }
 
 
 //Âûáèðàåì, âûâîäèì
 for (int i= 0; i< vec.size(); i++) {
  if ((vec[i].otsenki[0]==5)&&(vec[i].otsenki[1]==5)&&(vec[i].otsenki[2]==5)&&(vec[i].otsenki[3]==5))
   cout<< vec[i].ima<<" "<<vec[i].fam<<" "<<vec[i].otch<<" "<<vec[i].otsenki[0]<<" "<<vec[i].otsenki[1]<<" "<<vec[i].otsenki[2]<<" "<<vec[i].otsenki[2]<<endl;
 } 
      
 f.close();
 
 return 0;
}
Добавлено через 31 секунду
Я тестировал на этом:
qqq www eee 4 5 3 2
ss dd ff 5 4 3 4
rrr tt yy 5 5 5 5
gg jj kk 4 3 2 1
rrr yyy uuiu 5 5 5 5
1
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 22:43  [ТС] 5
cпасибо огромное)) только Вы забыли год рождения... сейчас сам попробую подправить. только я без понятия что за библиотека vector и как с ней работать...
0
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 22:53  [ТС] 6
всё, все получилось))) СПАСИБО еще раз!! с годом я тоже разобрался)) щас буду читать про <vector>
0
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 23:13  [ТС] 7
kravam, а можете мне объяснить что за "класс". мы еще C++ не проходили, только C, ну или написать все то же самое ,только без использования классов...
0
Jtalk
16.05.2011, 23:33
  #8

Не по теме:

Почему студент, не умеющий писать хелловорлд, носит в нике священное имя величайшей библиотеки всех времен и народов?!

1
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 23:35  [ТС] 9
мм???
0
быдлокодер
1721 / 908 / 106
Регистрация: 04.06.2008
Сообщений: 5,639
16.05.2011, 23:41 10
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
#include <stdio.h>
#include <fstream>
#include <iostream>
#include <string.h>
using namespace std;
 
//Структура "студент, будем её заполнять"
struct student {
 string ima;
 string fam;
 string otch;
 int god_rozh;
 int otsenki [4];
};
 
 
int main (int argc, char* argv[]){
 student temp;
 
 
 //ОТкрываем файл
 ifstream f (argv[1]);
 
 //считываем
 while (f.good()) {
  f>> temp.ima>> temp.fam>> temp.otch>>temp.god_rozh>> temp.otsenki[0]>> temp.otsenki[1]>> temp.otsenki[2]>> temp.otsenki[3];
   //ПРоверяем на равенство условию СРАЗУ ЖЕ; сразу же и выводим
  if ((temp.otsenki[0]==5)&&(temp.otsenki[1]==5)&&(temp.otsenki[2]==5)&&(temp.otsenki[3]==5))
   cout<< temp.ima<<" "<<temp.fam<<" "<<temp.otch<<" "<<temp.god_rozh<<" "<<temp.otsenki[0]<<" "<<temp.otsenki[1]<<" "<<temp.otsenki[2]<<" "<<temp.otsenki[2]<<endl;
 }
 
 
      
 f.close();
 
 return 0;
}
Вот тебе без векторов,даже проще стало, год рождения добавил
Если хочешь на чистом C, то разберись с выводом,
printf это аналог cout;
+++++++++++++++++++++++
C++
1
  f>> temp.ima>> temp.fam>> temp.otch>>temp.god_rozh>> temp.otsenki[0]>> temp.otsenki[1]>> temp.otsenki[2]>> temp.otsenki[3];
Так я построчно считываю из файла строки, стиль С++, на С переводит муторно, ты уж покопайся сам.

Вектор это типа массива, только высокоуровневый. В частности, ты объявляешь вектор элементов типа int и складываешь их туда СКОЛЬКО ДУШЕ УГОДНО. И не паришься что выйдешь за пределы И прочие такие удобства.

Ну а про классы почитай уж где-нибудь
0
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
17.05.2011, 00:12  [ТС] 11
про cin, cout я знаю, спасибо про классы почитаю, ну и наш 2 курс будет им посвящен во многом. Все супер, спасибо)) разобрался))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.05.2011, 00:12

Описать структуру студенты, содержащую информацию о студентах группы
Описать структуру студенты, содержащую информацию о студентах группы: фамилия, имя, отчество, год...

Ввести информацию по 25 студентам из группы. Переписать из исходного массива в другой массив, информацию о девочках
Определить комбинированный тип для представления анкеты студента, состоящей из его фамилии, дня...

Включить информацию о студентах, чей средний балл меньше среднего балла группы
Никак не могу найти ошибку в программе.Требуется записать ФИО, оценки по русскому и математике в...

Найти информацию о студентах каждой группы родившихся в один и тот же месяц и год
Дан массив содержащий данные о студентах( Группа, ФИО, дата рождения) . Найти и вывести всех...


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

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

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