Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2012, 20:19   #1
KatCH
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 54
По умолчанию Поэтапный вывод с текстового файла

Здравствуйте!
Имеется текстовый файл, такого вида:
Цитата:
q1. question
a1.1 answer
a1.2 answer

q2. question
a2.1 answer
a2.2 answer
a3.1 answer
a4.2 answer

qN. question
aN.1 answer
....
Где q- это вопрос, а - ответ. Задача состоит в том, что бы поочередно выводить их(текст) в консоль. Начал копать в сторону multimap, но пока глухо Быть может, кто-то владеет скилом использования в с++ динамического двумерного массива? Буду рад помощи и советам.
KatCH вне форума Ответить с цитированием
Старый 03.12.2012, 00:18   #2
_Bers
Старожил
 
Регистрация: 16.12.2011
Сообщений: 2,329
По умолчанию

Цитата:
Сообщение от KatCH Посмотреть сообщение
Здравствуйте!
Имеется текстовый файл, такого вида:

Где q- это вопрос, а - ответ. Задача состоит в том, что бы поочередно выводить их(текст) в консоль. Начал копать в сторону multimap, но пока глухо Быть может, кто-то владеет скилом использования в с++ динамического двумерного массива? Буду рад помощи и советам.
В языке с++ не существует динамических массивов.

Алгоритм решения задачи:
1. Читаем файл построчно и тут же выводим в консоль.
2. Профит.
_Bers вне форума Ответить с цитированием
Старый 03.12.2012, 08:50   #3
Murashov
Форумчанин
 
Аватар для Murashov
 
Регистрация: 30.10.2012
Сообщений: 121
По умолчанию

а что-то вроде такого если..?
Код:
i=0...n
    fscanf(fp, "%s", &test[i].vopr);
     j=0...4
        fscanf(fp, "%s", &test[i].otv[j]);
при массиве структуры

Код:
struct bd
{
    char vopr[20];//допустим 20 символов под вопрос выделили
    char otv[4][20];//4 строчки
}test;
ну или можно стринги использовать

Последний раз редактировалось Murashov; 03.12.2012 в 08:53.
Murashov вне форума Ответить с цитированием
Старый 03.12.2012, 08:57   #4
Murashov
Форумчанин
 
Аватар для Murashov
 
Регистрация: 30.10.2012
Сообщений: 121
По умолчанию

а динамически двумерный массив можно выделить так:

Код:
int **mem=(int**) malloc(M*sizeof(int));
for(i=0; i<M; i++)
        mem[i]=(int*) malloc(N*sizeof(int));
...
free(mem);
для int. char всё тоже самое, только на sizeof(char) можно не умножать, т.к. он везде занимает еденицу, в отличии от int
Murashov вне форума Ответить с цитированием
Старый 03.12.2012, 09:59   #5
KatCH
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 54
По умолчанию

Спасибо всем откликнувшимся
Поздно ночью сделал с помощью вектора.
Сперва добавил "разделители" в файл:
Цитата:
q1. question
a1.1 answer
a1.2 answer
-
q2. question
a2.1 answer
a2.2 answer
a3.1 answer
a4.2 answer
-
qN. question
aN.1 answer
-
....
После организовал поэтапный вывод вопросов с ответами, след. образом:
Код:
while (!ifs.eof())
		{
			string tmp;
int i =0;
			getline(ifs, tmp);
			Vec.push_back(tmp);
			system("CLS");
			if (tmp[0]=='-')
			{
i+=1;
				cout<<"Question # "<<i<<endl;
				for(vector<string>::const_iterator it=Vec.begin(); it!=Vec.end(); ++it)
				{
					
					cout<<*it<<endl;
					
				}
				Vec.clear();
			}
		}
KatCH вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод информации из текстового файла на несколько страниц mazay66 PHP 6 25.04.2012 18:40
чтение из текстового файла в структуру TRAIN и вывод информации по запросу (Паскаль) Arabic_Coffee Помощь студентам 0 14.05.2011 21:11
Вывод текстового файла в Stringgrid KingWaR56 Помощь студентам 1 26.04.2011 18:39
Текст вводится из текстового файла произвольной длины; вывод результатов на экран, принтер или в файл kestugar Помощь студентам 1 29.03.2011 19:09
Вывод текстового файла на печать. XerSon Общие вопросы Delphi 2 04.05.2010 11:21