1.Main 函数是程序启动时惟一的入口。
2.算法的复杂性包含两方面:时间复杂性 空间复杂性
3.已知 char c= 'a' ; int x=2,k; 执行语句k=c&&x++ ; 则x为  3      ,k为      1 
4.数值0x34对应的十进制为    52       
5.已知int a ; 则表达式”(a=2*3 , 3*8), a*10”的结果为_ _  60____,变量a的值为___ 6 ___。
6.面向对象程序开发步骤为:  面向对象分析、 面向对象设计  和面向对象实现。
1.下列程序设计语言中(  c)是面向对象语言。
    A. FORTRAN        B. C语言        C. C++        D. 汇编语言
2.下列关于注释的说法哪个是错误的(b  )。
    A. 注释不是程序中的可执行语句
    B. 注释对于程序的执行有很重要的意义
    C. 注释将在程序的编译阶段被编译器剔除
    D. 编程时在程序中添加适当的注释是一个良好的编程风格
3.算法设计应该遵守( b )的设计原则。
A. 自底向上,逐步求精        B. 自顶向下,逐步求精
C. 自底向上,同步扩展        D. 自顶向下,同步扩展
4.下列语句执行后a的值为(  d)。
int a=4, &z=a, k=3;
a=k; z+=2; k++;
A. 0        B. 4        C. 1        D. 5
5.以下程序执行后,屏幕输出为( b )。
    #include “iostream.h”
void fun(int d) {d++;}
void main() { int d=3;  fun(d);  d++;  cout<<d<<endl; }
A. 3        B. 4        C.5        D. 6
6.执行下列语句后a的值为( b )。
    char a(‘a’),b(‘b’);
    a+=(‘a’!=’A’)+ (‘b’==’B’)+(b-a==3);
A. 2            B. ‘b’        C. c            D. ‘c’
7.判断char型变量d是否为小写字母的正确表达式为( a )。
A. (d>=’a’)&&(d<=’z’)        B. ‘a’<=d<=’z’    C. (d>=’a’)||(d<=’z’)    D. ‘A’<=d<=’Z’
8.已知:int k=7, x=12; 则执行语句(c  )后x的值为0。
    A. x+=k-x%5;        B. x+=(x-k%5);    C. x%=(k-=5);        D. (x-=k)-(k+=5);
9.运行下列程序,其输出结果为(a  )。
#include “iostream.h”
void main()
{
int x(5),y(5),z(5);
y--&&++x&&z--||y++;
cout<<x<<”, ”<<y<<”, ”<<z<<endl;
}
A. 6,4,4        B. 6,4,5        C. 6,5,4        D. 5,4,5
10.已知:int a=1, b=2; 下列switch语句中(  c)的格式正确。
    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)
{
    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<<int(2*max(m,n+o+p))<<endl;
}
A. 9        B. 6        C.7        D.8
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<<sizeof(chName)<<", "<<sizeof(iTemp)<<", "<<sizeof(ch)<<", "<<sizeof(pVoid);
}
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.什么是软件生命周期?它分为哪几个阶段?
答:对于一个软件的研制,从问题的提出,经过开发、使用、维护、修订,直到最后中止使用,软件这个状态变化的过程称为软件的生命周期。
编程递归函数  软件生命周期分为可行性分析、需求分析、概要设计、详细设计、编码、测试、维护等阶段。软件生命周期分为可行性分析、需求分析、概要设计、详细设计、编码、测试、维护等阶段。
4.简述面向对象分析的主要原则。
答;面向对象分析的主要原则为:构造与分解、抽象化与具体化、封装、相关和行为约束。
5.简述函数重载的意义及如何实现函数重载。
答:当需要多个函数对不同类型数据进行相同处理时,定义同名函数会为程序的编写带来极大方便,使用方便,提高可读性,这种定义同名函数的语法就是函数重载。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。