#include<stdio.h>
#include<iostream>
using namespace std;
struct record { // Link list
int value;
struct record *next;
};
void print(struct record *head) { // Use for showing the list
struct record *tmp;
tmp = head;
cout<<"List: ";
while (tmp != NULL) {
cout<value<<" ";
tmp = tmp->next;
}
cout<<endl;
}
void menu() // Use for showing the menu
{
cout<<"=============Menu===========\n";
cout<<" 1) Insert\n";
cout<<" 2) Print\n";
cout<<" 3) Exit\n";
cout<<"Please choose > ";
}
struct record *insert(struct record *head, int data) // Use for inserting the data
{
struct record *node, *p;
if (head == NULL) { // First insert
head = new struct record;
head->value = data;
head->next = NULL;
}
else { // head != NULL
node = new struct record;
node->value = data;
if (data < head->value) { // Front insert
node->next = head;
head = node;
}
else {
p = head;
while (p != NULL) {
if (data < p->next->value) { // Middle insert
node->next = p->next;
p->next = node;
break;
}
else if (p->next == NULL && data > p->value) { // Last insert
node->next = p->next;
p->next = node;
break;
}
else {
p = p->next;
}
}
}
}
return head;
}
int main()
{
struct record *head;
bool Doing = true;
int choose;
while (Doing) {
menu();
cin>>choose;
if (choose == 1) { // Insert data
int data;
cout<<"Insert: ";
cin>>data;
head = insert(head, data);
}
else if (choose == 2) { // Print link list
print(head);
}
else if (choose == 3) { // Exit the program
Doing = false;
}
}
}
ไม่ทราบว่าจะต้องแก้ยังไงอ่ะค่ะ ตัวที่รันอยู่ก่อนหน้าก็ปิดไปแล้ว
[Error] Id return 1 exit status C++
#include<iostream>
using namespace std;
struct record { // Link list
int value;
struct record *next;
};
void print(struct record *head) { // Use for showing the list
struct record *tmp;
tmp = head;
cout<<"List: ";
while (tmp != NULL) {
cout<value<<" ";
tmp = tmp->next;
}
cout<<endl;
}
void menu() // Use for showing the menu
{
cout<<"=============Menu===========\n";
cout<<" 1) Insert\n";
cout<<" 2) Print\n";
cout<<" 3) Exit\n";
cout<<"Please choose > ";
}
struct record *insert(struct record *head, int data) // Use for inserting the data
{
struct record *node, *p;
if (head == NULL) { // First insert
head = new struct record;
head->value = data;
head->next = NULL;
}
else { // head != NULL
node = new struct record;
node->value = data;
if (data < head->value) { // Front insert
node->next = head;
head = node;
}
else {
p = head;
while (p != NULL) {
if (data < p->next->value) { // Middle insert
node->next = p->next;
p->next = node;
break;
}
else if (p->next == NULL && data > p->value) { // Last insert
node->next = p->next;
p->next = node;
break;
}
else {
p = p->next;
}
}
}
}
return head;
}
int main()
{
struct record *head;
bool Doing = true;
int choose;
while (Doing) {
menu();
cin>>choose;
if (choose == 1) { // Insert data
int data;
cout<<"Insert: ";
cin>>data;
head = insert(head, data);
}
else if (choose == 2) { // Print link list
print(head);
}
else if (choose == 3) { // Exit the program
Doing = false;
}
}
}
ไม่ทราบว่าจะต้องแก้ยังไงอ่ะค่ะ ตัวที่รันอยู่ก่อนหน้าก็ปิดไปแล้ว