VC面向对象编程教程第2版清华大学王育坚著 第三章课后答案

合集下载

Visual C++面向对象程序设计教程与实验(第二版)清华大学出版社第3章习题参考答案

Visual C++面向对象程序设计教程与实验(第二版)清华大学出版社第3章习题参考答案

1.为什么要引入构造函数和析构函数?对象的初始化是指对象数据成员的初始化,在使用对象前,一定要初始化。

由于数据成员一般为私有的(private),所以不能直接赋值。

对对象初始化有以下两种方法:类中提供一个普通成员函数来初始化,但是会造成使用上的不便(使用对象前必须显式调用该函数)和不安全(未调用初始化函数就使用对象)。

当定义对象时,编译程序自动调用构造函数。

析构函数的功能是当对象被撤消时,释放该对象占用的内存空间。

析构函数的作用与构造函数正好相反,一般情况下,析构函数执行构造函数的逆操作。

在对象消亡时,系统将自动调用析构函数,执行一些在对象撤消前必须执行的清理任务。

2. 类的公有、私有和保护成员之间的区别是什么?①私有成员private: 私有成员是在类中被隐藏的部分,它往往是用来描述该类对象属性的一些数据成员,私有成员只能由本类的成员函数或某些特殊说明的函数(如第4章讲到的友员函数)访问,而类的外部根本就无法访问,实现了访问权限的有效控制,使数据得到有效的保护,有利于数据的隐藏,使内部数据不能被任意的访问和修改,也不会对该类以外的其余部分造成影响,使模块之间的相互作用被降低到最小。

private成员若处于类声明中的第一部分,可省略关键字private。

②公有成员public:公有成员对外是完全开放的,公有成员一般是成员函数,它提供了外部程序与类的接口功能,用户通过公有成员访问该类对象中的数据。

③保护成员protected: 只能由该类的成员函数,友元,公有派生类成员函数访问的成员。

保护成员与私有成员在一般情况下含义相同,它们的区别体现在类的继承中对产生的新类的影响不同,具体内容将在第5章中介绍。

缺省访问控制(未指定private、protected、public访问权限)时,系统认为是私有private 成员。

3. 什么是拷贝构造函数,它何时被调用?拷贝构造函数的功能是用一个已有的对象来初始化一个被创建的同类对象,是一种特殊的构造函数,具有一般构造函数的所有特性,当创建一个新对象时系统自动调用它;其形参是本类对象的引用,它的特殊功能是将参数代表的对象逐域拷贝到新创建的对象中。

C++面向对象程序设计习题解答与上机指导(第二版)源程序.doc

C++面向对象程序设计习题解答与上机指导(第二版)源程序.doc

C++面向对象程序设计习题解答与上机指导(第2版)习题参考答案源代码使用源程序的几点注意事项(1) 由于源程序在复制、编辑、解压缩等过程中可能引起部分符号(主要是标点符号,如分号、冒号、逗号、引号)的字体、半全角等发生变化,在编译时可能被检出语法错误,只要使用“替换”功能,纠正后即能顺利运行。

(2) 有的C++系统(如Visual C++6.0)没有完全实现C++标准,它所提供的不带后缀的.h 的头文件不支持友元运算符重载函数,在Visual C++6.0中编译会出错,这时可采用带后缀的.h头文件。

将程序中的#include<iostream>using namespace std;修改成#include<iostream.h>即可顺利运行。

第2章 C++基础【2.2】下面是一个C程序,改写它,使它采用C++风格的I/O语句。

#include<stdio.h>int main(){ int a,b,d,min;printf("Enter two numbers:");scanf("%d%d",&a,&b);min=a>b? b:a;for (d=2; d<min; d++)if (((a%d)==0)&&((b%d)==0)) break;if (d==min){ printf("No common denominators\n");return 0;}printf("The lowest common denominator is %d\n",d);return 0;}【解】#include<iostream>using namespace std;int main(){ int a,b,d,min;cout<<"Enter two numbers:";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<<"No common denominators\n";return 0;}cout<<"The lowest common denominator is "<<endl<<d;return 0;}【2.24】写出下列程序的运行结果。

《C++程序设计教程 第2版》教学素材习题03答案

《C++程序设计教程 第2版》教学素材习题03答案

