02_0800028面向对象程序设计实验大纲

合集下载

面向对象程序设计教学大纲、实验大纲(JAVA电子系)

面向对象程序设计教学大纲、实验大纲(JAVA电子系)

《面向对象程序设计(java)》课程教学大纲(Object oriented Programming with Java)一、课程基本信息1、课程类别:专业基础课2、课程学时:总学时48,其中实验学时163、学分:44、适用专业:计算机科学与技术5、大纲执笔:计算机科学技术教研室潘俊虹6、制定(修订)时间:2009年10月二、课程教学目的本课程介绍面向对象的理论,以JAVA为例,详细介绍面向对象编程技术,讲述面向对象的抽象、封装、继承性和多态,讲授信息隐蔽、可复用、易修改、易扩充等特性的程序设计。

为将来参与实际项目的开发奠定坚实的基础。

1、任务和地位:通过本课程的教学,帮助学生了解国际上最新的计算机编程设计思想,并能初步运用java技术和基本开发工具进行计算机软件代码设计。

培养学生用面向对象程序设计思想和逻辑思维方式进行计算机编程研究,启发学生的创新意识,提高学生在软件设计过程中分析问题和解决问题的实际动手能力,使学生的理论知识和实践技能得到共同发展。

2、知识要求:要求先修《C语言程序设计》,掌握程序设计的基本思想。

3、能力要求:培养学生用面向对象程序设计思想和逻辑思维方式进行计算机编程研究;能正确的运用这些理论和技能进行一般的计算机项目的分析和判断,进行编程设计,解决应用中的实际问题。

三、课程教学的基本要求1、课程的基本要求(1)熟练掌握Java语言的基本数据类型,运算及表达式,控制结构,字符串的应用。

(2)掌握面向对象编程思想,使用抽象、封装、继承、多态编写简单的类和使用类对象编程(3)掌握Java语言基础类、字符串类的应用(4)掌握异常的应用方法,进行异常处理设计。

(5)掌握Java语言I/O编程及应用方法。

(6)掌握Java图形用户界面设计方法及其编程。

(7)掌握Applet小应用程序的设计方法,设计小型网络应用程序。

(8)掌握Java网络通信程序的设计方法(9)了解线程,JSP,基本数据库访问技术。

面向对象程序设计实验大纲

面向对象程序设计实验大纲

《面向对象程序设计》实验课教学大纲课程名称:面向对象程序设计(Object-Oriented Programming)课程编号:课程类别:专业选修课(非独立设课)学时:18学时(总学时54,其中理论36学时、实验课18学时)学分:1学分(总学分3分,其中理论2学分、实验课1学分)项目统计:8个(其中演示性0个,验证性1个,综合性1个,设计性6个;开放性0个)考核方式:考查适用专业:计算机科学与技术本科专业前修课程:数据结构建设开课学期:第6学期一、课程性质、目的任务《面向对象程序设计实验》是面向对象程序设计的实践性配套课程,以Microsoft的Visual C 6.0做为集成开发环境.通过本课程的实验使得学生更牢固地掌握面向对象程序设计的语法、思想和编程技术.增强学生实践操作技能,养成良好的程序设计风格,为学习其它相关课程和软件的开发打下基础。

学生在实验过程中,应按照实验大纲所规定的内容认真完成,做到理论联系实际,并在实践的过程中加深对理论知识的掌握。

二、教学基本要求1.了解Visual C 环境,掌握C++程序编辑、编译、连接和运行的基本过程;2.掌握各种数据类型极其运用;3.掌握循序、选择和循环结构的运用;4.掌握函数说明、函数重载、以及全局、局部和静态变量的使用方法;5.了解多文件程序的建立和调试的方法;6.掌握数组、指针和字符串的应用;7.掌握结构与类的使用,深刻理解构造函数与析构函数的意义和使用以及类与对象的建立方法;8.掌握从已有类构造新类的方法,以及在派生类中使用基类成员的方法,以及基类对派生类的访问控制,了解虚函数对多态的支持;9.掌握函数和运算符重载的方法,学习使用C++预定义的文件I/O类进行文件输入输出;10.了解Windows程序的消息机制和编程模式,解利用VC++的MFC类库设计面向对象应用程序的过程;四、主要仪器设备每组一套 PⅢ以上的PC机。

