C 程序设计试卷

发布 2021-04-24 20:28:28 阅读 3407

一、 填空题(每空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多态性是指相同的函数可以在...