一、 填空题(每空1分,共15分)
1. 被调函数在执行结束时,这个函数中定义的___类型的变量不被释放。
2. 设。struct student
int no;
char name[12];
float score[3];
sl,* p = sl;
用指针法给sl的成员no赋值1234的语句是。
3. c语言程序中对文本文件的存取是以为单位进行的。
4. 设char string this_is_a_book!″;则数组的长度应是。
5. 设int a[2][3] =则数组元素的值为3。
6. 向对象程序的三大特征是与___
7. 设int a=5,则执行a++的结果是___此时a的值是___
8. 派生类的3种继承方式分别是和___
9. 绑定是指一个计算机程序自身彼此关联的过程。按照绑定所进行的阶段不同,可分为和。
二、 单项选择题(每题2分,共20分)
1. 设char str[100];int i = 5;则引用数组元素的错误形式是 【
a. str[i + 10b. (str + i)
c. (str + i - 1d. (str + i)
2. 设int x p = x;则值为3的表达式是 【
a. p + 2, *pb. p + 2, *p +
c. p + 3, *pd. p + 2, +p
3. 在函数内,定义变量时存储类型符可省略的是 【
a. autob. static
c. externd. register
4. 设有定义语句。
struct
int a;float b;} d[3]=,
则printf(″﹪3.1f \ n″,d[2]. a * d[2]. b/d[1]. b);的输出是 【
a. 2.5 b. 2.0 c. 8.0 d. 8.4
5. 设有定义语句:enum t1 time;
则枚举常量a2和a3的值分别为 【
a. 1和2 b. 2和3 c. 7和2 d. 7和8
6. 为了避免嵌套的if-else语句的二义性,c++语言规定else总是与【 】组成配对关系。
a. 缩排位置相同的ifb. 在它之前未配对的if
c. 在它之前未配对的最近的if d. 同一行上的if
7. sizeof(float)是一个 【 表达式。
a. 整型b. 双精度实型。
c. 浮点型d. 函数调用。
8.在c++中函数没有返回值时,函数的类型应定义为【 】
无。9.以下构造函数定义形式正确的是【 】
a. int student(char*, int
b. void student(char*,int )
c. void* student(char*,int)
d. student(char*, int) ;
10.关于delete运算符,下列描述中,【 是错误的。
a. 必须用于new返回的指针。
b. 适用于空指针。
c. 对一个指针可以使用多次delete运行符。
d. 在指针名前只用一对括号,而不管所删除数组的维数。
三、 读程序填空题(15分)
1. 以下对数组a简单选择排序的程序,2. 请在___处补充相应的语句,使程序完整。
#include <>
void sort(int array,int n)
int i,j,k,t;
for(i=0;i
k=i;for(j=i+1;j
if(array[j]if(k!=i)
t=array[i];
array[i]=array[k];
main()
int a[10],i;
for(i=0;i<10;i++)
cin>>a[i];
sortfor(i=0;i<10;i++)
cout< cout<}
2. 以下是实现交换两个数的程序,请在___处补充相应的语句,使程序完整。
#include <>
void swap
int *t;
t=*r;*r=*s;
*s=t;main()
int a=1,b=2,*p,*q;
p=&a;q=&b;
swapcout<<*p<<*q<}
3. 以下程序的功能是输入一字符串(换行为结束标志)统计其中数字(0,1,…,9不单独统计)、空白和其它字符出现的次数。请在___处补充相应的语句,使程序完整。
# include <>
main()
char c;
intwhile((c = getchar())n′)
ifdigit +
else if(c = c = t′) blank;
elsecout<<”digit =”digit<<”blank =”
四、阅读程序写输出结果(每题5分,共20分)
1. 分析下面程序运行的结果。
#include <>
using namespace std;
int main()
int i,j,m,n;
i=8;j=10;
m=++i+j++;
n=(+i)+(j)+m;
cout< return 0;
运行时输出。
#include <>
#include <>
void main()
char destination[25];
char blankc=c++"turbo turbo";
strcpy(destination, turbo);
strcat(destination, blank);
strcat(destination, c);
cout<}
运行时输出。
#include <>
main()
void increment(void);
increment();
increment();
increment();
void increment(void)
static int x=0;
x++;cout<}
运行时输出为:
#include <>
class base
public:
~base()
class der:public base
public:
char *ch;
public:
void der(int i)
virtual ~der()
void main()
base *b= new der(20);
delete b;
运行时输出为:
五、 编写程序(每题10分,共30分)
1.编写一个程序,输入3个整数a,b,c,输出其中最大的数。
2.编写一个程序,计算s= 15! 的值。
3.实现一个用于计算体积的长方体类,要求该类:
1) 数据成员包括:长(length)、宽(width)与高(height)
2) 提供输入长、宽与高的成员函数;
3) 提供计算体积的成员函数;
C程序设计试卷1C程序设计
c 程序设计试卷。一 选择题。每小题3分,共15分 1 派生类能够直接访问的基类的成员是 a 公有成员 b 保护成员 c 私有成员 d 静态。2 下面是几条定义类的语句,不能被继承的类是 a abstract class figure b class figure c public class fi...
C 程序设计试卷C
面向对象的程序设计c 试卷c 一 填空 每空2分,共20分 1 定义于函数外的变量称为。2 假定class1为一个类,则执行 class1 a 5 b 2 p 3 语句时,自动调用该类构造函数的次数为。3 利用操作符 语句序列p p 1 f p 5 的功能可以由一个语句完成。4 不借助于其他变量交换...
C 程序设计试卷 A
c 程序设计课程期末考试试题 a卷 一判断题 正确打 a 错误打 b 每小题1分,共计20分 1在面向对象的编程中,和数据合并为一个不可分割的对象。2对象是有确定简介且与要处理的问题相关的概念或事物。3每个对象都称为它的类的一个示例。类中的对象具有相同的属性和共同的行为。4多态性是指相同的函数可以在...