1.3 75 8 或者 3 7 5 8 (注:为空格、Tab键或者回车键)2. #include "iostream.h"void main(){int a, b, c, d;cin.ignore(1);cin >> a >> hex >> b ;cin >> dec >> c ;cin.ignore(3);cin >> d;cout<<"a="<<a<<" b="<<b<<" c="<<c<<" d="<<d<<endl;}3. #include "iostream.h"void main(){int count=0;char c;cin.get(c);if (c==' ') count++; // 为空格cin.get(c);if (c==' ') count++;cin.get(c);if (c==' ') count++;cin.get(c);if (c==' ') count++;cin.get(c);if (c==' ') count++;cout<<"空格共有:"<<count<<"个"<<endl;}4.x is 100 y=3.140000e+000s5. #include "iostream.h"void main(){int i=8, j=12;double x=3.14, y=90;cout<<"i="<<oct<<i<<'\t'<<"j="<<hex<<j<<endl;cout.setf(ios::scientific, ios::floatfield);cout<<"x="<<x<<'\t';cout.unsetf(ios::scientific);cout<<"y="<<y<<endl;}6. #include "iostream.h"#include "math.h"void main(){double a,b,c,s,area;cout<<"请输入三角形的三边长:"<<endl;cin>>a>>b>>c;s = (a+b+c)/2;area = sqrt(s*(s-a)*(s-b)*(s-c));cout<<"三角形的面积为:"<<area<<endl;}。

java面向对象程序设计第二版课后答案.doc

java面向对象程序设计第二版课后答案.doc

java 面向对象程序设计第二版课后答案【篇一:java 面向对象程序设计课后答案】s=txt>java 面向对象程序设计清华大学出版社(编著耿祥义张跃平)习题解答建议使用文档结构图(选择word 菜单→视图→文档结构图)习题11.james gosling、、、、2.(1)使用一个文本编辑器编写源文件。

(2)使用java 编译器(javac.exe )编译java 源程序,得到字节码文件。

(3)使用java 解释器(java.exe )运行java 程序3.java 的源文件是由若干个书写形式互相独立的类组成的。

应用程序中可以没有public 类,若有的话至多可以有一个public 类。

4.系统环境path d\jdk\bin;系统环境classpath d\jdk\jre\lib\rt.jar;.;5. b6.java 源文件的扩展名是.java 。

java 字节码的扩展名是.class 。

7. d8.(1)speak.java(2)生成两个字节码文件,这些字节码文件的名字speak.class 和xiti8.class ava xiti8(4)执行java speak 的错误提示exception in thread main ng.nosuchmethoderror: main 执行java xiti8 得到的错误提示exception in thread main ng.noclassdeffounderror: xiti8 (wrong name: xiti8) 执行java xiti8.class 得到的错误提示exception in thread main ng.noclassdeffounderror:xiti8/class 执行java xiti8 得到的输出结果im glad to meet you9.属于操作题,解答略。

习题21. d2.【代码1】【代码2】错误//【代码3】更正为float z=6.89f; 3.float 型常量后面必须要有后缀“f或”“f。

面向对象程序设计C课后题答案

面向对象程序设计C课后题答案

第一章:面向对象程序设计概述[1_1]什么是面向对象程序设计?面向对象程序设计是一种新型的程序设计范型。

这种范型的主要特征是:程序=对象+消息。

面向对象程序的基本元素是对象,面向对象程序的主要结构特点是:第一:程序一般由类的定义和类的使用两部分组成,在主程序中定义各对象并规定它们之间传递消息的规律。

第二:程序中的一切操作都是通过向对象发送消息来实现的,对象接受到消息后,启动有关方法完成相应的操作。

面向对象程序设计方法模拟人类习惯的解题方法,代表了计算机程序设计新颖的思维方式。

这种方法的提出是软件开发方法的一场革命,是目前解决软件开发面临困难的最有希望、最有前途的方法之一。

[1_2]什么是类?什么是对象?对象与类的关系是什么?在面向对象程序设计中,对象是描述其属性的数据以及对这些数据施加的一组操作封装在一起构成的统一体。

对象可以认为是:数据+操作在面向对象程序设计中,类就是具有相同的数据和相同的操作的一组对象的集合,也就是说,类是对具有相同数据结构和相同操作的一类对象的描述。

类和对象之间的关系是抽象和具体的关系。

