如何解决2次输入后没有迭代的排序链表问题
我的排序列表的代码是这样的:
#include<iostream>
using namespace std;
class node
{
int data;
node *next;
public:
node *head = NULL;
void *newnode(int new_data)
{
node* new_node = new node();
new_node -> data = new_data;
new_node -> next = NULL;
if(head==NULL)
head = new_node;
else
{
node *prev = NULL;
node *current = head;
while (current->next != NULL
&& new_node -> data > current->data) {
prev = current;
current = current->next;
}
new_node->next = current;
prev->next = new_node;
}
}
void printList()
{
node *temp = head;
while (temp != NULL) {
cout << temp->data << " ";
temp = temp->next;
}
}
};
int main(){
node *n1 = new node();
int val;
int choice ;
do{
cout<< "Choice";
cout<< "1. Enter Data" << endl << "2. display Sorted List" << endl << "3. Exit";
cin >> choice;
switch(choice){
case 1:
cout<< "Enter The Data You Want To Insert";
cin >> val;
n1->newnode(val);
break;
case 2:
n1->printList();
break;
case 3:
exit(0);
}
} while (choice!=3);
}
输出仅提供两次添加数据的选项,然后自动退出。有人可以指出我的问题吗? 输出:
Choice1. Enter Data
2. display Sorted List
3. Exit1
Enter The Data You Want To Insert4
Choice1. Enter Data
2. display Sorted List
3. Exit1
Enter The Data You Want To Insert6
11.48秒后退出,返回值3221225477 按任意键继续 。 。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。