五、参考教材及图书资料1.《C++面向对象程序设计》清华大学出版社王萍2.《C++面向对象程序设计题解与上机指导》清华大学出版社谭浩强3.《C++程序设计实验指导与习题解答》北京大学出版社李兰等六、教学方法与考核1. 教学方法为充分发挥学生的积极性、主动性,启发引导和培养学生具有自我开拓和获得知识的能力,在实验内容上本着突出重点,分解难点,举一反三,着重培养学生的分析问题和解决问题的能力。

Java语言面向对象程序设计实验指导教学大纲2022版

Java语言面向对象程序设计实验指导教学大纲2022版

《面向对象程序设计课程设计(Java)》教学大纲课程名称:面向对象程序设计课程设计(Java)课程英文名称:Course design of object oriented programming (Java)学时/学分数:54/1.5课程性质:指选课程类型:专业基础课(实践类)适用专业:计算机科学与技术先修课程:程序设计基础一、课程简介《面向对象程序设计(Java)课程设计(Java)》是为《面向对象程序设计(Java)》课程开设的一门专业实验课程,其目的是通过一系列编程类实验,针对面向对象程序设计的基本原理如抽象、封装、继承、多态以及组合有深入的理解和掌握。

让学生在加深对面向对象程序设计基本原理的理解和掌握的基础上,能熟练运用和使用Java语言语法、基础包中的常用类和方法,针对编程问题能运用面向对象思维进行分析、设计和实现代码实现。

通过该课程的学习,培养学生运用Java语言和面向对象程序设计思想来编程和解决实际问题,为后继课程的学习和今后在相关领域开展工作打下基础。

二、课程教学目标通过本课程的学习,学生应达成以下目标:课程目标1:了解Java语言的常用开发工具以及所用工具的局限性。

熟悉Java面向对象程序设计的基本方法和熟练使用Java软件基础包中的常用类和方法,针对编程问题能运用面向对象思维进行分析、设计和实现代码。

课程目标2:能够基于Java和数据库等技术并融合华为鲲鹏云计算技术,独立完成一个简单的C/S应用程序分析和开发工作,或者完成一个现有Java程序的移植和测试。

三、课程内容安排和基本要求(一)教学内容、要求及教学方法备注:①教学要求为针对课程教学目标提出的具体要求;②教学方式包括讲授、指导、上机实验、讨论等。

四、课程考核1、考核与评价方式及成绩评定本课程考核方式及评分比例由平时成绩组成:(1)平时成绩 100%平时成绩由必做实验的考核成绩平均计算得到。

每个实验的考核成绩主要通过程序代码、程序运行操作、解释与问题回答等综合评定。

[VIP专享]《面向对象程序设计》实验大纲[1]

[VIP专享]《面向对象程序设计》实验大纲[1]
理解变量与常量的 含义;掌握浮点型 变量的定义和使用 √ 方法;掌握符号常 量的定义和使用方 法;学习使用基本
输出实验
2√
1
基本输入

基 本验综设 操 证 合计 作


时做做
号目
内容提要

实验名称
学必选
序项


(课程编号 0706842002) 实验类型

