title: Linked List C++. insertion, deletion, search
body: <p>Any advice or guidance would be very great...</p>
  
  <pre><code>  #include &lt;iostream&gt;
    #include &lt;string.h&gt;
  
  
    using namespace std;
  
   struct Book { 
  char title[1024];       // Book name
  int id;                 // Book id or ISBN number
  float price;            // Book price
  struct Book* next;
    } *COLLECTION = NULL;
  
  //-- Forward Declaration --// 
  void menu(); 
  void branching(char option);
  void insertion();
  void printall();
  struct Book* search(); 
  void deletion();
  void quit(struct Book* HEAD);
  
  
   int main()
   {
  char ch; 
  
  cout &lt;&lt; "\n\nWelcome to CSE240: Bookstore\n";
  
  do {
       menu();
  
       ch = tolower(getchar()); // read a char, convert to lower case
       cin.ignore();
  
       branching(ch);
  } while (ch != 'q');
  
  return 0; 
  }
  
   void menu()
      {
  cout &lt;&lt; "\nMenu Options\n";
  cout &lt;&lt; "------------------------------------------------------\n";
  cout &lt;&lt; "i: Insert a book\n";
  cout &lt;&lt; "d: Delete a book\n";
  cout &lt;&lt; "s: Search a book\n";
  cout &lt;&lt; "p: Review your list\n"; 
  cout &lt;&lt; "q: Quit\n";
  cout &lt;&lt; "\n\nPlease enter a choice (i, d, s, p, or q) ---&gt; "; 
   }
  
    void branching(char option)
   {
  switch(option)
  {
      case 'i':
          insertion();
      break;
  
      case 'd':
          deletion();
      break;
  
      case 's':
          search();
      break;
  
      case 'p':
          printall();
      break;
  
      case 'q':
          quit(COLLECTION);
          COLLECTION = NULL;
      break;
  
      default:
          cout &lt;&lt; "\nError: Invalid Input.  Please try again..."; 
      break;
  }
   }
  
  
    void insertion()
    {
  // add code to insert a new book into the COLLECTION linked list.   
  // HINT: You can insert a new book at the beginning of the linked list
  
  
   }
  
    struct Book* search() 
   {    
  // add code to search for an existing book in the COLLECTION linked-list
  // HINT: If no book matches the tile return a error messag
  
  
  
  return NULL;
   }
  
   void deletion()
   {
  // add code to the deletion method. You must call "delete" to remove the object    from the heap.
    }
  
    void printall()
    {
  // Add code to print the book collection.  (HINT: You will need to use a loop.)
  
    }
  
    void quit(struct Book* HEAD)
    {
  // Add code to delete the objects/books from the lniked-list.
  // HINT: Refer to the slides in the homework assignment
  
  
     }
  </code></pre>