#include #include using namespace std; void insertItem(string newItem, string target, list &groceryList) { list ::iterator lit; for (lit = groceryList.begin(); lit != groceryList.end(); lit++) { if (*lit == target) { groceryList.insert(lit, newItem); break; } } if (lit == groceryList.end()) groceryList.push_back(newItem); } int main(int argc, char **argv) { list groceries; list ::iterator lit; string s; int i; for (i = 1; i < argc; i++) { groceries.push_back(argv[i]); } for (lit = groceries.begin(); lit != groceries.end(); lit++) { cout << *lit << " "; } cout << endl; // enter a name to insert and where to insert it string name, target; cout << "enter a name to insert and where to insert it: "; while (cin >> name >> target) { insertItem(name, target, groceries); for (lit = groceries.begin(); lit != groceries.end(); lit++) { cout << *lit << " "; } cout << endl; } }