Lỗi thực thi RTE (runtime error)

EM chào tất cả mọi người ạ! Mọi người cho em hỏi là e chạy chương trình này nó cứ bị lỗi RTE mà e không biết sửa ở đâu cho đúng. mọi người giúp em với ! Tiện mọi người cho em nỏi là dòng mà em ghi chú ở dưới đoạn code có ý nghĩa gì vậy ạ ???

#include <iostream>
#define MAX 100
using namespace std;

struct node {
	int data;
	node *next;
};
typedef node node;

node *Createnode(int x){
	node *p=new node;
	p->data=x;
	p->next=NULL;
	return p;
}
void PrintList(node *l){
	node *p=l;
	while (p!=NULL){
		cout<<p->data<<" ";
		p=p->next;
	}
}
node *chonnode (node *p, int x){
	node *temp=Createnode(x);
	p->next=temp;
	return temp;
}


node *xoanode(node *l){
    node *p=l;
    int check[MAX]= {0}; // dong nay co y nghia la gi a ???
    while(p){
		if(check[p->data]==0){
			printf("%d ",p->data);
			check[p->data]=1;
			
		}
		p=p->next;
	}
	 
}

int main (){
	int n, x;
	cin >>n;
	cin>>x;
	node *l=Createnode(x);
	node *p=l;
	for (int i=1; i<n; i++){
		cin>>x;
		p=chonnode(p,x);
	}
	l=xoanode(l);
	PrintList(l);
 return 0;
}
  1. Bạn nhập những gì khiến chương trình bị RTE?
  2. Dòng đó có nghĩa là khởi tạo mảng 100 phần tử kiểu int và gán tất cả các phần tử bằng 0.
2 Likes

dạ input của ctr đây ạ
12 : là số lượng phân tử trong danh sách

1 1 1 4 5 1 4 7 7 8 1 9 : là số phần tử

Output : 1 4 5 7 8 9

Trong hàm xoanode không trả về (return) cái gì à?

2 Likes

huhu return l rồi xóa dòng printf ở main đi ạ <3. mình cảm ơn b ạ . mình chạy được ctr rồi ạ

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?