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

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

Войти
Регистрация
Восстановить пароль
 
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 16:44     Ввести из файла информацию о K студентах группы #1
Информация содержит ФИО студента, год рождения, четыре оценки за экзамены последней сессии. Распечатать данные студентов, получивших в сессию все оценки "5". Имя файла передается через командную строку.
Народ, помогите пожалуйста решить элементарную задачку, а то мне завтра на пару ее нести надо, если не сдам - не получу допуск к зачету... а это будет просто жесть, ибо я хочу в другой ВУЗ перевестись.
я немного знаю Си++, но не умею с gets всякими обращаться.. пожалуйста, выручайте!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2011, 16:44     Ввести из файла информацию о K студентах группы
Посмотрите здесь:

Описать структуру студенты, содержащую информацию о студентах группы C++
Ввести сведения о результатах экзаменационной сессии группы C++
Создать таблицу с записями о студентах учебной группы. Записи содержат следующие данные: C++
C++ Создать файл, содержащий информацию о студентах
Структуры. Ввести и записать в файл информацию о расписании занятий 11 класса C++
C++ Дана информация студентах (структура с полями: ФИО и 4 оценки за экзамен). Вывести данные о студентах, сдавших сессию на отлично.
C++ Вывести информацию о студентах, в которых доход на члена семьи меньше двух минимальных зарплат
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,302
16.05.2011, 16:53     Ввести из файла информацию о K студентах группы #2
Имя какого файла передаётся через командную строку?
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 17:00  [ТС]     Ввести из файла информацию о K студентах группы #3
Ввести из файла информацию о K студентах группы
любой txt файл, в котором будет написана вся эта инфа о студентах. наверное, каждого студента лучше с новой строчки писать. вот
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,302
16.05.2011, 18:29     Ввести из файла информацию о K студентах группы #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
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 22:43  [ТС]     Ввести из файла информацию о K студентах группы #5
cпасибо огромное)) только Вы забыли год рождения... сейчас сам попробую подправить. только я без понятия что за библиотека vector и как с ней работать...
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 22:53  [ТС]     Ввести из файла информацию о K студентах группы #6
всё, все получилось))) СПАСИБО еще раз!! с годом я тоже разобрался)) щас буду читать про <vector>
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 23:13  [ТС]     Ввести из файла информацию о K студентах группы #7
kravam, а можете мне объяснить что за "класс". мы еще C++ не проходили, только C, ну или написать все то же самое ,только без использования классов...
Jtalk
16.05.2011, 23:33
  #8

Не по теме:

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

Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
16.05.2011, 23:35  [ТС]     Ввести из файла информацию о K студентах группы #9
мм???
kravam
быдлокодер
 Аватар для kravam
1513 / 873 / 44
Регистрация: 04.06.2008
Сообщений: 5,302
16.05.2011, 23:41     Ввести из файла информацию о K студентах группы #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 и складываешь их туда СКОЛЬКО ДУШЕ УГОДНО. И не паришься что выйдешь за пределы И прочие такие удобства.

Ну а про классы почитай уж где-нибудь
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2011, 00:12     Ввести из файла информацию о K студентах группы
Еще ссылки по теме:

C++ Дан массив записей, содержащий сведения о студентах группы
C++ Ввести информацию о семи покупателях, ввести название товара и вывести тех людей, кто купил этот товар
Ввести и записать в файл информацию о книгах C++
Из файла с информацией о студентах узнать номер курса с наибольшим процентом мужчин C++
Напечатать таблицу, содержащую информацию о студентах группы C++

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

Или воспользуйтесь поиском по форуму:
Boost
2 / 2 / 0
Регистрация: 05.01.2011
Сообщений: 48
17.05.2011, 00:12  [ТС]     Ввести из файла информацию о K студентах группы #11
про cin, cout я знаю, спасибо про классы почитаю, ну и наш 2 курс будет им посвящен во многом. Все супер, спасибо)) разобрался))
Yandex
Объявления
17.05.2011, 00:12     Ввести из файла информацию о K студентах группы
Ответ Создать тему
Опции темы

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