欢迎来到天天文库
浏览记录
ID:15929854
大小:2.39 MB
页数:311页
时间:2018-08-06
《武汉大学_面向对象程序设计试题集》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、武汉大学2007—2008学年度第2学期《面向对象程序设计》试卷(001)学院专业班学号姓名分数答题要求:⑴考试时,请在计算机的非硬盘保护区建立文件夹,文件夹以“学号姓名”命名,全部题目都保存在该文件夹下面。如:“200031432228张三”⑵每个题目的工程命名规则:试卷号_大题号_小题号。如001号试卷的第一大题第2小题的工程名:001_1_2⑶交卷前,请把每个题目的DEBUG目录删除后,将整个文件夹拷贝到指定U盘,等待老师拷贝、检查完毕后再离开考场。一、请填空,并利用VisualC++编程完成以
2、下题目。(每题8分,共32分)1编写一个程序,输入三角形的三个边的边长,求三角形的面积。调试结果:个error个warning。#include#include#includemain(){inta,b,c,s;cout<<"请输入三角形的三边长度:";cin>>a>>b>>c;s=(a+b+c)/2;cout<<"Theareais"<3、参数传递方式有“单向值传递”、“按地址传递”和“引用传递”三种方式,请采用内联函数的方法实现实参和形参的“引用传递”。调试结果:个error个warning;实现题目要求的功能函数名:。3编写一个SDI应用程序,为应用程序添加主菜单“我的菜单”,并添加“显示文本”和“画图”两个菜单项,编写上述两个菜单项的消息处理函数,分别在客户区显示一行文本或画一个矩形框。调试结果:个error个warning;为实现题目要求而填加的功能函数名有:;在原有函数中增加了代码。-311-4编写一个对话框应用程序,对话框中4、有两个用于选择颜色模式的单选按钮和3个用于选择颜色的复选框,只有在彩色模式下才能选择3种不同的颜色的组合。对话框运行效果如右图,当用户单击“应用”按钮,对话框右边的按键按钮根据选择的颜色实现按钮的自画。调试结果:个error;个warning。实现题目要求填加的功能函数名有:。二、请填空,并用VisualC++按要求编写下列程序。(每题12分,共48分)1用指针作为函数参数编写冒泡排序函数:BubbleSort(int*pArray,intn),在主函数中以指针作为实参调用函数BubbleSort()5、,从而对已知的整型数组A[]={12,4,6,3,56,45,9}中的元素进行排序。调试结果:个error个warning。2设计一个日期类CDate,该类用于表示日期值(年、月、日)。要求能够通过构造函数设置日期值、能够通过成员函数获取日期值,还能够用友元函数实现将日期加一天的操作,要考虑闰年、闰月和每月的天数。调试结果:个error个warning;CData类中的成员函数名有:;CData类中的成员变量有:。3定义矢量类型,给出平面上两个矢量的加法和减法运算。要求利用非成员函数重载运算符“+”,6、利用成员函数重载运算符“-”,利用构造函数初始化成员变量。调试结果:个error个warning;实现题目要求的非成员函数名有:;类名:;类中的成员变量有:;类中的成员函数名:。4建立一个名为CDriver的类,该类有以下成员变量:司机姓名、ID号、基本工资、奖金、所得税和实际发放数。还有以下成员函数:两个构造函数,一个用于只初始化司机姓名和ID号,一个用于初始化司机-311-姓名、ID号、基本工资、奖金和所得税;一个输入基本工资、奖金和所得税的函数;一个计算实际发放数的函数;一个输出司机信息的函数,7、两个重载运算符“+”,一个用于将其他司机的工资加到该司机(如该司机替其他司机代班),一个函数用于将一个数值加到该司机(如提高该司机的工资)。编写主函数,调用第一个构造函数声明一个司机对象并输入其工资,再调用第二个构造函数声明一个司机对象。最后分别计算两个司机的实际发放数,在屏幕输出,并编写代码验证两个重载运算符“+”的功能。调试结果:个error;个warning;类中的成员变量有:;类中的成员函数名:。三、选做题:请在以下4题中任选2题,填空,并用VisualC++按要求编写程序。(每题10分,共28、0分)1:编写一个类SDK应用程序,在HELP主菜单中添加菜单项Message,当用户执行菜单项命令Message后弹出信息对话框,显示该菜单项的执行次数。为程序添加键盘输入消息WM_KEYDOWN的处理代码,判断当前按下的键是否是X或x,并给出相应的提示。调试结果:个error;个warning;在用应用程序框架建立的程序中,为实现题目要求,主要功能代码被填加在函数中。2:编写一个SDI应用程序,在“查看”主菜单中添加“十字光标”菜单项,执行“十字光标
3、参数传递方式有“单向值传递”、“按地址传递”和“引用传递”三种方式,请采用内联函数的方法实现实参和形参的“引用传递”。调试结果:个error个warning;实现题目要求的功能函数名:。3编写一个SDI应用程序,为应用程序添加主菜单“我的菜单”,并添加“显示文本”和“画图”两个菜单项,编写上述两个菜单项的消息处理函数,分别在客户区显示一行文本或画一个矩形框。调试结果:个error个warning;为实现题目要求而填加的功能函数名有:;在原有函数中增加了代码。-311-4编写一个对话框应用程序,对话框中
4、有两个用于选择颜色模式的单选按钮和3个用于选择颜色的复选框,只有在彩色模式下才能选择3种不同的颜色的组合。对话框运行效果如右图,当用户单击“应用”按钮,对话框右边的按键按钮根据选择的颜色实现按钮的自画。调试结果:个error;个warning。实现题目要求填加的功能函数名有:。二、请填空,并用VisualC++按要求编写下列程序。(每题12分,共48分)1用指针作为函数参数编写冒泡排序函数:BubbleSort(int*pArray,intn),在主函数中以指针作为实参调用函数BubbleSort()
5、,从而对已知的整型数组A[]={12,4,6,3,56,45,9}中的元素进行排序。调试结果:个error个warning。2设计一个日期类CDate,该类用于表示日期值(年、月、日)。要求能够通过构造函数设置日期值、能够通过成员函数获取日期值,还能够用友元函数实现将日期加一天的操作,要考虑闰年、闰月和每月的天数。调试结果:个error个warning;CData类中的成员函数名有:;CData类中的成员变量有:。3定义矢量类型,给出平面上两个矢量的加法和减法运算。要求利用非成员函数重载运算符“+”,
6、利用成员函数重载运算符“-”,利用构造函数初始化成员变量。调试结果:个error个warning;实现题目要求的非成员函数名有:;类名:;类中的成员变量有:;类中的成员函数名:。4建立一个名为CDriver的类,该类有以下成员变量:司机姓名、ID号、基本工资、奖金、所得税和实际发放数。还有以下成员函数:两个构造函数,一个用于只初始化司机姓名和ID号,一个用于初始化司机-311-姓名、ID号、基本工资、奖金和所得税;一个输入基本工资、奖金和所得税的函数;一个计算实际发放数的函数;一个输出司机信息的函数,
7、两个重载运算符“+”,一个用于将其他司机的工资加到该司机(如该司机替其他司机代班),一个函数用于将一个数值加到该司机(如提高该司机的工资)。编写主函数,调用第一个构造函数声明一个司机对象并输入其工资,再调用第二个构造函数声明一个司机对象。最后分别计算两个司机的实际发放数,在屏幕输出,并编写代码验证两个重载运算符“+”的功能。调试结果:个error;个warning;类中的成员变量有:;类中的成员函数名:。三、选做题:请在以下4题中任选2题,填空,并用VisualC++按要求编写程序。(每题10分,共2
8、0分)1:编写一个类SDK应用程序,在HELP主菜单中添加菜单项Message,当用户执行菜单项命令Message后弹出信息对话框,显示该菜单项的执行次数。为程序添加键盘输入消息WM_KEYDOWN的处理代码,判断当前按下的键是否是X或x,并给出相应的提示。调试结果:个error;个warning;在用应用程序框架建立的程序中,为实现题目要求,主要功能代码被填加在函数中。2:编写一个SDI应用程序,在“查看”主菜单中添加“十字光标”菜单项,执行“十字光标
此文档下载收益归作者所有