数据结构实验之链表二:逆序建立链表
Description
输入整数个数N,再输入N个整数,按照这些整数输入的相反顺序建立单链表,并依次遍历输出单链表的数据。
Input
第一行输入整数N;;
第二行依次输入N个整数,逆序建立单链表。
Output
依次输出单链表所存放的数据。
#include<stdio.h> #include<stdlib.h> struct node{ int data; struct node *next; }; struct node *creat(int n){ struct node *head, *tail, *p; head = (struct node *)malloc(sizeof(struct node)); head->next = NULL; tail =head; for(int i=0; i<n; i++){ p = (struct node *)malloc(sizeof(struct node)); scanf("%d", &p->data); p->next = head->next; head->next = p; } return head; }; int main() { int n; scanf("%d", &n); struct node *q; q = creat(n); while(q->next != NULL){ q->next->next == NULL? printf("%d", q->next->data): printf("%d ", q->next->data); q = q->next; } printf(" "); return 0; }