实验报告4通过使用接口和抽象类设计一个可复用的类库.doc_第1页
实验报告4通过使用接口和抽象类设计一个可复用的类库.doc_第2页
实验报告4通过使用接口和抽象类设计一个可复用的类库.doc_第3页
实验报告4通过使用接口和抽象类设计一个可复用的类库.doc_第4页
实验报告4通过使用接口和抽象类设计一个可复用的类库.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

成绩辽宁工程技术大学上机实验报告4实验名称通过使用接口和抽象类设计一个可复用的类库院系姓名实验目的简述本次实验目的:通过使用接口和抽象类设计一个可复用的类库实验准备你为本次实验做了哪些准备: 阅读教材,并跟随老师学习并掌握用抽象类和接口的方法实现栈,队列,链表,;并比较两种方法的异同之处.实验进度本次共有 1 个练习,完成 1 个。实验总结日本次实验的收获、体会、经验、问题和教训: 通过课堂上跟随老师学习,课后认真阅读教材,跟同学讨论实验结果,上网查阅C#中接口的相关资料,通过周一下午的上机操作和其他时间的上机练习,把不会的问题都弄懂,终于完成了实验报告上的实验问题,以下是实验问题的具体实现过程。教师评语interface Icollection void insert(int v); int delete (int p ); int seek (int p); interface Iaction void insert(int v); int delete(); int seek(int p); public abstract class collection public abstract void insert(int v); public abstract int delete(); public abstract int seek(int t); class stack : collection,Iaction private Linklist L; public int Num get return L.Num; public override void insert(int v) L.insert (v); public override int delete() return L.delete(0); public override int seek(int p) return L.seek(p); class queue : collection,Iaction private Linklist L; private int num; public int Num get return L.Num; public queue() L = new Linklist(); public override void insert(int v) L.insert( v); public override int delete() return L.delete(0); public override int seek(int p) return L.seek(p); class Node private int data; public int Data get return data; set data = value; public Node(int v) this.data = v; public Node next; class Linklist : collection,Icollection public Node head; private int num; public int Num get return num; public Linklist() head = null; num = 0; public bool isempty() if (num = 0) return true; else return false; public override void insert(int v) insert(v); public void insert(Node A) if (isempty() head = A; head.next = null; else A.next = head; head = A; num = num + 1; Console.WriteLine(操作成功!); public override int delete() return delete(-1); public int delete(int p) if (isempty() Console.WriteLine(Error); else Node p; Node q; p = q = head; while (p.next != null) q = p; p = p.next; int v = p.Data; q.next = null; Console.WriteLine(删除0, v); num = num - 1; public override int seek(int p) int i = 0; Node p = head; while (p != null) p = p.next; i+; public void TraverseList() Node p = head; int t = num; if (num = 0) Console.WriteLine(Null); while (t != 0) Console.WriteLine(p.Data); p = p.next; t = t - 1; class Program static void Main(string args) stack s = new stack(); for (int i = 1; i = 5; i+) s.insert(i); for (int i = 0; i = s.Num; i+) Console.Write(0, s.seek(i); Console.WriteLine(); queue a = new queue(); for (int i = 1; i = 5; i+) a.insert(i); for (int i = 0; i = a.Num; i+) Console.Write(0, a.delete(); Console.WriteLine()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论