收藏 分享(赏)

实验一 C++语言对C语言的扩充.doc

上传人:hwpkd79526 文档编号:7781769 上传时间:2019-05-25 格式:DOC 页数:9 大小:270.50KB
下载 相关 举报
实验一 C++语言对C语言的扩充.doc_第1页
第1页 / 共9页
实验一 C++语言对C语言的扩充.doc_第2页
第2页 / 共9页
实验一 C++语言对C语言的扩充.doc_第3页
第3页 / 共9页
实验一 C++语言对C语言的扩充.doc_第4页
第4页 / 共9页
实验一 C++语言对C语言的扩充.doc_第5页
第5页 / 共9页
点击查看更多>>
资源描述

1、 实验报告课程名称 面向对象程序设计系 别 机械与电子工程系班 级 N 电信-091F学生姓名 邓建平 07学 号 24092200003任课教师 齐 琦南湖学院教务办实验一 C+语言对 C 语言的扩充一、 实验目的(1)掌握 C+语言在结构化程序设计方面对 C 语言的扩充.(2)进一步掌握程序的调试方法.二、 实验内容题目一: 定义一个函数,比较两个数的大小,形参分别使用指针和引用。注意:请定义两个函数分别实现,其一传递两个指针作为参数,其二传递两个引用作为参数代码:#includevoid compare(int void main()int x = 5 ,y = 6 ;coutry) c

2、outy“x“T maxof3(T a, T b, T c)return (ab?a:b)c?(ab?a:b):c;拆开来就是这样的:template T maxof3(T a, T b, T c)T max = ab?a:b; /找出 a,b 中最大的赋值给 max return maxc?max:c; /在比较 max 和 c 大小,返回大者(2)函数重载#includeusing namespace std;int main()int max(int int max(int int max(int int i,j,k;coutijk;couty) t=x;else t=y;if(tz)

3、return t;else return z; int max(int else return y;若用 float 和 double 只需要在将上程序( 2)中的 int 改为 float 和 double 即可。题目三:创建一个学生链表,进行链表的插入、删除、查找操作,要求:使用 new 和 delete 进行动态内存的分配和释放。注意:请回忆链表的结构及其插入删除方式。链表中插入与删除的均为学生类对象。代码:#include #include using namespace std; /学生类 class student public: student() cout nameidscor

4、e; void show() cout next=head; head=p;return head; void print() student *p=head; while(p!=NULL) p-show(); p=p-next; student* insert(int index) /插入 student* ps=new student; student* pt=find(index); if(index=0) ps-next=head; head=ps; else ps-next=pt-next; pt-next=ps; print(); return head; student* fin

5、d(int index) /查找 int n=0; student* p=head; while(n!=index p=p-next; return p; void sort() /排序student* p=head;student* q=head;for(p=head;p!=NULL;p=p-next)for(q=head;q!=NULL;q=q-next)if(p-scoreq-score)string temp1;int temp2;double temp3;temp1=p-name;p-name=q-name;q-name=temp1;temp2=p-id;p-id=q-id;q-id

6、=temp2;temp3=p-score;p-score=q-score;q-score=temp3;print();student* Delete(int index) student* pt=find(index); int index1=index-1;student*p=find(index1);if(pt=head)head=head-next;delete pt;elseint index1=index-1;student*p=find(index1);p-next=pt-next;delete pt; print(); return head; ; void main() Lis

7、t A; int a; int b; A.init();cout aA.insert(b); break; case 2: cout b;A.Delete(b);break; default:cout “输入错误“ endl; A.sort(); 三、 实验总结 1.可采用的设计方法:根据题目,本次实验主要运用的是 C+中的一些特性,人函数模板,和重载函数。而此外要想实现这些题目,通过 C 语言也可以完成,但相对 C 语言而言,C+更易于操作完成。2.实验的关键点:本次实验,主要对象是 C+语言对 C 语言的扩充,而在这里这里最关键的是要了解 C+与 C 语言的一些区别,和类同点。+是一种混合型的面向对象程序设计语言 ,是语言的扩充。它具有对传统语言的向后兼容性 ,很多语言编写的程序稍加改造就可以重用 ,许多有效的算法也可以继续利用 ;又具有独特的面向对象特征 ,可以为面向对象技术提供全面支持 ,这是它对语言最重要的改进。另外本次试验中,要熟练掌握一些 C+语言中函数的新特性,如:函数重载,函数模板。3.这次实验的注意事项:因为是首次通过 C+来编写程序,所以难免有将 C 语言的语句运用到 C+程序中的错误,这些错误将有可能导致编写的程序无法实现。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报