- 3
- 0
- 约4.47千字
- 约 7页
- 2021-07-09 发布于湖南
- 举报
精品资料》 》》》》
软件技术基础 实验一
单链表的各种基本运算的实现
精品资料》 》》》》
精品资料》 》》》》
单链表的各种基本运算的实现
一. 实验目的:
1. 熟悉 c 语言上机环境;
2. 实现单链表的创建;
3. 掌握单链表的基本操作:插入、删除、输出等运算 ;
二 .实验内容 :
编写一个程序, 实现单链表的各种基本操作, 并在此基础上设计一个
主程序完成如下功能:
1. 初始化单链表 :
2 .依次采用头插法插入从文件中读取的多个元素 ;
3. 输出单链表 ;
4. 在第四个元素位置上插入从文件中读取的单个元素 ;
5. 删除该单链表的从文件中指定序数的元素;
三. 完整的源程序
#include iostream.h
#include stdio.h
#include stdlib.h
#include malloc.h
#define max 10
#define num 6
int a[20];
int i;
typedef struct link
{ int data;
struct link *next;
}link;
initlink(link *L) /* 初始化单链表 */
精品资料》 》》》》
精品资料》 》》》》
{
L= NULL;
L= ( link *)malloc(sizeof(link)); /* 建立表头结点 */
L-next = NULL;
L-data = 0;
}
void hcreat(link *L) /* 头插法插入从文件中读取的多个元素 */
{ link *s;
L-next=NULL;
s=(struct link*)malloc(sizeof(struct link));
int i=0;
FILE *fp;
if((fp=fopen(h:\\a.txt,r))==NULL)
printf(error!\n);
printf( 文件中的数为: \n);
while(!feof(fp) imax)
{
fscanf(fp,%d,a[i]);
printf(a[%d]=%d\n,i,a[i]);
s=new link;
s-data=a[i];
s-next=L-next;
L-next=s;
i++;
}
fclose(fp);
}
void print(link *L) /* 输出单链表 */
{
原创力文档

文档评论(0)