下载此文档

数据结构作业.docx


文档分类:IT计算机 | 页数:约7页 举报非法文档有奖
1/7
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/7 下载此文档
文档列表 文档介绍
数据结构报告
题目:1、请编程实现一个普通线性表或栈或队列的维护程序,包括创建、插入、删除、遍历功能。
程序流程图:
具体程序:
#include<>
#include<>
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
#define OK 1
typedef struct
{
int *elem;
int length;
int listsize;
}Sqlist;
Sqlist L;
int InitList_Sq(Sqlist &L)
{
=(int *)malloc(LIST_INIT_SIZE*sizeof(int));
if(!)exit(0);
=0;
=LIST_INIT_SIZE;
return OK;
}//InitList_Sq
int ListInsert_Sq(Sqlist&L,int i,int e)//插入
{
//int i,int e;
int *newbase;
int *q,*p;
if(i<1||i>+1)
return -1;
if(>=)
{
newbase=(int*)realloc(,(+LISTINCREMENT)*sizeof(int));
if(!newbase)exit(0);
=newbase;
+=LISTINCREMENT;
}
q=&([i-1]);
for(p=&([-1]);p>=q;--p)*(p+1)=*p;
//插入位置及以后的元素右移
*q=e;//插入e
++;//表长增1
return OK;
}//ListInsert_Sq
int ListDelete_Sq(Sqlist&L,int i)
{
int *p,*q;
if(i<1||i<)
return -1;
p=&[i-1];
q=+-1;
for(p;p<=q;p++)
*p=*(p+1);
--;
return OK;
}//ListDelete_Sq删除
int main()
{
int k,i,e;

printf("请输入你想执行的功能\n");
printf("输入1执行创建功能\n输入2执行插入功能\n输入3执行删除功能\n输入4执行遍历功能\n输入0退出\n");

do
{
scanf("%d",&k);
switch(k)
{
case 1:InitList_Sq(L);break;
case 2:
{
printf("请输入插入位置及值\n");
scanf("%d,%d",&i,&e);
ListInsert_Sq(L,i,e);
}break;
ca

数据结构作业 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数7
  • 收藏数0 收藏
  • 顶次数0
  • 上传人63229029
  • 文件大小186 KB
  • 时间2017-10-11