类是多个对象进行综合抽象的结果,一个对象是类的一个实例。

在面向对象程序设计中,总是先声明类,再由类生成对象。

类是建立对象的“摸板”,按照这个摸板所建立的一个个具体的对象,就是类的实际例子,通常称为实例。

[1_3]现实世界中的对象有哪些特征?请举例说明。

对象是现实世界中的一个实体,其具有以下一些特征:(1)每一个对象必须有一个名字以区别于其他对象。

(2)需要用属性来描述它的某些特性。

(3)有一组操作,每一个操作决定了对象的一种行为。

(4)对象的操作可以分为两类:一类是自身所承受的操作,一类是施加于其他对象的操作。

例如:雇员刘名是一个对象对象名:刘名对象的属性:年龄:36 生日:1966.10.1 工资:2000 部门:人事部对象的操作:吃饭开车[1_4]什么是消息?消息具有什么性质?在面向对象程序设计中,一个对象向另一个对象发出的请求被称为“消息”。

C++程序设计 王育坚 清华大学 课后答案

C++程序设计  王育坚  清华大学 课后答案
(4)建立可执行程序。执行“Build|Build…”菜单命令(快捷键F7)即可建立可执行程序,若程序有语法错误,则在屏幕下方的输出窗口中显示错误信息。
(5)执行“Build|Execute…”菜单命令即可在伪DOS状态下运行程序,也可进入DOS状态后运行已建立的程序。
也可采用另一种简单的方法编写C++程序,即执行“File|New|Files|C++ Source File”菜单命令直接创建一个C++源文件,在执行Build命令时再建立项目工作区。
(1)可以在派生类的成员函数中访问基类的非私有成员;
(2)可通过派生类的对象直接访问基类的公有成员。
采用private私有派生,基类所有的公有和保护成员在派生类中都成为私有成员,只允许在派生类的成员函数中访问基类的非私有成员。private派生很少使用。
采用protected保护派生,基类所有的公有和保护成员在派生类中都成为保护成员,只允许在派生类的成员函数和该派生类的派生类的成员函数中访问基类的非私有成员。
1-11工具栏编辑器和快捷键编辑器的打开和使用方法?
答:工具栏编辑器:工具栏编辑器实际上也是一个图象编辑器,主要用于创建新的工具栏按钮。在项目工作区ResourceView页面打开Toolbar文件夹,双击其中的工具栏资源,出现工具栏编辑器和Graphics工具栏、Colors工具栏,单击最后的空白项可添加一个新的按钮。鼠标按下并拖动某个工具栏按钮,可将该按钮删除。
View主菜单中的菜单命令项主要用于改变窗口的显示方式和激活指定的窗口,如激活ClassWizard类向导、Workspace工作区窗口、Output输出窗口和Debug Windows调试窗口。
Insert主菜单主要包括一些与添加有关的操作命令,如添加新类、资源和源代码文件等。

C语言课后题答案

C语言课后题答案

C语言c语言程序设计教程(第2版)课后题及模拟题参考答案习题1 31-1 填空题 31-2 思考题 31-3 编程题 3习题2 42-1 单选题 42-2 思考题 4习题3 53-1 选择题 53-2 填空题 53-3 编程题 5习题4 74-1单选题74-2填空题74-3 编程题7习题5 105-1单选题105-2填空题105-3 编程题10习题6 136-1单选题136-2填空题136-3 编程题13习题7 157-1单选题157-2填空题157-3 编程题15习题8 168-1单选题168-2填空题168-3 编程题16习题9 189-1单选题189-2填空题189-3 编程题18习题10 2210-1单选题2210-2填空题2210-3 编程题22习题11 2411-1单选题2411-2填空题24习题12 2512-1单选题2512-2 填空题25实验篇26实验1 熟悉Visual C++6.0可视化集成开发环境26实验2 顺序结构程序设计26实验3 选择结构程序设计26实验4 循环结构程序设计26实验5 函数28实验6 数组32实验7 指针33实验8 结构体和共用体35实验9 文件36实验10 综合编程36模拟试卷(一)参考答案37模拟试卷(二)参考答案38习题11-1 填空题1. 函数2. 主函数main(),主函数main()3. 主函数main()4. 函数首部,函数体5. {, }6. /*, */7. 顺序结构,选择结构,循环结构8. .c, .obj, .exe1-2 思考题1. 结构化程序设计是指:为使程序具有一个合理的结构以保证程序正确性而规定的一套如何进行程序设计的原则。

