for(i=0; i < x;i++) { temp=myList->start; highest=myList->start; while(temp != NULL) { if(highest -> value < temp -> value) { highest=temp; temp=myList->start; } else { temp=temp -> next; } } myList=Remove(myList, &highest); if(myList2->start==NULL) { myList2 -> start = myList2 -> end = highest; } else { myList2=Insert(myList2, myList2 -> start, highest); } }