《程序设计基础》试卷B及答案

《程序设计基础》试卷B及答案
《程序设计基础》试卷B及答案

黄淮学院计算机科学系2007-2008学年度第一学期

期末考试《程序设计基础》B 卷

注意事项:本试卷适用于计科系06级本科计算机科学与技术专业学生。 题号 一 二 三 四 总分 核分人 得分

1.__ ____函数是程序启动时惟一的入口。

2.算法的复杂性包含两方面: 和 。

3.已知 char c= 'a' ; int x=2,k; 执行语句k=c&&x++ ; 则x 为 ,k 为 。 4.数值0x34对应的十进制为 。

5.已知int a ; 则表达式”(a=2*3 , 3*8), a*10”的结果为_ _ ____,变量a 的值为___ ___。 6.面向对象程序开发步骤为: 、 和面向对象实现。

1.下列程序设计语言中( )是面向对象语言。 A. FORTRAN B. C 语言 C. C++ D. 汇编语言 2.下列关于注释的说法哪个是错误的( )。 A. 注释不是程序中的可执行语句 B. 注释对于程序的执行有很重要的意义 C. 注释将在程序的编译阶段被编译器剔除 D. 编程时在程序中添加适当的注释是一个良好的编程风格 3.算法设计应该遵守( )的设计原则。

A. 自底向上,逐步求精

B. 自顶向下,逐步求精

C. 自底向上,同步扩展

D. 自顶向下,同步扩展 4.下列语句执行后a 的值为( )。

int a=4, &z=a, k=3;

a=k; z+=2; k++; A. 0 B. 4 C. 1 D. 5 5.以下程序执行后,屏幕输出为( )。

#include “iostream.h ” void fun(int d) {d++;}

