第三周 项目一:顺序表的基本运算
2015-09-14 16:40
337 查看
问题与代码:
/* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:xiangmu.cpp *作 者:孙翰文 *完成日期:2015年9月11日 *版 本 号:v1.0 * *问题描述:测试“建立线性表”的算法CreateList,为查看建表的结果,需要实现“输出线性表”的算法DispList。 */ #include <stdio.h> #include <malloc.h> #define MaxSize 50 //Maxsize将用于后面定义存储空间的大小 typedef int ElemType; //ElemType在不同场合可以根据问题的需要确定,在此取简单的int typedef struct { ElemType data[MaxSize]; //利用了前面MaxSize和ElemType的定义 int length; } SqList; //自定义函数声明部分 void CreateList(SqList *&L, ElemType a[], int n);//用数组创建线性表 void DispList(SqList *L);//输出线性表DispList(L) bool ListEmpty(SqList *L);//判定是否为空表ListEmpty(L) //实现测试函数 int main() { SqList *sq; ElemType x[6]= {5,8,7,2,4,9}; CreateList(sq, x, 6); DispList(sq); return 0; } //下面实现要测试的各个自定义函数 //用数组创建线性表 void CreateList(SqList *&L, ElemType a[], int n) { int i; L=(SqList *)malloc(sizeof(SqList)); for (i=0; i<n; i++) L->data[i]=a[i]; L->length=n; } //输出线性表DispList(L) void DispList(SqList *L) { int i; if (ListEmpty(L)) return; for (i=0; i<L->length; i++) printf("%d ",L->data[i]); printf("\n"); } //判定是否为空表ListEmpty(L) bool ListEmpty(SqList *L) { return(L->length==0); }
**
运行结果
**知识点及总结
在研习DispList中发现,要输出线性表,还要判断表是否为空,这样,实现判断线性表是否为空的算法ListEmpty成为必要。这样,再加上main函数,这个程序由4个函数构成。main函数用于写测试相关的代码。 该项目在开始自主探索时的确感到抽象,在老师的资源的帮助下找到了自己的结构。以后遇到此类问题应当先考虑出一个框架,然后在向框架中加东西会简单许多。
相关文章推荐
- 第三周实践项目1-顺序表的基本运算
- FIRST TODY STAR
- SAP Validation和Substitution
- 在打开数据库时出现permission denied
- 第二周项目2程序的多文件组成
- 加密篇之二 - 非对称加密算法RSA
- 自定义Loading 加载动画 不同的加载速度
- 开始的开始
- 数据结构,算法与应用(3)
- Calabash-ios自动化测试
- android 自定义View原理详解01
- 【网络】(九)close与shutdown
- iOS运动事件学习
- Apache工具集
- 函数的递归调用例子学习
- 有用的开源软件
- 顺序表的基本运算(1)
- 第三周 项目1 - 顺序表的基本运算
- 2015年9月10日课程作业(rpm、yum)
- 如何计算算法复杂度