其基本结构包括顺序结构、选择结构和循环结构三种。

2. 算法是对具体问题求解步骤的一种描述。

计算机算法的表达工具通常采用以下几种方法:(1)用自然语言表示算(2)用流程图表示算法(3)用伪代码表示算法(4)用程序设计语言表示算法3. 语言简洁、紧凑,使用方便、灵活; 支持结构化程序设计;运算符丰富;数据类型丰富;较强的编译预处理功能;C语言的可移植性好;C语言本身既有一般高级语言的优点,又有低级(汇编)语言的特点;语法限制不太严格,程序设计自由度大。

VisualC 面向对象编程教程第2版(王育坚)清华大学出版社课后答案解析

VisualC  面向对象编程教程第2版(王育坚)清华大学出版社课后答案解析

2-45编写一个程序,输入三角形的三条边的边长,求三角形的面积。

2-45#include<iostream.h>#include<math.h>int main(){int a,b,c;int s,S;cin>>a>>b>>c;s=(a+b+c)/2;S=powl(s*(s-a)*(s-b)*(s-c),0.5);if(S==0)cout<<"此三边不能构成三角形!"<<endl;else{cout<<"面积:"<<endl;cout<<S<<endl;}return 0;}2-46从键盘输入一个大写字母,然后改用小写字母在屏幕输出。

2-46#include<iostream.h>int main(){char ch;int a;cout<<"输入一个大写字母:"<<endl;cin>>ch;if(ch>=65 && ch<=91){ch=ch+32;// a=(int)ch;cout<<ch<<endl;}else cout<<"该字母不是字母或不是字母大写!"<<endl; return 0;}2-47用户输入两个整数,编程输出稍大于第一个整数而又是第2个整数的倍数的数。

计算公式是:valuel+value2-value1%value2.2-47#include<iostream.h>int main(){int value1,value2;int result;cin>>value1>>value2;result=value1+value2-value1%value2;cout<<"该整数为:"<<result<<endl;return 0;}2-48华氏温度转换为摄氏温度的公式是:C=(F-32)*5/9.。

【免费下载】面向对象编程教程_王育坚VC__第2版_第二章课后习题

【免费下载】面向对象编程教程_王育坚VC__第2版_第二章课后习题
int Array[3]; int *pA=Array; int *a=Array; int i; int temp; for(i=0;i<3;i++) cin>>Array[i]; for(i=0;i<3;i++) {
a++; if(*pA<*a) {
temp=*pA; *pA=*a; *a=temp; a++; pA++; } a=&Array[0]; } for(i=0;i<3;i++) cout<<Array[i]<<" "; return 0; }
for(int x=0;x<n;x++) for(int y=x+1;y<n;y++) if(Array[i][x]<Array[i][y]) { temp=Array[i][x]; Array[i][x]=Array[i][y]; Array[i][y]=temp; }
}
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根通保据过护生管高产线中工敷资艺设料高技试中术卷资,配料不置试仅技卷可术要以是求解指,决机对吊组电顶在气层进设配行备置继进不电行规保空范护载高与中带资负料荷试下卷高问总中题体资,配料而置试且时卷可,调保需控障要试各在验类最;管大对路限设习度备题内进到来行位确调。保整在机使管组其路高在敷中正设资常过料工程试况中卷下,安与要全过加,度强并工看且作护尽下关可都于能可管地以路缩正高小常中故工资障作料高;试中对卷资于连料继接试电管卷保口破护处坏进理范行高围整中,核资或对料者定试对值卷某,弯些审扁异核度常与固高校定中对盒资图位料纸置试,.卷保编工护写况层复进防杂行腐设自跨备动接与处地装理线置,弯高尤曲中其半资要径料避标试免高卷错等调误,试高要方中求案资技,料术编试交写5、卷底重电保。要气护管设设装线备备置敷4高、调动设中电试作技资气高,术料课中并3中试、件资且包卷管中料拒含试路调试绝线验敷试卷动槽方设技作、案技术,管以术来架及避等系免多统不项启必方动要式方高,案中为;资解对料决整试高套卷中启突语动然文过停电程机气中。课高因件中此中资,管料电壁试力薄卷高、电中接气资口设料不备试严进卷等行保问调护题试装,工置合作调理并试利且技用进术管行,线过要敷关求设运电技行力术高保。中护线资装缆料置敷试做设卷到原技准则术确:指灵在导活分。。线对对盒于于处调差,试动当过保不程护同中装电高置压中高回资中路料资交试料叉卷试时技卷,术调应问试采题技用,术金作是属为指隔调发板试电进人机行员一隔,变开需压处要器理在组;事在同前发一掌生线握内槽图部内 纸故,资障强料时电、,回设需路备要须制进同造行时厂外切家部断出电习具源题高高电中中源资资,料料线试试缆卷卷敷试切设验除完报从毕告而,与采要相用进关高行技中检术资查资料和料试检,卷测并主处且要理了保。解护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

