C 程序设计试卷

发布 2021-04-24 20:39:28 阅读 3076

一、 填空题(15分,每空1分)

1、 在c++程序中,一个数组的名字实际上是指向该数组___元素的指针,并且在任何时候都不允许 。

2、 运算符和sizeof,按优先级由高至低的排列次序为。

3、 在进行函数调用时,将把参数的___传递给值参数,把参数的___传递给引用参数。

4、 非成员函数应声明为类的___才能访问这个类的private成员。

5、 在调用f1( )函数的过程中,又调用了f2( )函数,这种调用称为___调用:而在调用f1( )函数的过程中,调用于了f2( )函数,又在调用f2()函数的过程中调用了f1( )函数,这种调用称为___调用。

6、 重载的运算符仍然保持其原来的优先级、__和___

7、 利用继承能够实现这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。

8、 定义一个函数时,若只允许函数体访问形参的值而不允许修改它的值,则应把该形参声明为___即在该形参声明的前面加上___关键字进行修饰。

9、类是对具有共同属性和行为的一类事物的抽象描述,共同属性被描述为类中的___共同行为被描述为类中的 。

二、 选择题(20分,每题1分)

1、下列说明中:const char*ptr ,ptr应该是___

a) 指向字符常量的指针 b)指向字符的常量指针

c) 指向字符串常量的指针 d)指向字符串的常量指针。

2、 对变量的引用中错误的是___

a)inta;int&p=a;

b)chara;char&p=a;

c)inta;int&p;p=a;

d)floata;float&p=a;

3、关于函数返回值类型和返回值表达式的类型的描述中,错误的是___

a)函数返回值类型决定了返回值表达式的类型

b)函数返回值的类型是在定义函数时确定的,在函数调用时不能改变。

c)函数返回值的类型就是返回值表达式的类型

d)函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成函数返回值类型

4、下列叙述中错误的是。

a) 一个函数中可以有多条return语句

b)调用函数必须在一条独立的语句中完成。

c)函数中通过return语句传递函数值

d)主函数名main也可以带有形参

5、运算符->*的功能是 。

a) 用来表示指向对象指针对指向类成员指针的操作。

b) 用来表示对象对指向类成员指针的操作。

c) 用来表示指向对象指针对类成员的操作。

d) 用来表示对象类成员的操作

6、若有以下函数调用语句:f(m+n,x+y,f(m+n,z(x,y)))在此函数调用语句中实参的个数是。

a)3 b) 4 c)5 d)6

7、为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为。

a)public b)protected c)private d)static

8、在c++中,数据封装要解决的问题是。

a) 数据的规范化 b)便于数据转换 c)避免数据丢失 d)防止不同模块之间数据的非法访问

9、有如下定义语句:inta=则对语句int*p=a;正确的描述是。

a)语句int*p=a;定义不正确

b)语句int*p=a;初始化变量p,使其指向数组对象a的第一个元素。

c)语句int*p=a;是把a[0]的值赋给变量p

d)语句int*p=a;是把a[1]的值赋给变量p

10、下列程序段中有错的是。

a)template b)type c)func(typea,b) d)

三、 程序填空题(15分,第2题第一空1分,其它空2分)

1、以下程序输出1—100之间各位数的乘积大于各位数之和的数,例如对于数字12,有1*2<1+2,故不输出该数,对于27,有2*7>2+7,故输出该数,请填空:

#include <>

void main (

int n, k=1 ,s=0 ,m;

for (n=1;n<=100;n++)

2、下面的程序用来判断某年是否为闰年(即年号能被400整除)

#include<>

voidmain()

int year ,leap;

cout<<"输入年号:";

cin >>year;

if (year%400==0)

else if

leap=1;

else leap=0;

if (leap

else cout<< year <<不是闰年";

3、用递归函数将所输入的5个字符按反序排列出来。

#include<>

void iochar(int);

void main (

else cin>>c;

cout<}

四、阅读程序,并写出结果(20分,每题4分)

#include<>

#include<>

void main ()

#include<>

class sample

int x,y;

public:

sample()

sample(int a,int b)

sample()

if(x==y)

cout<<"x=y"

cout<<"x!=y"<}

void disp()

cout<<"x="<

void main()

sample s1(2,3);

#include<>

void main()

int a;

int &b=a;

b=10;

cout<<"a="<

五、编程题(30分,每题10分)

1、编写一个程序,从键盘出入一个偶数,输出该偶数写成的两个素数之和。

2、若用0到9之间不同的三个数构成一个三位数,编程序统计出共有多少种方法。

3、一个程序计算两个给定长方形的面积,其中在设计类成员函数addarea() 用于计算两个长方形的总面积)时使用对象作为参数。

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多态性是指相同的函数可以在...