面向对象程序设计实验课程
三、实验项目及内容提要
2. 实验要求 (1)掌握 C++语言有关基本概念。 (2)掌握 C++语言的基本语法和基本语句。 (3)掌握 C++语言的程序编写方法. (4)提高程序调试能力。
int level(BinTreeNodlesevt}r*Beutsl,icnBt(rtrTuiontrcaoTetgtert,_eyapNnpetg)oy;oeN_pddinoeeodtd;fde*esreafc*ttrphsB*au{l)ti;cilrn/duh/tT;ciB/lr/tdo1eiTt;u1ea//NcnrNgoto_loiu(fdn(dtnbe*oetpivdlt{(roe(e}TbidpEititrcfrl(ero!-pbmu>tintrTvritgaey-l(>hlpbulteeie,rtrf=xdt)e,=apr{xkextta,)rt;ru{;k,kr)sd+n;tra+;u1t;ac}0txyBpieTNxv},ooidi{ndet&m*lkac)hi}nil(de)}l;s/e/ js+tr}+uj;cBf+BtoB.+Bid.r.L(;+adikTe+taanN=;t[agojB]e[tdkh=l.se+L+eA1e*+]nr.i;dfc=g(d.-[d;{aiB]1a/it;f/a.;t(dkaA[}ia[]>.kBtdB<}=a];aii.T[BLjt+;aNke.+d[Loni;-]aed-g>t)netahg,B[jt*]+h.)wBd+]{avhi;T=otilareiAedi[n(Be.i{dtm;.<Laive=etAoarngi.0[dLgie],e;jt2Ch=n(o{Sg-0ut9q1h,n/kAL])/t)/iL/[;2s1/e1AtA…aABBmf"…,.S(h+Bq"mniLT6m+irsnet8]e&mhBTen),amidn+dtn&a2Ot*acx(7o10u)n+t)0x{11*ixf=0( nT+o1)d*{ex2i_1f c(+(o!uT2/xn/-*10>tx+l2+cxh=1il;+dnx)o&2/d/h&e=tt_(pn!c:To0o//-duw>1enrw*_c2t/wchx-oi0.1ldu;xon)/)1c*t;cinx6o42.1ucleonfmtt+d/+5ap;t-a5//r7iLg9Cihs4ot8lNuet5nmof9ttdreLp4iegme.=h*ap3tMfAmBol(a[aTrTlit]ex(-;(><i2)nAlccetl[ha0i]}ise=l=ds1,0}A…Tc;[yoine2pu<-nT6ein=-yH>12tp)(]Te;v;enn[Co1-A-ti1o3m1d[u]nA)pHin-[/;in(tv-kL21]ene;]1reyais=A+)nef=[+(t-nm(k1Ta])eAT-p){y>nyA;r-p%c2eh…1iAld3e[2,1]3c,2e1oi20Vn0(u3e=bt×n4i{)n3t1a5)B0);,5b20A}{7,B(2ce[2a150,(l0)ds0cn(a20e,a)]×ie[13j1)1cnr2,a17Af2e0A4,i58g2jtB]b1u(B03}(a5r4,21[En)]06a1B;=07A51([}{0]b937S<A/3)56/HaL([06C0c,sT1b3)]uo[A.>81A0c5u,493]cBn<B0.]=taC5H[L8(0,A1De(4g]k/,Aa5>2EBef0,[)Fy,<]*4C[G)G]b[=2B1,,DHk)g+[]e>,I1AEJy,/[<(,81%C1c]-[8,a5bD1)]C>3C]B,D1<[D1]2Bd62,GFc3E>=41A,V5</1I5EdH475,Gf1231>01+0*J5,91<420G4+0e*30G241,7W1d+*787>13P031,4*9<1L74=41f=0+,515a24953>**/546,17<5+15=0g37413,2*0c5572>/4+517,5<6451*g524,0d+3>956,*5<0315f9+2,3e5W12>14P,12*<3L157g+=56,52f13053>105*693}64*1,{73+80217+9596510*77046873+1*71249264+*9503182+79012*176208590=*2092+8123169831731237*793}W2+531P352L5*0313173+s3T3125158*,21T2052=5,2…915W063…303P5,LTS Tini k1i(2i={a1b,2c,d…e…fg}S0)1,1k10in1i011k11k10n+1kk1Pn21>r+0ikm…00…11+1k0s1=0n11+n21K…ru…snkas1l ns,s=nk,nk a11a121a02K1)aru2s2kaa=2l203*:9(a1i+03/1jA2-03aB(3a131+Aa12=3B+42[…0+]3A…+a3aij1+n3inn149-+iH10-41au+jnfi84+fnm4+16a5B8n+58F1544):52=5706305306.986,2T76:0150,D811:00148110683171,F10ST6:06D413S024H515,1H12:007412101402H*1291u60+22f{f7m4*63a2+n58307*71836+21102*72306+722774*0674128+493}*()4+86*312=513219 5:13/5671(130+7822+6261+p03a1+341352+401143,41)p0=83,21a.8425,913,,p66331:121,0A1a24B13G,,CP4pJ9AD3KG21EHD12AFDaJ3GBH,EPaDHKBApGIBM3J2HEKIF1AJMCKCAEFCMFIIM

4《面向对象程序设计》实验教学大纲 (1)