C++面向象程序设计习题解答与上机指导(第二版)源程序

C++面向象程序设计习题解答与上机指导(第二版)源程序

C++面向对象程序设计习题解答与上机指导(第2版)习题参考答案源代码使用源程序的几点注意事项(1) 由于源程序在复制、编辑、解压缩等过程中可能引起部分符号(主要是标点符号,如分号、冒号、逗号、引号)的字体、半全角等发生变化,在编译时可能被检出语法错误,只要使用“替换”功能,纠正后即能顺利运行。

(2) 有的C++系统(如Visual C++6.0)没有完全实现C++标准,它所提供的不带后缀的.h 的头文件不支持友元运算符重载函数,在Visual C++6.0中编译会出错,这时可采用带后缀的.h头文件。

将程序中的#include<iostream>using namespace std;修改成#include<iostream.h>即可顺利运行。

第2章 C++基础【2.2】下面是一个C程序,改写它,使它采用C++风格的I/O语句。

#include<stdio.h>int main(){ int a,b,d,min;printf("Enter two numbers:");scanf("%d%d",&a,&b);min=a>b? b:a;for (d=2; d<min; d++)if (((a%d)==0)&&((b%d)==0)) break;if (d==min){ printf("No common denominators\n");return 0;}printf("The lowest common denominator is %d\n",d);return 0;}【解】#include<iostream>using namespace std;int main(){ int a,b,d,min;cout<<"Enter two numbers:";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<<"No common denominators\n";return 0;}cout<<"The lowest common denominator is "<<endl<<d;return 0;}【2.24】写出下列程序的运行结果。

C程序设计(第二版)习题解答

C程序设计(第二版)习题解答

4.4 若 a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765, c1=’a’ ,c2=’b’ 。想得到以下的输出格式和结果,请写出程序(包括定义变 量类型和设计输出) 。 要求输出的结果如下: a=□3□□b=□4□□c=□5 x=1.200000,y=2.400000,z=-3.600000 x+y=□3.60□□y+z=-1.20□□z+x=-2.40 u=□51274□□n=□□□128765 c1=’a’ □or□97(ASCII) c2=’b’ □or□97(ASCII) 4.5 请写出下面程序的输出结果: #include "stdio.h" main( )
2
2 -2 0 2
-2
6.1 输入两个正整数 m 和 n,求其最大公约数和最小公倍数。 6.2 输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
n个a aa aaa aa a 之值,其中 a 是一个数字。 6.3 求 S n a
例如:2+22+222+2222+22222(此时 n=5) ,n 由键盘输入。
IT 在线 单片机技术交流 单片机系统设计开发
IT 技术
40 万元<I≤60 万元时,高于 40 万元的部分按 3%提成;60 万元<I≤100 万元 时,高于 60 万元的部分按 1.5%提成;I>100 万元时,超过 100 万元的部分按 1%提成。从键盘输入当月利润 I,求应发奖金总数。 要求: (1)用 if 语句编程序; (2)用 switch 语句编程序。 5.9 输入 4 个整数,要求按由小到大的顺序输出。 5.10 有 4 个圆塔,圆心分别为(2,2) , (-2,2) , (-2,-2) , (2,-2) ,圆半 径为 1。这 4 个塔的高度为 10m,塔以外无建筑物。今输入任一点的坐标,求 该点的建筑高度(塔外的高度为零) 。

Visual_C++面向对象编程教程(第2版)(王育坚_编着)部分答案(请珍惜劳动成果)

