30/09/2018, 21:41

Đưa ra các phần tử lớn nhất trong LinkList

Mình có làm hàm sau đây đưa ra những sinh viên có điểm cao nhất, nhưng khi chạy thì bị crash. nhờ các tiền bối chỉ giúp

//Tim sinh vien co diem MAX
void diemMAX(LIST l){
	int dem;
	NODE *p = l.pHead;
	NODE *max = l.pHead;
	for(p->pNext; p!=NULL; p=p->pNext){
		if(p->data.diemsv > max->data.diemsv){
			max = p; dem = 0;
		}
		if(p->data.diemsv == max->data.diemsv){
			max = p; dem++;
		}
	}
	if(dem == 0){
		xuatsv(max->data);
	}else{
		NODE *q = l.pHead;
		while(q!=NULL){
			if(q->data.diemsv==max->data.diemsv){
				xuatsv(q->data);
				q=q->pNext;
			}
		}
	}
}
Lê Qúi Nhất viết 23:53 ngày 30/09/2018

bạn có thể tham khảo bài này của mình rồi áp dụng vào bài của bạn http://codepad.org/HxL15Sq5

Thang viết 23:48 ngày 30/09/2018

sao lại gán 2 lần l.phead thế kia

Thang viết 23:45 ngày 30/09/2018
    void Max(LIST l)
    {
       NODE *p,*max;
       int dem;
       p=l.phead;
       max=p;
       for(p;p;p=p->pnext)
       {
           if(p->data.diem>max->data.diem)  
   			{ max=p; dem=0; }
           if(p->data.diem==max->data.diem) 
   			{ max=p; dem++; }			
       }
        cout<<"<-----------------Sinh vien co diem cao nhat------------------------>"<<endl;
       if(dem==0)
   	  output(max->data);
   	else 
   	 output(max->data);
    }
Châu Milano viết 23:47 ngày 30/09/2018
        void Max(LIST l)
        {
           NODE *p,*max;
           int dem;
           p=l.phead;
           max=p;
           for(p;p;p=p->pnext)
           {
               if(p->data.diem>max->data.diem)  
       			{ max=p; dem=0; }
               if(p->data.diem==max->data.diem) 
       			{ max=p; dem++; }			
           }
            cout<<"<-----------------Sinh vien co diem cao nhat------------------------>"<<endl;
           if(dem==0)
       	  output(max->data);
       	else 
       	 output(max->data);--> chỗ này chỉ xuất 1 thằng nếu có 2 thằng MAX
        }

hàm của bạn sửa khi có 2 sinh viên có điểm cùng MAX nó chỉ xuất 1 thằng thôi, tks các bạn mình sửa được rồi

Bài liên quan
0