第9章 面向对象的程序设计
- 格式:ppt
- 大小:255.50 KB
- 文档页数:24


09-12 面向对象(技术、需求分析、分析、设计与实现)
一、选择题
(1) 面向对象的分析方法主要是建立三类模型,即 ( D )。
A.系统模型、ER 模型、应用模型 B.对象模型、动态模型、应用模型
C.E-R模型、对象模型、功能模型 D.对象模型、动态模型、功能模型
(2) 面向对象技术中,对象是类的实例。对象有三种成份:( A )、属性和方法。
A. 标识 B. 规则 C. 封装 D. 消息
(3) ( C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A.多态性 B.继承 C.封装 D.消息
(4) 消息是对象间交互的一种机制,消息刺激接收对象产生某种行为。消息的构成有三部分:( B ),消息名,若干变元。
A.发出消息的对象 B.接收消息的对象 C.消息编号 D.时间
(5) 面向对象设计准则包括:模块化,抽象,( A ),弱耦合,强内聚和可重用。
A.信息隐藏 B.可继承 C.封装性 D.实例化
(6) ( A )意味着一个操作在不同的类中可以有不同的实现方式。
A.多态性 B.多继承 C.类的复用 D.封装
(7) 软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( B )。
A.生存期 B.面向对象分析
C.面向对象程序设计 D.面向对象设计
(8) 把一组具有相似特性的对象的描述,称之为( C )。
A. 多态性 B.继承性 C.类 D.消息
(9) 面向对象分析的独到之处在于( A )。
A.将数据和操作结合在一起而不是分离 B.仅考虑数据结构
C.数据和操作分别独立考虑 D.仅考虑操作过程
1 【C语言】《C语言程序设计教程(第二版)》习题答案
说 明
1. 本文所指的《C语言程序设计教程(第二版)》是李凤霞主编、北京理
工大学出版社出版的,绿皮。
2 第1章 程序设计基础知识
一、单项选择题(第23页)
1-4.CBBC 5-8.DACA
二、填空题(第24页)
1.判断条件 2.面向过程编程 3.结构化 4.程序 5.面向对象的程序设计语言 7.有穷性 8.直到型循环 9.算法 10.可读性 11.模块化 12.对问题的分析和模块的划分
三、应用题(第24页)
2.源程序:
main()
{int i,j,k; /* i:公鸡数,j:母鸡数,k:小鸡数的1/3 */
printf("cock hen chick\n");
for(i=1;i<=20;i++)
for(j=1;j<=33;j++)
for(k=1;k<=33;k++)
if (i+j+k*3==100&&i*5+j*3+k==100)
printf(" %d %d %d\n",i,j,k*3);}
执行结果:
cock hen chick
4 18 78
8 11 81
12 4 84
3.现计算斐波那契数列的前20项。
递推法 源程序:
main()
{long a,b;int i;
a=b=1;
for(i=1;i<=10;i++) /*要计算前30项,把10改为15。*/
{printf("%8ld%8ld",a,b);
a=a+b;b=b+a;}}
递归法 源程序:
main()
{int i;
for(i=0;i<=19;i++)
printf("%8d",fib(i));}
fib(int i) {return(i<=1?1:fib(i-1)+fib(i-2));}
执行结果:
1 1 2 3 5 8 13 21 34 55
面向对象的程序设计语言――C++(第二版)-习题参考答案
课后习题答案以及代码
习题参考答案
第1章
1.填空题 C++语言概述
(1)函数说明,函数体
(2)声明区,主程序区,函数定义区
(3)多态性
(4)namespace,using
(5)std
(6)cin,
(7)//
(8)对数据的操作
2.判断题
(1)对 (2)错 (3)错 (4)错 (5)错
3.改错题
(1)没有函数体,应改为
void main() {}; (2)语句没有分号,应改为
using namespace myspace;
(3)cout和操作符共同完成输出的功能,应改为
cout“ Input your name:";
(4)应改为
#include iostream.h
4.简答题
5.编程题 (略) (略)
第2章
1. 选择题 基本数据类型、运算符与表达式
(1)B (2)D (3)B (4)D (5)B
课后习题答案以及代码
2.简答题
(1)(a)、(c)(e)、(f)、(g)、(h)、(i)
(2)(a)、(g)、(i)、(j)
(3)
(a)5.5
(b)0
(c)20
(d)0,0
(e)1 (f)1,2
(g)3
(h)-40
(i)2
(j)3
(k)s1='0's1='9'
(l)N!=0
3.读程序写结果
(1)0,15
(2)(1、1、1),(-1、-1、-1)
(3)
(a)a*a+2*a*b+b*b
;
’. 第二章
2-4
#include
using namespace std;
Add(int a,int b);
int main()
{
int x,y,sum;
cout<<"please input x and y:";
cin>>x>>y;
sum = add(x,y);
cout <
}
Add(int a,int b)
{
return a+b;
}
2-5
(1)this is a C++ program.
(2)
x=50.6 y=10 z=A
x=216.34 y=10 z=A
x=216.34 y=2 z=A
x=216.34 y=2 z=E
(3)
x y z
500 1000 0
500 1500 1500
500 200 1500
2-6
#include
using namespace std;
int main()
{ ;
’.
int *p,*init;
int countp=0;
int countn=0;
p = new int[20];
init = p;
for(int i=0;i<20;i++)
{
cin>>*p;
p++;
}
p = p-20;
for( i=0;i<20;i++)
{
if(*p>0) countp++;
if(*p<0) countn++;
cout<<*p<<" ";
p++;
}
cout<<"正数有:"<
cout<<"负数有:"<
p = init;
delete[] p;
return 0;}
2-7不做要求
#include
//#include
using namespace std;
void checkagescore(string name,int age)
{
if (name == "exit") throw name;
if(age<0||age>50)