数据结构实验之链表一:顺序建立链表
Time Limit: 1000MS Memory limit: 65536K
题目描述
输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。
输入
第一行输入整数的个数N;
第二行依次输入每个整数。
第二行依次输入每个整数。
输出
输出这组整数。
示例输入
8 12 56 4 6 55 15 33 62
示例输出
12 56 4 6 55 15 33 62
提示
不得使用数组!
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct node
{
int data;
struct node *next;
};
int main()
{
int i,n,m;
struct node *head,*p,*q;
scanf("%d",&n);
head = NULL;
for(i = 1;i <= n; i++)
{
scanf("%d",&m);
p = (struct node *)malloc(sizeof(struct node));
p->data = m;
p->next = NULL;
if(head == NULL)
head = p;
else
q->next = p;
q = p;
}
p = head;
while(p != NULL)
{
printf(p->next == NULL?"%d":"%d ",p->data);
p = p->next;
}
printf("\n");
return 0;
}
代码菜鸟,如有错误,请多包涵!!!
#include<string.h>
#include<stdlib.h>
struct node
{
int data;
struct node *next;
};
int main()
{
int i,n,m;
struct node *head,*p,*q;
scanf("%d",&n);
head = NULL;
for(i = 1;i <= n; i++)
{
scanf("%d",&m);
p = (struct node *)malloc(sizeof(struct node));
p->data = m;
p->next = NULL;
if(head == NULL)
head = p;
else
q->next = p;
q = p;
}
p = head;
while(p != NULL)
{
printf(p->next == NULL?"%d":"%d ",p->data);
p = p->next;
}
printf("\n");
return 0;
}
代码菜鸟,如有错误,请多包涵!!!