#include<stdio.h>
#include<malloc.h>
struct node{
int data;
struct node *next;
};
main(){
struct node *head, *tail, *p, *pt, *p1, *p2, *p0;
int i;
p = (struct node*)malloc(sizeof(struct node));
p->next = NULL;
head = tail = p;
for(i=1; i<=10; i++){
p = (struct node*)malloc(sizeof(struct node));
p->next = NULL;
printf("请输入第%d个节点的值:", i);
scanf("%d", &p->data);
tail->next = p;
tail = p;
}
for(i=1; i<=9; i++){
//重新排序
pt = head;
while(pt->next->next != NULL){
p0 = pt;
p1 = pt->next;
p2 = p1->next;
if(p1->data>p2->data){
p1->next = p2->next;
p0->next = p2;
p2->next = p1;
}
pt = pt->next;
}
}
pt = head;
while(pt->next != NULL){
pt = pt->next;
printf("%3d", pt->data);
}
}
冒泡法排序(指针)
最新推荐文章于 2023-12-31 16:32:39 发布