Переполнение стека в параллельных массивах родительско-дочерних пар

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

This program prints parent-child pairs.
Enter parents and children below, use 'quit' to stop.
Parent: Kronos
How many children does Kronos have? 4
Children of Kronos: Hera Zeus Poseidon Hades
Parent: Hera
How many children does Hera have? 2
Children of Hera: Ares Heph
Parent: Zeus
How many children does Zeus have? 1
Children of Zeus: Athena
Parent: quit

Child    Parent
-----    ------
Ares     Hera
Athena   Zeus
Hades    Kronos
Heph     Hera
Hera     Kronos
Kronos
Poseidon Kronos
Zeus     Kronos

В настоящее время я пытаюсь настроить ввод данных. Я попытался использовать строки для имени родителя и детей и массив для числа детей; тем не менее, код не работает должным образом. Вот что у меня так далеко:

#include <iostream>
using namespace std;

int main()
{
string parent;
int childnum;
string childname;

cout << "This program prints parent-child pairs.
cout << "Enter parents and  children below, use 'quit' to stop."cout << "Parent: ";
for (int a = 0; a < 100; a++)
{
cin >> parent[a];
while (parent != "quit")
{
for (int i = 0; i < 100; i++)
{
cout << "How many children does " << parent[a] << " have? ";
cin >> childnum;
cout << "Children of " << parent[a] << ": ";
for (int b = 0; b < childnum; b++)
{
cin >> childname[a];
}

}
}
}
}

Я еще не запустил функцию сортировки, так как ввод данных еще не работает. Я думаю, что есть что-то ошибочное в цикле for, поскольку он повторяется до тошноты

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]