王道数据结构p40——5
一、题目
原地倒序链表
二、代码
#include<stdio.h> #include<stdlib.h> typedef struct lnode{
int data; lnode *next; }lnode,*linklist; int main(){
linklist l; l = (lnode*)malloc(sizeof(lnode)); l->next = NULL; int a[10] = {
1,2,3,4,5,6,7}; lnode *s,*p; s=l; int n=7; for(int i=0;i<n;i ){
p = (lnode*)malloc(sizeof(lnode)); p->data = a[i]; s->next = p; s=p; } s->next = NULL; /*s=l->next; while(s!=NULL){ printf("%d\n",s->data); s=s->next; }*/ s = l->next; l->next = NULL; //这个不能少 //这个少了就会出错,跳不出循环 while(s!=NULL){
//尾插 p = s->next; s->next = l->next; l->next = s; s=p; } s=l->next; while(s!=NULL){
printf("%d\n",s->data); s=s->next; } return 0; }