Visual_C++面向对象编程教程(第2版)(王育坚_编着)部分答案(请珍惜劳动成果)
return b; } }; class C:public A,public B { public: void SetData(int x,int y) {
a=x; b=y; } };
void main() {
C c; c.A::SetData(30); c.B::SetData(70); cout<<"a="<<c.A::GetData()<<",b="<<c.B::GetData()<<endl; } 6-20 可以将几个单选按钮设为一组,则每次只能从中选取一个,类似单选题;多选按钮则类似多 选题,不限制选择个数。 若要将几个单选按钮设为一组,需要将第一个按钮的 Group 属性选中。则从该按钮直到下 一个被选中 Group 属性之间的按钮为一组。 8-40 void CDemoDlg::OnPaint() { CPaintDC dc(this); // device context for painting
x=a; y=b; } int getX() { return x; } int getY()
{ return y;
} }; class Circle:public Point { protected:
int radius; public:
Circle(int a=0,int b=0,int r=0):Point(a,b) {
CRadiusDialog dlg; dlg.m_x=100; dlg.m_y=100; if(dlg.DoModal()==IDOK) {
x=dlg.m_x; y=dlg.m_y; Invalidate(); } 在 OnDraw 函数中添加代码:

c面向对象程序设计习题解答与上机指导(第二版)源程序

c面向对象程序设计习题解答与上机指导(第二版)源程序

C++面向对象程序设计习题解答与上机指导(第2版)习题参考答案源代码使用源程序的几点注意事项(1) 由于源程序在复制、编辑、解压缩等过程中可能引起部分符号(主要是标点符号,如分号、冒号、逗号、引号)的字体、半全角等发生变化,在编译时可能被检出语法错误,只要使用“替换”功能,纠正后即能顺利运行。

(2) 有的C++系统(如Visual C++6.0)没有完全实现C++标准,它所提供的不带后缀的.h 的头文件不支持友元运算符重载函数,在Visual C++6.0中编译会出错,这时可采用带后缀的.h头文件。

将程序中的#include<iostream>using namespace std;修改成#include<iostream.h>即可顺利运行。

第2章 C++基础【2.2】下面是一个C程序,改写它,使它采用C++风格的I/O语句。

#include<stdio.h>int main(){ int a,b,d,min;printf("Enter two numbers:");scanf("%d%d",&a,&b);min=a>b? b:a;for (d=2; d<min; d++)if (((a%d)==0)&&((b%d)==0)) break;if (d==min){ printf("No common denominators\n");return 0;}printf("The lowest common denominator is %d\n",d);return 0;}【解】#include<iostream>using namespace std;int main(){ int a,b,d,min;cout<<"Enter two numbers:";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<<"No common denominators\n";return 0;}cout<<"The lowest common denominator is "<<endl<<d;return 0;}【2.24】写出下列程序的运行结果。

最新VisualC 面向对象编程教程第2版(王育坚)清华大学出版社课后答案

最新VisualC  面向对象编程教程第2版(王育坚)清华大学出版社课后答案

2-45编写一个程序,输入三角形的三条边的边长,求三角形的面积。

2-45#include<iostream.h>#include<math.h>int main(){int a,b,c;int s,S;cin>>a>>b>>c;s=(a+b+c)/2;S=powl(s*(s-a)*(s-b)*(s-c),0.5);if(S==0)cout<<"此三边不能构成三角形!"<<endl;else{cout<<"面积:"<<endl;cout<<S<<endl;}return 0;}2-46从键盘输入一个大写字母,然后改用小写字母在屏幕输出。

2-46#include<iostream.h>int main(){char ch;int a;cout<<"输入一个大写字母:"<<endl;cin>>ch;if(ch>=65 && ch<=91){ch=ch+32;// a=(int)ch;cout<<ch<<endl;}else cout<<"该字母不是字母或不是字母大写!"<<endl;return 0;}2-47用户输入两个整数,编程输出稍大于第一个整数而又是第2个整数的倍数的数。

计算公式是:valuel+value2-value1%value2.2-47#include<iostream.h>int main(){int value1,value2;int result;cin>>value1>>value2;result=value1+value2-value1%value2;cout<<"该整数为:"<<result<<endl;return 0;}2-48华氏温度转换为摄氏温度的公式是:C=(F-32)*5/9.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
double Y;
double length;
double width;
public:
CRectangle(double s, double e, double l, double w)
{
X=s;
Y=e;
length=l;
width=w;
}
{
day=1;
month++;
}
}
}
else if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
cin>>day;
while(day<1||day>31)
{
cout<<"输入有误,请重新输入日期(1-31)"<<endl;
cin>>day;
}
flag=false;
}
void date::show()
cout<<area;
}
int main()
{
CRectangle cr(2,3,5,4);
cr.Where();
cr.Area();
cr.Move(1,2);
cr.Size(2,3);
return 0;
}
3-48
#include<iostream.h>
{
strcpy(Name,na);
strcpy(ID,id);
strcpy(Sex,se);
Age=ag;
}
void CPerson::Show()
{
cout<<"姓名:"<<Name<<endl;
cout<<"身份证:"<<ID<<endl;
cout<<"性别:"<<Sex<<endl;
void Size(double ,double);
void Where();
void Area();
};
void CRectangle::Move(double x, double y)
{
cout<<"矩形按向量("<<x<<","<<y<<")移动"<<endl;
cout<<"现在矩形左上角所在的位置:"<<endl;
}
void CRectangle::Area()
{
double area;
area=length*width;
cout<<area;
}
int main()
{
CRectangle cr(2,3,5,4);
cr.Where();
cr.Area();
3-44
一个名为CPerson 的类有如下属性:姓名、身份证号、性别和年龄,请用 C++语言定义
这个类,并为上述属性定义相应的方法。
#include<iostream.h>
#include<string.h>
class CPerson
{
private:
char Name[10];
~CRectangle(){}
void Move(double , double);
void Size(double ,double);
void Where();
void Area();
};
void CRectangle::Move(double x, double y)
{
bool leapyear;
leapyear=((year%4==0&&year%100!=0)||(year%400==0));//定义闰年
if(leapyear)
{
if(day>29)//若是闰年的二月当 Day 大于 29 时,Day=1,Mon 增加一个月
year=0;
month=0;
day=0;
}
date(int yr,int mo,int da);
void setdate();
int getyear();
int getmonth();
int getday();
double width;
public:
CRectangle(double s, double e, double l, double w)
{
X=s;
Y=e;
length=l;
width=w;
}
~CRectangle(){}
void Move(double , double);
cout<<"年龄:"<<Age<<endl;
}
void main()
{
CPerson person("王三","610102198506041952","男",21);
person.Show();
}
3-45 设计一个日期类 Date,该类用于表示日期值(年、月、日)。要求除了能够通过相应得成
}
void changer(int mon)
{
if(!flag)
cout<<year<<'/'<<month<<'/'<<day<<endl;
else
cout<<"日期设置有误,不能输出"<<endl;
}
int date::getyear()
员函数设置和获取日期外,还能够实现将日期加一天的操作。
#include<iostream.h>
class date{
int year;
int month;
int day;
bool flag;
public:
date()
{
{
return year;
}
int date::getmonth()
{
return month;
}
int date::getday()
{
return day;
}
void date::addday()
{
day++;
if(month==2)//判断是否是二月
cout<<"("<<X+x<<","<<Y+y<<")"<<endl;
}
void CRectangle::Size(double cl, double cw)
{
cout<<"要更改的长和宽:"<<cl<<cw;
length=cl;
width=cw;
cout<<length*width<<endl;
void addday();
void show();
};
date::date(int yr,int mo,int da)
{
flag=false;
if(mo>=1&&mo<=12&&da>=1&&da<=31)
{
year=yr; month=mo; day=da;
cin>>month;
while(month<1||month>12)
{
cout<<"输入有误,请重新输入月份(1-12)"<<endl;
cin>>month;
}
cout<<"请输入日期(1-31)"<<endl;
}
else
{
flag=true;
}
}
void date::setdate()
{
cout<<"请输入年分"<<endl;
cin>>year;
cout<<"请输入月份(1-12)"<<endl;
cout<<"日期增加一天后为:";
d1.addday();
d1.show();
}
3-46
#include<iostream>
using namespace std;
class CRectangle
{
private:
double X;
}
}
if(month>12)//若月大于 12 则 Mon=1,Year 增加一年
{
month=1;
year++;
相关文档
最新文档