- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C面向对象程序设计--实验一类和对象
课程实验报告
课程名称 C++面向对象程序设计 班级 实验日期 姓名 学号 实验成绩 实验名称 实验一 类和对象
实
验
目
的
及
要
求 1.C++简单程序设计 :理解程序的三大基本控制结构:顺序、选择和循环结构;掌握关系运算符、逻辑运算符及其表达式的使用;学习使用while、do—while、for语句编制循环结构的程序;学习switch-case语句、break语句及continue语句的使用;学习使用if语句编写单分支和多分支选择程序;学习编制循环嵌套语句。
2.函数和程序结构:熟悉函数的各个组成成分;理解函数的形式参数和实际参数的不同;理解函数的原型声明;理解主函数、系统函数和自定义函数。
3.类与对象:了解类的构造函数和析构函数;学习类成员访问控制的运用;了解类的常数据成员和常成员函数。
4.构造函数与析构函数:理解构造函数与析构函数的含义及特点;掌握构造函数的几种类型;掌握构造函数和析构函数的执行顺序;掌握在继承机制中派生类的构造函数和析构函数的执行顺序。 实验环境 Visual C++ 6.0 实
验
内
容
实验一1:编写循环嵌套程序,求出1000以内的所有素数以及素数的个数。
实验一2:编写循环嵌套程序,输入年、月、日,打印出该天是那年的第几天。
实验一3:编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数。
实验一4:设计一个立方体类Box,它能计算并输出立方体的体积和表面积。
实验一5:定义一个Book(图书)类,在该类定义中包括:(1)数据成员:bookname(书名)、price(价格)和number(存书数量)。(2)成员函数:display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restore()将存书数量加1,并显示当前存书数量。(3)在main函数中,要求建立某一种图书对象,并对该图书进行简单的显示、借阅和归还管理。
实验一6:改造实验内容1的CMoney类,把其中的4个构造函数整合为1个构造函数。
实验一7:运行下列程序,分析继承下构造函数的调用。
算
法
描
述
及
实
验
步
骤
调
试
过
程
及
实
验
结
果 1.输出1000以内的素数并算出总个数:2.输出某一天是那年的第几天:
3.输出输入字符串中的数字、字母、空格及其他的个数:
4.输出立方体的表面积和体积:5.输出我拥有的钱数:
6.输出图书的相关信息(书名、价格、数量):7.输出该构造函数调用后的结果:
总
结
(1):一开始无法明确如何快速判断出素数,后来知道利用for循环,通过该数与其平方根的大小比较,便可以找出1000以内的所有素数并统计总个数。
(2):该题主要是对于不同月份不同天数的分析,即利用switch语句对于月份这同一条件,分出三种不同的结果,同时要注意二月份闰年29天的特殊情况。
(3):利用数组对输入字符串中的每一个字符进行逐一判断即可。
(4):Box类包含三个私有数据成员,即a、volume和area,另有两个构造函数以及函数seta()、getvolume()、getarea()和disp()。
(5):Book类,包括三个私有数据成员:bookname、price和number,另有三个构造函数:display()、borrow()、restore()。
(6):整合后只留下CMoney(int y,int j,int f)这一个构造函数即可。
(7):第一点,先明确此为单向继承,即每个派生类只有一个基类。Animal为基类,Primate是Animal的派生类, Human是Primate的派生类。第二点,其派生方式均为公有继承。第三点,该派生类构造函数的调用顺序:基类构造函数;派生类自己的构造函数。主函数中名叫Tom的Human类中,调用顺序为:Human():Primate(), Primate():Animal(Primate),Animal(const char *s)。名叫Jack(4)的Human 类中,调用顺序为:Human(int c):Primate(c),Primate(int n):Animal(Primate),Animal(const char *s)。
附
录
实验一(1):
#include iostream
#include cmath
using namespace std;
void main()
{ int i,j,n=0;
for(j=2;j=1000;j++)
{
for(i=2;i=sqrt
文档评论(0)