一、填空题(每空1分,共15分)。
1.已知'a'~'z'的ascii码为65~90, 当执行" char ch = 14*5+2; cout<2. float 和 double类型的长度分别为___个字节和___个字节个字节。
3.表达式 x = x+1表示成增量表达式为。
4.关系表达式 x + y > 5的相反表达式为。
5.假定一个二维数组的定义为" int a[3][5];"则该数组所含元素的个数为___所占存储空间的字节数为。
6.设x和y均为int型变量,且x=1,y=2, int *p;p=&x;*p=x+y;则x的值为。
7. 假定p所指对象的值为25, p+1所指对象的值为46, 则 *+p的值为___
8.假定a是一个二维数组, 则a[i][j]的指针访问方式为。
9.假定要访问一个结构对象x中的由a指针成员所指向的对象, 则表示方法为。
10. 当一个类对象离开它的作用域时, 系统将自动调用该类的。
11.当创建一个类的对象时,系统自动调用该类的。
12.c++中,基类的指针可以指向派生类对象,反过来,指向派生类对象的指针不能指向基类对象。
13.在c++中,如果类的成员中含有一个指针成员,那么当一个函数返回一个类的对象时,该类必须定义一个___构造函数。
二、单项选择题(每小题2分,共20分)
1. 以下叙述正确的是。
a) do-while语句构成的循环不能用其它语句构成的循环来代替。
b) do-while语句构成的循环只能用break语句退出。
c) 用do-while语句构成的循环,在while后的表达式为非零时结束循环。
d) 用do-while语句构成的循环,在while后的表达式为零时结束循环。
2. 下列程序执行后的输出结果是。
a) g b) h c) id) j
#include<>
main()
int x='f'; cout<<'a'+(x-'a'+1)<}
3、设有数组定义: char array [ china"; 则数组 array所占的空间为。
a) 4个字节 b) 5个字节 c) 6个字节 d) 7个字节。
4. 下列程序执行后的输出结果是。
a) 6 b) 8 c) 10 d) 12
#include<>
#define ma(x) x*(x-1)
main()
int a=1,b=2; cout<}
5. 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是。
a) 1 b) 2 c) 2.0 d) 2.5
6. 有如下程序段。
int *p,a=10,b=1;
p=&a; a=*p+b;
执行该程序段后,a的值为。
a) 12 b) 11 c) 10 d) 编译出错。
7. 有如下说明。
int a[10]=,p=a;
则数值为9的表达式是。
a) *p+9 b) *p+8) c) *p+=9 d) p+8
8. 有如下定义。
struct person;
struct person class[10]=;
根据上述定义,能输出字母m的语句是。
a) cout
a、继承 b、虚函数 c、重载函数 d、析构函数。
10. 以下不属于类的存取权限的是。
a、public b、static c、protected d、private
三、阅读程序填空(共15分)
1、求完数,即一个数等于它的因子之和(6=1+2+3)。
#include<>
#include<>
void main()
int m,s,i;
for(m=2;m<1000l;m++)
2、将一个整数转换成一个数字字符串。
#include<>
#include<>
main()
void digittochar(int digit,char str[128]);
char buff[128]=;
int digit;
cout<<"输入一个整数digit:";
cin>>digit;
digittochar(digit,buff);
cout< return 0;
void digittochar(int digit,char str[128])
//将数值转换成字符串(4843-->3484")
void reverse(char buff[128]);将字符串作逆序处理。
static int i=0;
if(digit<0)//负整数的处理。
if(digit<10)//转换成字符。
elsereverse(str);
void reverse(char buff[128])
char temp;
int n=strlen(buff);
for(int i=0;i
else//字符串中无负号的处理。
四、阅读程序,写出输出结果(每小题5分,共20分)。
#include <>
#include <>
double sd(int a, int b, char op)
double x;
switch(op)
#include <>
#include <>
void main();
char *p1, *p2;
p1 = p2 =a[0] ;
for(int i = 1; i < 5 ; i++)
#include <>
void wf(int x, int y)
void main()
#include <>
#include <>
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多态性是指相同的函数可以在...