void main() { int d=3; fun(d); d++; cout<

A. 2

B. ‘b ’

C. c

D. ‘c ’

7.判断char 型变量d 是否为小写字母的正确表达式为( )。

A. (d>=’a ’)&&(d<=’z ’)

B. ‘a ’<=d<=’z ’

C. (d>=’a ’)||(d<=’z ’)

D. ‘A ’<=d<=’Z ’ 8.已知:int k=7, x=12; 则执行语句( )后x 的值为0。

A. x+=k-x%5;

B. x+=(x-k%5);

C. x%=(k-=5);

D. (x-=k)-(k+=5); 9.运行下列程序,其输出结果为( )。

#include “iostream.h ” void main() {

int x(5),y(5),z(5);

y--&&++x&&z--||y++;

cout<

A. 6,4,4

B. 6,4,5

C. 6,5,4

D. 5,4,5

10.已知:int a=1, b=2; 下列switch 语句中( )的格式正确。 A. switch(a)

{

case b+1: a--; break; case b+2: a++; break; }

B. switch(a==b)

{

default: a-b }

C. switch(a/10+b)

{

得分 评卷人 一、填空题(每空2分,共20分)

得分 评卷人

二、选择题(每题1分,共30分)

姓名:________ 学号:__________ 年级:______________ 专业:_____________

…….……………………….密…………………封…………………线…………………………

case 5: a-=b; break; default: a+=b; }

D. switch(a*a)

{

case 1,2: ++a; case 3,4: ++b; }

11.以下程序执行后,程序输出结果是( )。

#include “iostream.h ” #define max(a,b) a>b?a:b void main() {

int m=1, n=2, o=3, p=4;

cout<

12.执行以下程序段之后x 的值为( )。

int i=-5,x=0; while(i) {

i=i+x; x++; } A. 0 B. -2 C. 1 D. 死循环

13.下面程序运行在Windows XP 下32位系统环境,程序的运行结果应该是( )。 #include "iostream.h" #include "stdlib.h" #include "string.h"

void fun(char chName[50]) {

strcpy(chName,"Hello"); int iTemp[50] = {0};

void *pVoid = malloc(100); char ch=10;

cout<

void main() {

char a[50]; fun(a); }

A. 50,50,1,100

B. 4,200,1,4

C. 50,50,1,4

D. 4,200,1,100 14.下列( )不是语句。

A. cout<<”abc ”

B. ;;

C. a+b;

D. a++; 15.下列哪个的函数原型的定义是正确的( )。 A. int MoveToPosition(int x=0, int y, int z=0);

B. int MoveToPosition(x=0, y, z=0);

C. int MoveToPosition(int x, int y=0, int z=0);

D. int MoveToPosition(int x=0, int y=0, int z);

16.下列哪种方式不是高级语言中参数的传递机制( )。 A. 传值调用 B. 函数调用 C. 传址调用 D. 引用调用 17.以下有关类和对象的叙述不正确的是( )。

A. 对象是类的一个实例

B. 任何一个对象都归属于一个具体的类

C. 一个类只能有一个对象

D. 类与对象的关系和数据类型与变量的关系相似 18.以下有关构造函数的叙述不正确的是( )。

A. 构造函数名必须和类名一致

B. 构造函数在定义对象时自动执行

C. 构造函数无任何函数类型

D. 在一个类中构造函数有且仅有一个 19.提供函数重载机制的意义在于( )。 A. 实现程序代码共享 B. 使用方便,提高可读性 C. 提高函数运行效率 D. 减少函数存储空间 20.下列数组初始化语句错误的是( )。 A. char s[3]=“abc ”; B. char Letter[2][3]={'a','b','c','d','e','f'};

C. int Student[5]={1,2,3};

D. int a[2][3]={{1,2,3},{4,5,6}};

21.下述4种情况中,最适宜采用内联函数方式实现的是( )。

A. 函数代码多,不常调用

B. 函数代码少,经常调用

C. 函数为递归调用函数

D. 函数体含有复杂的循环语句 22.C++借助于( )实现封装。

A. 结构

B. 类

C. 数组

D. 函数 23.下列语句执行后a 的值为( )。 a=6+5%2-5/2; A. 6 B. 5.5 C. 5 D. 7

…….……………………….密…………………封…………………线…………………………

24.在C++的类继承中,不能被派生类继承的有( )。

A. 类型转换函数

B. 构造函数

C. 虚函数

D. 静态成员函数 25.所有在函数中定义的变量及函数的形式参数都属于( )。 A. 全局变量 B. 局部变量 C. 外部变量 D. 常量 26.下列语句中正确的是( )。 A. enum Doctor {Tom, Lily, Mark}; B. enum Doctor{char* Tom, char* Lily, char* Mark}; C. struct Student{name, sex, age};

D. struct Student{char* name, char* sex, int age}; 27.C++中,被private 修饰的成员能被( )访问。 A. 父类 B. 子类 C. 除了自身之外均不能访问 D.友元 28.设有基类定义

class Base {

private: int a; protected: int b; public: int c; };

派生类采用何种继承方式可以使成员变量b 成为自己的私有成员( )。 A. 私有、保护、公有均可 B. 私有继承 C. 保护继承 D. 公有继承 29.下列说法不正确的是( )。 A. 对象可以赋值给数组元素 B. 对象可以用作函数参数 C. 对象之间不可以相互赋值 D. 对象可以用作另一对象的数据成员 30.下列描述中( )是错误的。

A. 没有必要直接调用析构函数

B. 子类构造函数可以是内联函数

C. 在派生类构造函数中可给父类数据成员赋值

D. 构造函数的返回值为void 类型

1.算法的5个特性是什么?算法与程序的区别有哪些?

2.简述白盒测试和黑盒测试。

3.什么是软件生命周期?它分为哪几个阶段?

得分 评卷人

三、简答题(每题6分,共30分)

……………….密…………………封…………………线…………………………

4.简述面向对象分析的主要原则。

5.简述函数重载的意义及如何实现函数重载。

1.分析下列程序运行后的输出结果。 #include "iostream.h" void printfun(int n) { if(n>0) {

cout<

} }

void main(int argc, char* argv[]) {

printfun(4); }

2.定义一个CPoint 类,具有横坐标m_x ,纵坐标m_y 两个属性,提供构造函数、得到横坐标函数GetX()、得到纵坐标函数GetY()。

得分 评卷人 四、编程题(每题10分,共20分)

………………封…………………线…………………………

黄淮学院2007—2008年第一学期计算机科学系

2006级本《程序设计基础》期终试卷(B)

参考答案及评分标准

命题人:

一、填空题

1、main

2、时间复杂性、空间复杂性