4《面向对象程序设计》实验教学大纲 (1)

管理学院信息管理与信息系统专业课程实训教学大纲课程实习名称:面向对象程序设计教学周数:2周学分: 2适用专业:信息管理与信息系统、会计学、工商管理、工程管理课程类型:必修For personal use only in study and research; not for commercial use一、实训的目的及任务通过试验,使学生进一步掌握掌握面向对象程序的基本概念特点结构原理及设计方法重点学习C++程序设计语言的相关内容能阅读C++程序掌握编程技巧培养学生面向对象的程序设计与软件开发能力,巩固和加深面向对象程序设计理论知识,加强学生独立分析问题和解决问题的能力、综合设计及创新能力的培养,同时注意培养学生实事求是、严肃认真的科学作风和良好的实验习惯,为今后工作打下良好的基础。

二、实训的基本要求For personal use only in study and research; not for commercial use1) 上机实验之前学生应当为每次上机的内容作好充分准备对每次上机需要完成的题目进行认真的分析列出实验具体步骤写出符合题目要求的程序清单准备出调试程序使用的数据以便提高上机实验的效率。

2) 按照实验目的和实验内容以及思考题的要求进行上机操作录入程序编译调试反复修改直到使程序正常运行得出正确的输出结果为止。

3) 根据实验结果写出实验报告实验报告应当包括实验题目、程序清单,运行结果。

For personal use only in study and research; not for commercial use三、实训的内容实验一VB环境和程序设计初步一、类别:演示性试验For personal use only in study and research; not for commercial use二、实验目的:了解VB系统对计算机的要求;掌握启动和退出VB的方法,建立编辑和运行一个简单的VB应用程序的全过程,掌握常用控件(文本框、标签、命令按钮)的应用。

《面向对象程序设计实验》课程教学大纲教案

《面向对象程序设计实验》课程教学大纲教案

《面向对象程序设计实验》课程教学大纲教案第一章:面向对象程序设计概述1.1 面向对象程序设计的基本概念对象类封装继承多态1.2 面向对象程序设计的特点模块化代码重用性可维护性可扩展性1.3 面向对象程序设计与传统程序设计的比较第二章:类与对象2.1 类的定义与创建定义类创建对象构造函数与析构函数2.2 对象的属性与方法属性方法访问控制符2.3 封装与数据隐藏私有成员变量私有方法公有接口第三章:继承与多态3.1 继承的定义与实现继承的概念继承的类型继承的实现3.2 多态的定义与实现多态的概念多态的实现虚函数与多态3.3 抽象类与接口抽象类的概念接口的定义与实现第四章:面向对象编程实践4.1 面向对象程序设计的基本步骤分析问题设计类实现类测试与调试4.2 面向对象程序设计实例学生管理系统图书管理系统购物车系统第五章:面向对象程序设计的高级话题5.1 模板与泛型编程模板的概念模板的特殊化模板元编程5.2 设计模式简介设计模式的概念常用的设计模式设计模式的应用5.3 面向对象程序设计的性能优化性能优化的概念性能优化的方法性能优化的工具与技术第六章:GUI编程与事件处理6.1 GUI编程基础图形用户界面简介事件驱动程序设计常用的GUI组件6.2 事件处理机制事件的概念事件监听器事件分发机制6.3 简单的GUI应用程序实例计算器程序文本编辑器程序图片浏览器程序第七章:数据库编程与SQL语言7.1 数据库基础数据库的概念关系型数据库数据库连接7.2 SQL语言简介SQL的概念数据定义语言(DDL)数据操作语言(DML)数据查询语言(DQL)7.3 数据库编程实践连接数据库创建、读取、更新和删除数据事务处理第八章:网络编程与Socket通信8.1 网络编程基础网络编程的概念套接字(Socket)编程常用的网络协议8.2 客户端与服务器端通信实例简单服务器程序的实现简单客户端程序的实现文件传输程序的实现8.3 网络应用案例分析电子邮件系统网络浏览器即时通讯软件第九章:软件工程与项目管理9.1 软件工程概述软件开发过程软件需求分析软件设计软件测试9.2 项目管理基础项目计划项目进度管理项目风险管理项目团队管理9.3 常用的软件开发工具与技术集成开发环境(IDE)版本控制系统项目管理软件第十章:面向对象程序设计的未来趋势10.1 面向对象程序设计的新技术面向对象的语言特性新的编程范式(如函数式编程)云计算与大数据技术10.2 面向对象程序设计的未来发展与机器学习物联网(IoT)区块链技术10.3 面向对象程序设计者的职业规划技能提升行业趋势个人发展重点和难点解析重点环节一:类的定义与创建类的定义:理解类作为模板的概念,掌握类中属性和方法的定义。

