题目:创建一个链表实现元素的输入与输出。
程序分析:无。
程序源代码:
// 百宝箱工作室官方网址 http://www.baibaox.com
// 百宝箱工作室业务介绍 http://www.baibaox.com/BusinessIntroduction.html
#include
#include
#include
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;
//创建链表
LinkList CreateList(int n)
{
LinkList L,p,q;
int i;
L=(LNode*)malloc(sizeof(LNode));
if(!L)return 0;
L->next=NULL;
q=L;
for(i=1;i<=n;i++)
{
p=(LinkList)malloc(sizeof(LNode));
printf("请输入第%d个元素的值:",i);
scanf("%d",&(p->data));
p->next=NULL;
q->next=p;
q=p;
}
return L;
}
//打印链表
void print(LinkList h)
{
LinkList p=h->next;
while(p!=NULL){
printf("%d ",p->data);
p=p->next;
}
}
main()
{
LinkList Head=NULL;
int n;
printf("请输入链表元素总量:");
scanf("%d",&n);
Head=CreateList(n);
printf("刚刚建立的各个链表元素的值为:\n");
print(Head);
printf("\n\n");
system("pause");
}
以上实例运行结果如下:
请输入链表元素总量:5
请输入第1个元素的值:5
请输入第2个元素的值:1
请输入第3个元素的值:9
请输入第4个元素的值:7
请输入第5个元素的值:3
刚刚建立的各个链表元素的值为:
5 1 9 7 3