3、3 1

4、52

5、60 6

6、面向对象分析、面向对象设计

二、选择题

1-5 CBBDB 6-10 BACAC 11-15 ADBAC 16-20 BCDBA

21-25 BBCDB 26-30 ADACD

三、简答题

1、算法的五个特性:输入、输出、确定性、有限性、可行性

算法与程序的区别在于:有限性并不是用于程序,比如操作系统;在描述方法上二者也不同,程序总要用某种设计语言来书写并最终被其所运行,而算法却没有这种限制,其描述方式相对灵活。

2、白盒测试又称结构测试,在白盒测试中,参照程序的具体实现过程,根据程序的结构,选择测试数据;黑盒测试中,测试数据来自对所解决问题的详细描述,而不考虑程序实现。

3、对于一个软件的研制,从问题的提出,经过开发、使用、维护、修订,直到最后中止使用,软件这个状态变化的过程称为软件的生命周期。

软件生命周期分为可行性分析、需求分析、概要设计、详细设计、编码、测试、维护等阶段。4、面向对象分析的主要原则为:构造与分解、抽象化与具体化、封装、相关和行为约束。

5、当需要多个函数对不同类型数据进行相同处理时,定义同名函数会为程序的编写带来极大方便,使用方便,提高可读性,这种定义同名函数的语法就是函数重载。

函数重载分为两种方式:参数类型不同、参数个数不同。

四、编程题

1、4 3 2 1 1 2 1

2、class CPoint

{

public:

int m_x,m_y;

CPoint(int x=0, int y=0)

{

m_x=x; m_y=y;

}

int GetX(){return m_x;}

int GetY(){return m_y;}

};

操作系统期末试卷(含答案)79149