《面向对象程序设计实验》课程教学大纲教案

《面向对象程序设计实验》课程教学大纲教案

《面向对象程序设计实验》课程教学大纲教案第一章:引言1.1 课程简介介绍《面向对象程序设计实验》课程的目标、内容和要求。

强调课程的重要性,以及学习面向对象程序设计的意义。

1.2 面向对象程序设计概述解释面向对象程序设计的概念和特点。

解释类和对象的概念,并给出简单的实例。

第二章:环境搭建2.1 实验环境准备介绍实验所需的硬件和软件环境。

指导学生如何安装和配置实验所需的开发工具和编程环境。

2.2 第一个面向对象程序引导学生编写第一个面向对象程序,输出“Hello World”。

解释程序的运行过程,并解释程序中的关键代码。

第三章:类和对象3.1 类的定义解释类的概念,并介绍如何定义一个类。

举例说明类的属性和方法的定义和使用。

3.2 创建和使用对象解释对象的概念,并介绍如何创建和使用对象。

举例说明如何通过对象调用类的方法和访问类的属性。

3.3 构造函数和析构函数解释构造函数和析构函数的概念,并介绍它们的作用。

举例说明如何定义和使用构造函数和析构函数。

第四章:继承和多态4.1 继承的概念解释继承的概念,并介绍继承的作用和意义。

举例说明如何实现继承,并解释继承的优点和缺点。

4.2 多态的概念解释多态的概念,并介绍多态的作用和意义。

举例说明如何实现多态,并解释多态的优点和缺点。

第五章:封装和接口5.1 封装的概念解释封装的概念,并介绍封装的作用和意义。

举例说明如何实现封装,并解释封装的优点和缺点。

5.2 接口的概念解释接口的概念,并介绍接口的作用和意义。

举例说明如何定义和使用接口,并解释接口的优点和缺点。

第六章:常用类库和框架6.1 标准模板库介绍C++标准模板库(STL)的基本概念和常用组件,如vector、map、list 等。

演示如何使用STL中的类库来提高程序的效率和可维护性。

6.2 设计模式介绍面向对象设计模式的基本概念和常用模式,如单例模式、工厂模式、观察者模式等。

分析设计模式在实际开发中的应用场景和好处。

面向对象程序设计实验大纲

面向对象程序设计实验大纲

面向对象程序设计实验大纲大学课程《面向对象程序设计》实验大纲一、实验课的性质与任务面向对象程序设计是通信工程专业的一门重要基础课程,主要任务是让学生充分掌握面向对象程序设计的基本概念、各种数据类型的使用技巧、程序设计的思想和方法。

二、实验课程目的与要求1.实验目的通过面向对象程序设计上机实验加深对讲授内容的理解,尤其是一些语法规则、常用语句、程序结构等。

熟悉面向对象程序设计的程序开发环境,并能逐步实现用面向对象的程序设计思想独立编程能力。

学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。

2.实验要求掌握C++语言有关基本概念。

掌握C++语言的基本语法和基本语句。

掌握C++语言的程序编写方法. 提高程序调试能力。

三、实验项目及内容提要面向对象程序设计实验课程实验序项编号号目实验类型学时必做学基选分本验综设做数操证合计作实验名称内容提要1 基本输入输出实验2 √理解变量与常量的含义;掌握浮点型变量的定义和使用方法;掌握符号常量的定义和使用方法;学习使用基本算术运算符;熟悉C++语言√ 的基本输入输出方法;掌握字符型变量和整型变量的定义和使用方法;了解字符型数据的ASCII码存储方式;学习C++语言的输入输出方法。

