C++编程:按大小排序字符串与C语言发展

需积分: 0 0 下载量 186 浏览量 更新于2024-07-14 收藏 8.72MB PPT 举报
本资源主要介绍了C++编程语言在程序设计中的应用,特别是如何实现输入三个或更多字符串按大小进行排序的功能。C++的发展背景被提及,它起源于20世纪70年代的C语言,由Dennis Ritchie和Brian Kernighan在马丁·里奇和肯·汤普森的工作基础上创建。C语言的设计初衷是为编写UNIX操作系统服务,而C++则是对C语言的扩展和增强。 C++的主要特点包括: 1. 结构化编程:C++支持结构化的编程方式,语言简洁且灵活,适用于各种规模的项目,无论是大型系统还是小型控制程序,甚至科学计算。它的简洁性使得开发者能够高效地编写和维护代码。 2. 高级与低级特性结合:C++集成了高级语言的易读性和面向对象编程的优势,同时也保留了汇编语言的底层控制能力,如丰富的运算符支持(算术逻辑运算和位运算),以及灵活的数据结构,使编写的程序功能强大且性能优越。 3. 可移植性强:由于C++的跨平台性,一个在特定计算机上编写的程序无需大量修改就能在其他型号和性能级别的机器上运行,这极大地提高了代码的通用性。 4. 学习曲线较陡:尽管灵活性带来便利,但也意味着C++的语法结构相对宽松,对于新手来说可能较为复杂。它对程序设计者的要求较高,需要深入理解语法规则才能编写出高质量的代码。此外,调试过程可能相对较困难,因为错误可能隐藏在复杂的语法结构中。 本资源是针对C++初学者和进阶者的一份教程,旨在帮助读者掌握基本的编程技巧,特别是处理字符串排序这类基础任务的方法,同时了解C++语言的发展历程和其在现代计算机科学中的重要地位。通过学习和实践,读者将能够更好地利用C++进行高效的程序设计。

定义一个基类 BaseString,实现基本的输入字符串的功能。 //-------------------------------------------------------------------------------------------------- class BaseString { public: char *GetData();//返回字符串 void Input(); //输入字符串,遇到换行符结束 void Display();//显示字符串 BaseString(); ~BaseString(); unsigned int Getlength(){ return Length;}//获取字符串长度 protected: char Data[1024]; unsigned Length; //表示字符串的长度,不包括结束的'\0' }; //-------------------------------------------------------------------------------------------------- 2. 定义一个类 ReString,公有继承自 BaseString,添加一个函数 Reverse()实 现字符串的倒置功能,即:将对象中的数据成员 Data 数组的元素倒置。倒置的概 念是:原字符串为“abcd1234”,倒置后为“4321dcba”。 3. 定义一个类 CopyString,公有继承自 BaseString,添加一个函数 Copy()实现 字符串的拷贝功能(传入的参数可以是一个字符串对象,也可以从一个字符串常量, 将参数中的字符串拷贝到对象的 Data 数组中去,注意:不要使用系统内置的 strcpy() 函数)。 面向对象程序设计上机指导 20 4. 定义一个类 CmpString,公有继承自 BaseString,添加一个函数 Compare() 实现字符串的比较功能(传入的参数可以是一个字符串对象,也可以从一个字符串 常量,将参数中的字符串同对象中的 Data 进行比较)。 思考字符串比较的算法。注意:不要使用系统内置的 strcmp()函数。 5. 在 main()函数中体现出派生类的构造函数的调用次序。可以在各类的构 造函数中输出“I am the * class’s constructor”。*表示当前类名。 6. 定义一个类 NewString 继承自 ReString、CopyString 和 CmpString 三个类, 在程序中体现出多重继承中的基类的继承程序。为基类 BaseString 增加功能: ToUpper()函数将所有字母大写,ToLower()函数将所有字母小写。并在继承的过程 中声明为虚基类,比较 BaseString 作为虚基类和非虚基类的情况下的区别

2023-05-26 上传