欢迎来到天天文库
浏览记录
ID:53963452
大小:22.40 KB
页数:7页
时间:2020-04-11
《实验四-类和对象的使用-参考答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验四类和对象的使用学院专业姓名学号日期课程名称C++程序设计实验室名称X2506实验名称指导老师成绩4.1实验目的1.类的定义;2.类对象的使用;3.类成员变量的定义和使用;4.类成员函数的定义和使用;5.理解类的作用域;6.理解类的声明;7.理解类中private和public权限的声明依据。4.2实验内容4.2.1程序阅读1.理解下面的程序,并在VC++6.0下运行查看结果,回答程序后面的问题。#includeclassCDate{voidSet(intm,intd,inty){m
2、onth=m;day=d;year=y;}boolIsLeapYear(){return(year%4==0&&year%100!=0)
3、
4、(year%400==0);}public:voidPrint(){cout<5、-----------------------①a.Set(10,15,2007);a.Print();if(a.IsLeapYear()){a.PrintYear();cout<<"isaleapyear!"<6、和IsLeapYear误设置为私有的;更正:A、添加usingnamespacestd;B、将成员函数Set和IsLeapYear设置为公有的.问题二:类CDate中分别有哪些成员函数和成员变量,它们分别属于哪种访问权限?答:A、成员变量有month、day、与year,都为类的私有成员(private);B、成员函数有Set(),IsLeapYear(),PrintYear,Print,经更改后都为公有成员函数(public)问题三:①处语句的意思是什么?答:定义一个CDate类型的对象a。问题四:若将②7、处改为cout<usingnamespacestd;intmonth;//全局变量intday;intyear;voidSet(intm,intd,inty)//----------------------------------8、-------------------a{::month=m;//-----------------------------------------------------①::day=d;::year=y;}classCDate{public:voidSet(intm,intd,inty)//-----------------------------------------------------b{::Set(m,d,y);//--------------------------------------9、---------------②}voidPrint(){cout<10、确运行?答:不能。问题三:该程序的输出结果是什么,试解释该输出结果。答:是一些随机的数值。因为②处调用了全局函数::Set(m,d,y),它是用来给全局变量month、day、year赋值,而没有给对象的成员变量赋值。问题四:若要使程序输出结果为10/15/2007,程序该如何修改?答:②处改为如下程序段。month=m;day=d;year=y;4.2.2程序设计1.试设计一个复数类,该类有实部和虚部两个成员数
5、-----------------------①a.Set(10,15,2007);a.Print();if(a.IsLeapYear()){a.PrintYear();cout<<"isaleapyear!"<6、和IsLeapYear误设置为私有的;更正:A、添加usingnamespacestd;B、将成员函数Set和IsLeapYear设置为公有的.问题二:类CDate中分别有哪些成员函数和成员变量,它们分别属于哪种访问权限?答:A、成员变量有month、day、与year,都为类的私有成员(private);B、成员函数有Set(),IsLeapYear(),PrintYear,Print,经更改后都为公有成员函数(public)问题三:①处语句的意思是什么?答:定义一个CDate类型的对象a。问题四:若将②7、处改为cout<usingnamespacestd;intmonth;//全局变量intday;intyear;voidSet(intm,intd,inty)//----------------------------------8、-------------------a{::month=m;//-----------------------------------------------------①::day=d;::year=y;}classCDate{public:voidSet(intm,intd,inty)//-----------------------------------------------------b{::Set(m,d,y);//--------------------------------------9、---------------②}voidPrint(){cout<10、确运行?答:不能。问题三:该程序的输出结果是什么,试解释该输出结果。答:是一些随机的数值。因为②处调用了全局函数::Set(m,d,y),它是用来给全局变量month、day、year赋值,而没有给对象的成员变量赋值。问题四:若要使程序输出结果为10/15/2007,程序该如何修改?答:②处改为如下程序段。month=m;day=d;year=y;4.2.2程序设计1.试设计一个复数类,该类有实部和虚部两个成员数
6、和IsLeapYear误设置为私有的;更正:A、添加usingnamespacestd;B、将成员函数Set和IsLeapYear设置为公有的.问题二:类CDate中分别有哪些成员函数和成员变量,它们分别属于哪种访问权限?答:A、成员变量有month、day、与year,都为类的私有成员(private);B、成员函数有Set(),IsLeapYear(),PrintYear,Print,经更改后都为公有成员函数(public)问题三:①处语句的意思是什么?答:定义一个CDate类型的对象a。问题四:若将②
7、处改为cout<usingnamespacestd;intmonth;//全局变量intday;intyear;voidSet(intm,intd,inty)//----------------------------------
8、-------------------a{::month=m;//-----------------------------------------------------①::day=d;::year=y;}classCDate{public:voidSet(intm,intd,inty)//-----------------------------------------------------b{::Set(m,d,y);//--------------------------------------
9、---------------②}voidPrint(){cout<10、确运行?答:不能。问题三:该程序的输出结果是什么,试解释该输出结果。答:是一些随机的数值。因为②处调用了全局函数::Set(m,d,y),它是用来给全局变量month、day、year赋值,而没有给对象的成员变量赋值。问题四:若要使程序输出结果为10/15/2007,程序该如何修改?答:②处改为如下程序段。month=m;day=d;year=y;4.2.2程序设计1.试设计一个复数类,该类有实部和虚部两个成员数
10、确运行?答:不能。问题三:该程序的输出结果是什么,试解释该输出结果。答:是一些随机的数值。因为②处调用了全局函数::Set(m,d,y),它是用来给全局变量month、day、year赋值,而没有给对象的成员变量赋值。问题四:若要使程序输出结果为10/15/2007,程序该如何修改?答:②处改为如下程序段。month=m;day=d;year=y;4.2.2程序设计1.试设计一个复数类,该类有实部和虚部两个成员数
此文档下载收益归作者所有