√ 2 基本控制结构实验 2 √熟悉C++语言的基本输入输出方法;理解程序中控制表达式的作用;掌握C++语言关系运算符与关系表达式的使用方法;熟悉C++语言分支语句if-else的使用方法;理解循环的概念;掌握while循环语句和for循环语句;学习使用循环的嵌套;学会运用循环与分支的嵌套;进一步熟悉关系运算符和逻辑运算符。

理解函数的意义;掌握函数的定义方法;掌握函数的声明形式;掌握函数的调用形式;理解形参和实参的值传递关系;学习√ 函数返回值的使用方法;理解函数重载的意义;掌握重载函数的声明、定义与调用方法;进一步理解函数形参和实参的值传递关系。

理解类与对象的概念;掌握类的声明和定义方法;掌握对象的定义和使用方法;掌握带参数的构造函数√ 的定义和使用;掌握静态数据成员和静态成员函数的定义和使用方法;理解类与对象之间的关系;理解3 函数实验 2 √ 4 类与对象实验4 √类的组合的概念和使用方法;学会定义并使用带参数的构造函数和不带参数的默认构造函数;掌握组合类构造函数和析构函数的定义、实现和调用顺序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

面向对象程序设计实验大纲毛根生 2012.10一、实验目的按课程学习的进程,安排上机内容,由浅及深把课程习题通过上机解决。

有5个实验,每个实验都有不同的目的。

二、实验要求本大纲有5个实验,根据时间安排只有4次实验课的话,其中第5个实验可以不做。

并且在每个实验中可由指导教师选择2~3个题目给学生做。

学生可以参考大纲提供的程序,打入到计算机,编译、连接、运行调试。

对每一个实验要根据本实验大纲提出的要求回答问题,写出实验报告。

三、实验课时实验课共_15__学时。

四、实验环境Windows xpMicroSoft Visual C++ 6.0说明:以下为各个实验简介以及目的、任务、要求的描述:实验一. 熟悉C++程序的风格和C++程序的上机全过程【实验目的】1.熟悉C++程序的风格,熟悉实验环境。

2.练习C++程序的输入、修改、编译、连接与运行的全过程。

3.本实验有4个程序【实验内容】1. 习题2.2下面是一个C程序,改写它,使它采用C++风格的I/O语句。

#include <iostream.h>int main(){ int a,b,d,min;cout<<"输入两个整数:";cin>>a; cin>>b;min=a>b?b:a;for(d=2;d<min;d++)if((a%d==0)&&(b%d==0))break;if(d==min){ cout<<"没有公约数!\n";return 0;}cout<<"最小公约数是:"<<d<<endl;return 0;}(1)该程序做什么工作?(2)该程序中那几个数是由键盘输入的?那几个数是输出的?那几个数是临时变量?(3)用C++风格的I/O语句是什么?(4)写出该程序的算法(用框图表示)(5)该程序你有否上机编译、连接、运行通过。

2. 习题 2.20分析下面程序的输出结果:#include <iostream.h>int &f(int &i){ i+=10;return i;}void main(){ int k=0;int &m=f(k);cout<<k<<endl;m=20;cout<<k<<endl;}(1)该程序做什么工作?(2)该程序有几个函数?其中f函数是什么函数?其功能是什么?(3)写出该程序的算法(用框图表示)(4)该程序你有否上机编译、连接、运行通过。

3. 习题2.23 建立一个被称为sroot( )的函数,返回其参数的二次根。

重载sroot( )三次,让它分别返回整数、长整数与双精度数的二次根(为了实际计算二次根,可以使用标准库函数sqrt( ))。

#include <iostream.h>#include <math.h>int sroot(int i){ return (int)sqrt(i); }float sroot(float f){ return (float)sqrt(f); }double sroot(double d){ return (double)sqrt(d); }void main( ){ int i=12;float f=3.4;double d=5.67;cout<<"i 的二次根="<<sroot(i)<<endl;cout<<"f 的二次根="<<sroot(f)<<endl;cout<<"d 的二次根="<<sroot(d)<<endl;}(1)该程序说明了C++的一个什么重要问题?在C语言中允许定义三个同名的函数sroot吗?为什么?(2)该程序你有否上机编译、连接、运行通过。