操作系统复习题1 一、判断题 1.分时系统中,时间片设置得越小,则平均响应时间越短。() 2.多个进程可以对应于同一个程序,且一个进程也可能会执行多个程序。() 3.一个进程的状态发生变化总会引起其他一些进程的状态发生变化。() 4.在引入线程的OS中,线程是资源分配和调度的基本单位。() 5.信号量的初值不能为负数。() 6.最佳适应算法比首次适应算法具有更好的内存利用率。() 7.为提高对换空间的利用率,一般对其使用离散的分配方式。() 8.设备独立性是指系统具有使用不同设备的能力。() 9.隐式链接结构可以提高文件存储空间的利用率,但不适合文件的随即存取。() 10.访问控制矩阵比访问控制表更节约空间。() 二、选择题 1.在设计分时操作系统时,首先要考虑的是(A);在设计实时操作系统时,首先要考虑的是(B);在设计批处理系统时,首先要考虑的是(C)。 A,B,C :(1)灵活性和适应性;(2)交互性和响应时间;(3)周转时间和系统吞吐量;(4)实时性和可靠性。 2.对一个正在执行的进程:如果因时间片完而被暂停执行,此时它应从执行状态转变为(D)状态;如果由于终端用户的请求而暂停下来,则它的状态应转变为(E)状态;如果由于得不到所申请的资源而暂停时下来,则它的状态应转变为(F)状态。D,E,F:(1);静止阻塞(2);活动阻塞(3);静止就绪(4);活动就绪(5)执行。 3.我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用(G);为照顾紧急作业用户,应采用(H);为能实现人机交互,应采用(I);而能使短作业、长作业和交互作业用户满意时,应采用(J)。 G,H,I,J:(1);FCFS调度算法(2);短作业优先调度算法;(3)时间片轮转算法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法。 4.由固定分区发展为分页存储管理方式的主要推动力是(K);由分页系统发展为分段系统,进而发展为段页式系统的主要动力分别是(L)和(M)。 K,L,M:(1)提高内存利用率;(2)提高系统吞吐量;(3)满足用户需要;(4)更好地满足多道程序进行的需要;(5)既满足用户需求,又提高内存利用率。 5.在存储管理中,不会产生内部碎片的存储管理方式是(N);支持虚拟存储器,但不能以自然的方式提供存储器的共享和存取保护机制的存储管理方式是(O)。 N:(1)分页式存储管理;(2)分段式存储管理;(3)固定分区式存储管理;(4)段页式存储管理。 O:(1)段页式存储管理;(2)请求分区页式存储管理;(3)请求分段式存储管理;(4)可变分区存储管理;(5)固定分区存储管理;(6)单一连续分区式存储管理。 6.磁盘调度主要是为了优化(P),下列算法中能避免磁盘粘着的现象的是(Q)。P:(1)寻道时间;(2)旋转延迟时间;(3)传输时间。 Q:(1)SSTF;(2)FCFS;(3)SCAN;(4)CSCAN;(5)FSCAN。 7.文件系统中,目录管理最基本的功能是(R),位示图的主要功能是(S),FAT 表的主要功能是(T)。 R,S,T:(1)实现按名存取;(2)提高文件存储空间利用率;(3)管理文件存储器的空闲空间;(4)指出分配给文件的盘块(首个盘块除外)的地址;(5)管理文件存储器的空闲空间,并指出分配给文件的盘块(首个盘块除外)的地址。 8.文件系统采用多级目录结构,可以(U)和(V)。 U,V:(1)缩短访问文件存储器时间;(2)节省主存空间;(3)解决不同用户文件的命名冲突;(4)方便用户读写文件;(5)提高检索目录的速度。9.计算机系统中信息资源的安全包括(W)、(X)和(Y)三个方面,其中程序被删除属于(W)方面的威胁,数据被非法截取属于(X)方面的威胁,消息被更改属于(Y)方面的威胁。 W,X,Y:(1)保密性;(2)完整性;(3)可用性;(4)方便性。 三、填空题 1.操作系统最基本的特征是(1)和(2),最主要的任务是(3)。 2.引入进程的主要目的是(4),进程存在的唯一标志是(5)。 3.(6)是指通过破坏死锁产生的必要条件来防止死锁的发生。引起死锁的四个必要条件中,(7)是不应该被破坏的,但对某些特殊的资源(如打印机),该条可通过(8)来破坏;而其他能被破坏的三个必要条件分别是(9)、(10)和(11)。 4.虚拟存储器管理的基础是(12)原理,在请求分页管理方式中,页表中的状态位用来只是对应页(13)修改位用来只是对应页(14),引用位则是供(15)使用;而在请求分段系统还增加了增补位,它用来指示(16)。 5.设备驱动程序是(17)与(18)之间的通信程序如果系统中有3台相同的单显和2台相同的彩显则必须为它们配置(19)种设备驱动程序 6.廉价磁盘冗余阵列可组成一个大容量磁盘系统,它利用(20)技术来提高磁盘系统的存取进度,而利用(21)技术来增加磁盘系统的可靠性 7.包过滤防火墙工作在(22)层,采用代理服务技术的防火墙则工作在(23)层 8.UNIX文件系统对文件存储空间采用(23)分配方式,它通过(24)来管理空闲的文件存储空间。 四、问答题 1.假设某多道程序设计系统中有供用户使用的内存100k,打印机1台。系统采用可变分区管理内存:对打印机采用静态分配,并假设输入输出操作的时间忽略不计:采用最短剩余时间优先的进程调度算法,进程剩余执行时间相同时采用先来先服务算法;进程调度时机在执行进程结束时或有新进程到达时。现有一进程序列如下: 假设系统优先分配内存的低地址区域,且不需移动已在主存中的进程,请:(1)给出进度调度算法选中进程的次序,并说明理由。 (2)全部进程执行结束所用的时间是多少? 2.请用信号量解决以下的过独木桥问题:同一方向的行人可连续过桥,当某一方向的行人必须等待:另一方向的行人必须等待:当某一方向无人过桥是,另一方向的行人可以过桥。 3.提高内存利用率的途径有哪些? 4.何谓脱机输入/输出技术? 5. 将目录文件当作一般数据文件来处理有什么优缺点? 操作系统复习题1答案 一、判断题 1、错 2、对 3、错 4、对 5、对 6、错 7、错 8、错 9、对10、错 二、选择题 1、A :(2);B:(4);C:(3)。 2、D:(4);E:(3);F:(2)。 3、G:(2);H:(5);I:(3);J:(4)。 4、K:(1);L:(3);M:(5)。 5、N:(2);O:(2)。 6、P:(1)寻道时间;Q:(5)。 7、R:(1);S:(3);T:(5)。 8、U:(3);V:(5)。 9、W:(3);X:(1);Y:(2)。

