数据结构逆序输出
#include<stdlib.h>
#include<stdio.h>
typedef struct link{
int data;
struct link *next;
}link;
//添加函数
void create(link *head)
{
link *p=NULL;
int n;
head->next=NULL; //相当于标识符 为空
printf("请输入数据:");
scanf("%d",&n);
while( n!=0 )
{
p=(link *)malloc(sizeof(link));
p->data=n;
p->next=head->next; //将再创建的节点接到原始节点上
head->next=p; //连接到头节点
scanf("%d",&n);
}
}
//输出函数
void out(link *head)
{
link *p=head->next;
while(p!=NULL)
{
printf("%d",p->data);
p=p->next;
}
printf("\n");
}
//主函数
void main(){
link *head=NULL;
head=(link *)malloc(sizeof(link));
create(head);
printf("逆序输出后:");
out(head);
}