4. 习题2.24 编写C++风格的程序,解决百钱问题,将1元人民币兑换成1,2,5分的硬币,有多少种换法?#include <iostream.h>void main(){ int i,j,k,n=1;for(i=1;i<=100;i++)for(j=1;j<=50;j++)for(k=1;k<=20;k++)if (i+2*j+5*k==100){ cout << "换法 "<<n<<':'<<i<<','<<j<<','<<k<<endl;n++;}}(1)该程序做什么工作?(2)该程序中那几个数是输出的?那几个数是临时变量?(3)用C++风格的I/O语句是什么?(4)写出该程序的算法(用框图表示)(5)该程序你有否上机编译、连接、运行通过。

实验二. 熟悉类和对象的定义和使用,C++的封装性【实验目的】1.熟悉C++程序类定义的一般形式。

2.熟悉C++程序对象的定义,对象的使用。

3.构造函数与析构函数的定义。

4.本实验有5个程序【实验内容】1. 习题3.19运行下面的程序,并说明运行结果为什么?。

#include <iostream.h>class example{ public:example(int n){ i=n; cout<<"构造函数\n"; }~example(){ cout<<"析构函数\n"; }int get_i(){ return i; }private:int i;};int sqr_it(example o){ cout<<"调用sqr_it开始\n";return o.get_i()*o.get_i();}void main(){ example x(10);cout<<x.get_i()<<endl;cout<<sqr_it(x)<<endl;cout<<"调用sqr_it结束\n";}(1)该程序定义了一个什么类?数据成员是什么?函数成员是什么?函数的功能是什么?(2)该程序中是如何用类来定义对象的?数据又是如何到对象中的?又是如何输出的?(3)该程序你有否上机编译、连接、运行通过。

2. 习题3.30 下面是一个计算机器的定义,请完成该类的实现。

#include <iostream.h>class counter{int value;public:counter(int number) { value= number; }void increment() { value++; }void decrement() { value--; }int getvalue() { return value; }void print() { cout <<"计数器的值为 "<<value<<endl; }};void main( ){ counter ct(0);int top,low;for (int i=1; i<=100; i++ ){ ct.increment(); ct.print(); top=ct.getvalue(); }for (i=1; i<=100; i++ ){ct.decrement(); ct.print(); low=ct.getvalue(); }cout << "top="<<top<<",low="<<low<<endl;}(1)该程序定义了一个什么类?数据成员是什么?函数成员是什么?函数的功能是什么?(2)类中有否定义构造函数?说明构造函数的特点。

(3)该程序中是如何用类来定义对象的?数据又是如何到对象中的?这与上一题比较有什么不同?(4)主函数在做什么?(5)该程序是否你自己独立编出的?有否上机编译、连接、运行通过。

3. 习题 3.32建立类cylinder,cylinder的构造函数被传递了两个double值,分别表示圆柱体的半径和高度。

用类cylinder计算圆柱体的体积,并存储在一个double变量中。

在类cylinder中包含一个成员函数vol(),用来显示每个cylinder对象的体积。

#include <iostream.h>class cylinder{double v;public:cylinder(double r, double h){ v=(3.14*r*r)*h; }void vol(){ cout<<"园柱体的体积是:"<<v<<endl; }};void main( ){ cylinder obj(1.5,10.0);obj.vol();}(1)该程序定义了一个什么类?数据成员是什么?函数成员是什么?函数的功能是什么?(2)类中有否定义构造函数?说明构造函数的特点。

(3)该程序中是如何用类来定义对象的?数据又是如何到对象中的?(4)该程序是否你自己独立编出的?以后你能否不看老师的答案自己独立编出这样难度的程序?(5)有否上机编译、连接、运行通过。

4. 习题 3.33构建一个类book,其中含有两个私有数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1~5,将price初始化为qu的10倍。

显示每个对象的qu*price 值。

#include <iostream.h>class book{int qu, price;public:book(int q){ qu=q; price=10*q; }int get_qu(){ return qu; }int get_price(){ return price; }};void main( ){ book obj[5]={1,2,3,4,5};for(int i=0;i<5;i++){ cout<<"数组对象"<<i+1<<"的qu*price值为:"<<obj[i].get_qu()*obj[i].get_price()<<endl;}}(1)该程序定义了一个什么类?数据成员是什么?函数成员是什么?函数的功能是什么?(2)类中有否定义构造函数?说明构造函数的特点。

相关文档
最新文档