linux c语言链表的简单应用之创建链表
生活随笔
收集整理的這篇文章主要介紹了
linux c语言链表的简单应用之创建链表
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/* ************************************************************************
* Filename: link.c
* Description:
* Version: 1.0
* Created: 2011騫?4鏈?9鏃?17鏃?2鍒?3縐?
* Revision: none
* Compiler: gcc
* Author: wen hao (WH), hnrain1004@gmail.com
* Company: sunplusapp
* ************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include "link.h"
#define LEN sizeof(struct stu)
//聲明結構體
typedef struct stu
{
int num;
char name[10];
struct stu *next;
}TYPE;
//鏈表創建函數,返回類型為結構體指針類型
TYPE * create(int n)
{
TYPE *head,*prev,*curre;
int i;
for(i = 0; i < n; i++)
{
curre = (TYPE *)malloc(LEN);//申請空間
printf("input number and name:\n");
scanf("%d %s",&curre->num,curre->name);//等待用戶輸入數據
if(i == 0)
prev=head=curre;
else
prev->next=curre;
prev=curre;
}
curre->next =NULL;
return head;
}
//打印輸出函數,形參為鏈表頭指針
void print(TYPE *head)
{
printf("\nthe link message is :\n");
printf("number \t\tname \n");
while(head!=NULL)//如果沒有指向鏈表尾就一直打印
{
printf("%d\t\t%s\n",head->num,head->name);
head=head->next;
}
printf("\n");
}
int main(void)
{
TYPE *head;//定義結構體變量
head = create(3);//創建鏈表
print(head);//打印鏈表
return 0;
}
* Filename: link.c
* Description:
* Version: 1.0
* Created: 2011騫?4鏈?9鏃?17鏃?2鍒?3縐?
* Revision: none
* Compiler: gcc
* Author: wen hao (WH), hnrain1004@gmail.com
* Company: sunplusapp
* ************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include "link.h"
#define LEN sizeof(struct stu)
//聲明結構體
typedef struct stu
{
int num;
char name[10];
struct stu *next;
}TYPE;
//鏈表創建函數,返回類型為結構體指針類型
TYPE * create(int n)
{
TYPE *head,*prev,*curre;
int i;
for(i = 0; i < n; i++)
{
curre = (TYPE *)malloc(LEN);//申請空間
printf("input number and name:\n");
scanf("%d %s",&curre->num,curre->name);//等待用戶輸入數據
if(i == 0)
prev=head=curre;
else
prev->next=curre;
prev=curre;
}
curre->next =NULL;
return head;
}
//打印輸出函數,形參為鏈表頭指針
void print(TYPE *head)
{
printf("\nthe link message is :\n");
printf("number \t\tname \n");
while(head!=NULL)//如果沒有指向鏈表尾就一直打印
{
printf("%d\t\t%s\n",head->num,head->name);
head=head->next;
}
printf("\n");
}
int main(void)
{
TYPE *head;//定義結構體變量
head = create(3);//創建鏈表
print(head);//打印鏈表
return 0;
}
總結
以上是生活随笔為你收集整理的linux c语言链表的简单应用之创建链表的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PIC单片机学习2
- 下一篇: Java并发编程:并发容器之CopyOn