数据结构指针用法实验报告.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
最新精品文档,知识共享! 实验题目 邮箱问题 学生姓名 郭雪飞 学生学号 201526811007 学生班级 计自1501 任课教师 刘端阳 提交日期 2016-10-09   计算机科学与技术学院 实验题目 有一天晚上,邮差Peter感到十分无聊,为了打破夜班的单调,他使用邮局中的一行邮箱进行以下实验。这些邮箱被从1~150进行了编号,然后从邮箱2开始,他打开的所有编号为偶数的邮箱的门,而保持其他邮箱的们关着。接着,从邮箱3开始,每隔3个邮箱,如果这个邮箱的门是关着的他就打开这个邮箱的门,而如果门是开着的,他就关上门。然后他每隔4个邮箱重复这个过程,再每隔5个邮箱重复这个过程,如此下去。当结束时,他被关着的邮箱的分布所惊讶了。编写一个程序来判断哪些邮箱是关着的。 设计思路 首先建立了一个结构体box,当中有两部分data和next指针,data用来储存数值,0代表关闭,1代表打开状态,然后在类Box中进行操作。Box类中公有成员含有build()函数,work()函数,show()函数,私有成员含有箱子总数n,循环控制量i、j结构体指针A、B。 函数build()用来建立一个box的链表含有n个小空间,每个小空间代表一个邮箱的情况。函数work()用两重循环对box进行操作,函数show()用来输出关闭的箱子的序号,最后析构函数用来释放动态空间。 代码实现 ////////////头文件 #include<iostream> using namespace std; struct box{ int data;//储存数值,1代表邮箱开,0代表邮箱关闭 struct box *next;//指针 }; class Box{ public: Box(){n=0;i=0;j=0;} void build();//建立一个箱子链 void show();//输出关闭箱子的编号 void work();//对箱子进行操作 ~Box();//析构函数释放空间 private: int n;//总箱子数 int i;//控制循环 int j;//控制循环 box * A;//结构体指针 box * B;//结构体指针 }; void Box::build() { cout<<"请输入邮箱个数:"; cin>>n; A=B=new box; for(i=1;i<n;i++)//用n个box小空间串出一个链表 { B->data=0;//0表示邮箱的关闭状态 B->next=new box; B=B->next; } } void Box::show() { cout<<"关闭的邮箱编号:"<<endl; B=A; for(i=1;i<n;i++)//将链表走一遍 {if(B->data==0)//通过data数值判断邮箱处于关闭还是打开状态 cout<<i<<endl; B=B->next; } } void Box::work() { for(i=2;i<=n;i++)//外层循环表示每i个邮箱的操作 { B=A; for(j=1;j<=n;j++)//走链表,并进行操作 { if(j%i==0)//判断这个数是i的倍数 {if(B->data==0)B->data=1; else B->data=0; } B=B->next; } } } Box::~Box()//析构函数释放空间 { for(i=0;i<n;i++) { B=A->next; delete A; A=B; } }////////////////////////main函数 #include "pointer.hpp" #include <iostream> using namespace std; int main() { Box A;//建立一个Box类的对象 A.build();//建立一个链表 A.work();//对链表进行操作 A.show();//展示结果 return 0; } 程序运行结果

文档评论(0)

哆啦 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档