最新模拟电路试卷及答案---副本

电子基础 [ 模拟电路试卷及答案] [填空及选择题]

模拟综合试卷一 一.填充题 1.集成运算放大器反相输入端可视为虚地的条件是a , b 。 2.通用运算放大器的输入级一般均采用察动放大器,其目的是 a , b 。 3.在晶体三极管参数相同,工作点电流相同条件下,共基极放大电路的输入电阻比共射放大电路的输入电阻。 4.一个NPN晶体三极管单级放大器,在测试时出现顶部失真,这是失真。 5.工作于甲类的放大器是指导通角等于,乙类放大电路的导通角等于,工作于甲乙类时,导通角为。 6.甲类功率输出级电路的缺点是,乙类功率输出级的缺点是 故一般功率输出级应工作于状态。 7.若双端输入,双端输出理想差动放大电路,两个输入电压u i1=u i2 ,则输出电压 为 V;若u i1=1500μV, u i2 =500μV,则差模输入电压u id 为μV,共模 输入信号u ic 为μV。 8.由集成运放构成的反相比例放大电路的输入电阻较同相比例放大电路的输入电阻较。 9.晶体三极管放大器的电压放大倍数在频率升高时下降,主要是因为的影响。 10.在共射、共集、共基三种组态的放大电路中,组态电流增益最;组态电压增益最小;组态功率增益最高;组态输出端长上承受最高反向电压。频带最宽的是组态。 二.选择题 1.晶体管参数受温度影响较大,当温度升高时,晶体管的β,I CBO,u BE 的变化情 况为()。 A.β增加,I CBO,和 u BE 减小 B. β和I CBO 增加,u BE 减小

C.β和u BE 减小,I CBO 增加 D. β、I CBO 和u BE 都增加 2.反映场效应管放大能力的一个重要参数是() A. 输入电阻 B. 输出电阻 C. 击穿电压 D. 跨导 3.双端输出的差分放大电路主要()来抑制零点飘移。 A. 通过增加一级放大 B. 利用两个 C. 利用参数对称的对管子 D. 利用电路的对称性 4.典型的差分放大电路由双端输出变为单端输出,共模电压放大倍数()。 A. 变大 B. 变小 C. 不变 D. 无法判断 5.差分放大电路的共模抑制比K CMR 越大,表明电路() A. 放大倍数越稳定 B. 交流放大倍数越大 C. 直流放大倍数越大 D. 抑制零漂的能力越强 6.负反馈放大电路以降低电路的()来提高嗲路的其他性能指标。 A. 带宽 B. 稳定性 C. 增益 D. 输入电阻 7.为了使运放工作于线性状态,应() A. 提高输入电阻 B. 提高电源电压 C. 降低输入电压 D. 引入深度负反馈 8.在正弦振荡电路中,能产生等幅振荡的幅度条件是()。 A. àF=1 B. àF>1 C. àF<1 D. àF=1 9.振荡电路的振荡频率,通常是由()决定 A. 放大倍数 B. 反馈系数 C. 稳定电路参数 D. 选频网络参数 10.在串联型线性稳定电路中,比较放大环节放大的电压是() A. 取样电压与基准电压之差 B. 基准电压 C. 输入电压 D. 取样电压

C++程序设计基础课后答案 第八章

8.1 阅读下列程序,写出执行结果 1.#include class Bclass { public: Bclass( int i, int j ) { x = i; y = j; } virtual int fun() { return 0 ; } protected: int x, y ; }; class Iclass:public Bclass { public : Iclass(int i, int j, int k):Bclass(i, j) { z = k; } int fun() { return ( x + y + z ) / 3; } private : int z ; }; void main() { Iclass obj( 2, 4, 10 ); Bclass p1 = obj; cout << p1.fun() << endl; Bclass & p2 = obj ; cout << p2.fun() << endl; cout << p2.Bclass :: fun() << endl; Bclass *p3 = &obj;

cout << p3 -> fun() << endl; } 2.#include class Base { public: virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ; protected: int x , y; }; class A: public Base { public: void fun() { cout<<"x = "<

相关主题
相关文档
最新文档