2024年6月5日发(作者:居韶敏)
19秋《C++》作业_1
一、单选题 ( 每题5分, 共10道小题, 总分值50分 )
1.要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为( )。
A. const char *p=“ABCD”;
B. char *const p=“ABCD”;
C. char const *p=“ABCD”;
D. const char * const p=“ABCD”;
答:D
2.C++程序从( )开始执行。(5分)
A. 预处理命令
B. 第一个函数的第一条语句
C. 第一条语句
D. main函数的第一条语句
q:【80】【500】【9261】
答:D
3.在while循环中使用( )语句可以立即跳出整个循环体。(5分)
A. continue
B. return
C. case
D. break
答:D
4.函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为(
A. 1
B. 2
C. 4
D. 5
答:B
。(5分) )
5.与C语言相比,C++增加了( )的概念。(5分)
A. 函数
B. 指针
C. 类
D. 变量
答:C
6.若在函数定义时省去类型标识符,则系统默认函数返回值类型为(
A. 整形
B. 浮点型
C. 字符型
D. 空类型
答:A
7.有如下语句
。(5分) )
int i=1;
while(i<10);
{
i++;
}
则程序执行时循环执行( )次。(5分)
A. 0
B. 8
C. 9
D. 10
答:C
8.对于int *pa[5];的描述,正确的是( )。(5分)
A. pa是一个指向数组的指针,所指向的数组是5个int型元素
B. pa是一个指向某个数组中第5个元素的指针,该元素是int型变量
C. pa[5]表示某个数组的第5个元素的值
D. pa是一个具有5个元素的指针数组,每个元素是一个int型指针
答:D
9.函数调用自身被称为( )。(5分)
A. 继承
B. 重载
C. 递归
D. 多态
答:C
10.语句cout << setiosflags(ios::scientific) << setprecision(4) << a << endl; 中
setprecision(4)的含义是( )(5分)
A. 设置输出域宽为4
B. 设置用八进制输出数据
C. 设置浮点数的输出精度为4
D. 设置输出数据的间距为4
二、多选题 ( 每题5分, 共3道小题, 总分值15分 )
1.以下说法中不正确的是( )(5分)
A. C++语言程序总是从第一个函数开始执行
B. C++语言程序总是从main()函数开始执行
C. C++语言程序中的main()函数必须放在程序的开始部分
D. 在C++语言程序中,要调用的函数必须在main()函数中定义
答:ACD
2.设有以下定义:
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*ptr)[4]=a,*p=a[0];
则下列表达式中,能正确表示数组元素a[2][1]的表达式有( 。(5分)
)
A. *(p+9)
B. *(*(a+2)+1
C. (*ptr+2)+1
D. *((*ptr+2)[1])
3.用编程语言编写程序的完整流程包括以下哪些步骤( )(5分)
A. 定义一个程序目标
B. 编译
C. 测试和调试
D. 程序维护
三、判断题 ( 每题5分, 共7道小题, 总分值35分 )
1.在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。(5分)
答:错误
2.说明或定义对象时,类名前面不需要加class关键字。(5分)
答:正确
3.一个函数中可以有多于一个return语句。(5分)
4.C++中的注释可以帮助读者阅读源程序,但并不参与程序的运行。(5分)
5.C++语言中不允许使用宏定义方法定义符号常量,只能用关键字const 来定义符号
常量。(5分)
(表达式)的功能是返回指定的表达式值的数据类型在内存中占用的字节数。(5
分)
7.在C++中,运算符优先级相同的情况下,按照从右向左的顺序进行计算。(5分)
19秋《C++》作业_2
一、单选题 ( 每题5分, 共10道小题, 总分值50分 )
1.若声明数组int a[10],则对数组中第三个元素的引用正确的是( )。(5分)
A. a[1]
B. a[2]
C. a[3]
D. a[4]
2.C++中用于进行单行注释的符号是( )。(5分)
A. //
B. /
C. /**/
D. */
3.在C++中,下列选项中是合法的八进制数的是(5分)
A. 127
B. 091
C. 0x12
D. 01011
4.说明语句在某一个类定义、函数定义或复合语句中的变量被称为(
A. 全局变量
(5分) )
B. 局部变量
C. 形式变量
D. 实际变量
5.下列程序的执行结果为(
#include
void main( )
{
int n=10;
int* pn=&n;
int* &rn=pn;
(*pn)++;
cout<<"n="< (*rn)++; ) cout<<"n="< }(5分) A. n=11,n=12 B. n=11,n=11 C. n=10,n=11 D. n=11,n=10 6.C++中不能用来组成循环结构的关键字是( )(5分) A. for B. while C. switch D. do 7.在C++中,14%4的运算结果为( )(5分) A. 1 B. 2 C. 3 D. 4 8.C++源程序的扩展名为( )。(5分) A. .c B. .cpp C. .c++ D. .cplus 9.下列程序段的输出结果是( )。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout< A. 3 B. 4 C. 6 D. 7 10.在面向对象的程序设计中,首先在问题域中识别出若干个 ( )。(5分) A. 函数 B. 类 C. 文件 D. 过程 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.以下为不合法的十六进制数是( )(5分) A. 0x2A B. 0x11Au C. 0X0 D. 3A 2.若有以下定义和语句: int w[2][3],(*pw)[3]; pw=w; 则对w数组元素合法引用是 ( )(5分) A. pw[0][0] B. *(pw[1]+2) C. *(w[0]+2) D. *(pw+1)[2] 3.在C语言中,不合法的长整型常数是( )(5分) A. 2.1869e10 B. 0L C. 4962710 D. 0.054838743 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.想要在程序中正确地使用自定义的函数,则必须先声明它,然后再定义它。(5分) 2.C++是一种以编译方式实现的高级语言。(5分) 3.在C++中,可以通过在当前类中将另一个类作为自己的友元类,来在另一个类中访 问当前类的私有成员。(5分) 4.C++中标识符内的大小写字母是没有区别的。(5分) 5.C++是最开始提出类概念的语言(5分) 6.指针指向的内存地址可以改变,与之类似,引用指向的变量也可以改变。(5分) 7.同一个数组中的各个元素数据类型一定相同。(5分) 19秋《C++》作业_3 一、单选题 ( 每题5分, 共10道小题, 总分值50分 ) 1. 在int a=3,int *p=&a;中,*p的值是( )(5分) A. 变量a的地址值 B. 变量p的地址值 C. 3 D. 无意义 2.表达式中含有int、long和float型的变量,则运算时需要转换为( 分) A. int (5 )类型。 B. long C. float D. double 3.多个具有不同类型或个数参数的函数共用一个函数标识名被称为( )函数。(5 分) A. 继承 B. 重载 C. 递归 D. 多态 4.假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句 后,x.a和x.b的值分别为( )。(5分) A. 3和15 B. 4和20 C. 5和4 D. 20和5 5.如不希望函数返回任何值,则可以将函数的返回值定义为( )(5分) A. int B. 0 C. void D. return 6.在函数定义中的形参属于( A. 局部变量 B. 全局变量 C. 静态变量 D. 寄存器变量 7.下列标识符不合法的是( A. a1 )。(5分) (5分) ) B. tex_1 C. _sum D. 2word 8.字符串常量“A”的长度是( A. 0 B. 1 C. 2 D. 3 9.定义函数 int show(int a,int b) { return a+b; } (5分) ) 则a被称为函数的( )(5分) A. 形参 B. 返回值 C. 名字 D. 实参 10.有如下语句 int i=1; do { i++; }while(i<10); 则程序执行时循环执行( A. 0 (5分) )次。 B. 8 C. 9 D. 10 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.以下叙述中不正确的是( )(5分) A. 函数中的形式参数是局部变量 B. 在一个函数内的复合语句中定义的变量在本函数范围内有效 C. 在一个函数内定义的变量只在本函数范围内有效 D. 函数的形式参数不可以说明为register变量 2.在C++语言中,不合法的字符常量是( )(5分) A. x43' B. 'ab' C. '084' D. "0" 3.下列运算符中,优先级相同的是( )(5分) A. ~ B. % C. / D. > 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.当一个函数体内定义的局部变量和全局变量同名时,程序会优先选择使用全局变量。 (5分) 2.类的私有成员只能被类中的成员函数访问,任何类以外的函数对它们的访问都是非 法的。(5分) 语句的格式为:for(表达式1;表达式2;表达式3) 语句若在for语句中省略3个 表达式,则循环一定执行无数次。(5分) 4.结构体的默认访问权限为public,而类中的默认访问权限为protected。(5分) f是用来定义一些C++中没有的新数据类型。(5分) 6.返回值类型、参数个数和类型都相同的函数也可以重载。(5分) 语句中的循环控制变量必须在for语句内部进行声明。(5分) 19秋《C++》作业_4 一、单选题 ( 每题5分, 共10道小题, 总分值50分 ) 1.( )是表示换行的转义字符(5分) A. f B. C. n D. b 2.若有语句char a[]= "test";则数组a[]中共有( )个变量。 A. 3 B. 4 C. 5 分) (5 D. 0 3.指针变量是用来存放( )的变量。(5分) A. 其他变量的值 B. 其他变量的变量名 C. 函数名 D. 地址 4.在C++中,函数原型不能标识( A. 函数的返回类型 B. 函数参数的个数 C. 函数参数类型 D. 函数的功能 5. int n=0; while(n=1)n++; 。(5分) ) while循环执行次数是( )。(5分) A. 0次 B. 1次 C. 不确定次 D. 无限次 6.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体, 这实体也就是( )。(5分) A. 类 B. 对象 C. 函数体 D. 数据块 7.若有语句char a[]= "test";int b=strlen(a);则执行语句后b的值为( )。(5分) A. 3 B. 4 C. 5 D. 0 8.双精度浮点型的类型说明符为( )(5分) A. int B. double C. float D. long 9. 下列程序的输出结果是( ) #include void main( ) {int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n; cout< A. 10,30,50 B. 10,20,30 C. 20,40,60 D. 10,30,60 10.使用地址作为实参传给形参,下列说法正确的是( A. 实参是形参的备份 B. 实参与形参无联系 C. 实参与形参是同一对象 D. 形参是实参的备份 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.C++语言中,下面的描述不正确的是( )(5分) 。(5分) ) A. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 B. do-while语句构成的循环必须用break语句才能退出 C. 不能使用do-while语句构成的循环 D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环 2.下面哪些是C++标准I/O操作包含的类对象( )(5分) A. cin B. cerr C. clog D. cout 3.有关sizeof(double)不正确的描述是( )(5分) A. 一种函数调用 B. 一个双精度型表达式 C. 一个整型表达式 D. 一个不合法的表达式 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.在私有继承中,基类中所有成员对派生类都是不可见的。(5分) 2.C++中的函数都具有返回值。(5分) 3.C++语言中,函数的声明和函数的定义必须在同一个源文件内。(5分) 4.一条语句最多只能定义一个变量并指定初始值。(5分) 5.编译错误属于异常,可以抛出。(5分) 6.某类中的友元类的所有成员函数可以存取或修改该类中的私有成员。(5分) 7.构造函数可以声明为虚函数。(5分) 2024年6月5日发(作者:居韶敏)
19秋《C++》作业_1
一、单选题 ( 每题5分, 共10道小题, 总分值50分 )
1.要禁止修改指针p本身,又要禁止修改p所指向的数据,这样的指针应定义为( )。
A. const char *p=“ABCD”;
B. char *const p=“ABCD”;
C. char const *p=“ABCD”;
D. const char * const p=“ABCD”;
答:D
2.C++程序从( )开始执行。(5分)
A. 预处理命令
B. 第一个函数的第一条语句
C. 第一条语句
D. main函数的第一条语句
q:【80】【500】【9261】
答:D
3.在while循环中使用( )语句可以立即跳出整个循环体。(5分)
A. continue
B. return
C. case
D. break
答:D
4.函数调用func((exp1,exp2),(exp3,exp4,exp5))中所含实参的个数为(
A. 1
B. 2
C. 4
D. 5
答:B
。(5分) )
5.与C语言相比,C++增加了( )的概念。(5分)
A. 函数
B. 指针
C. 类
D. 变量
答:C
6.若在函数定义时省去类型标识符,则系统默认函数返回值类型为(
A. 整形
B. 浮点型
C. 字符型
D. 空类型
答:A
7.有如下语句
。(5分) )
int i=1;
while(i<10);
{
i++;
}
则程序执行时循环执行( )次。(5分)
A. 0
B. 8
C. 9
D. 10
答:C
8.对于int *pa[5];的描述,正确的是( )。(5分)
A. pa是一个指向数组的指针,所指向的数组是5个int型元素
B. pa是一个指向某个数组中第5个元素的指针,该元素是int型变量
C. pa[5]表示某个数组的第5个元素的值
D. pa是一个具有5个元素的指针数组,每个元素是一个int型指针
答:D
9.函数调用自身被称为( )。(5分)
A. 继承
B. 重载
C. 递归
D. 多态
答:C
10.语句cout << setiosflags(ios::scientific) << setprecision(4) << a << endl; 中
setprecision(4)的含义是( )(5分)
A. 设置输出域宽为4
B. 设置用八进制输出数据
C. 设置浮点数的输出精度为4
D. 设置输出数据的间距为4
二、多选题 ( 每题5分, 共3道小题, 总分值15分 )
1.以下说法中不正确的是( )(5分)
A. C++语言程序总是从第一个函数开始执行
B. C++语言程序总是从main()函数开始执行
C. C++语言程序中的main()函数必须放在程序的开始部分
D. 在C++语言程序中,要调用的函数必须在main()函数中定义
答:ACD
2.设有以下定义:
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*ptr)[4]=a,*p=a[0];
则下列表达式中,能正确表示数组元素a[2][1]的表达式有( 。(5分)
)
A. *(p+9)
B. *(*(a+2)+1
C. (*ptr+2)+1
D. *((*ptr+2)[1])
3.用编程语言编写程序的完整流程包括以下哪些步骤( )(5分)
A. 定义一个程序目标
B. 编译
C. 测试和调试
D. 程序维护
三、判断题 ( 每题5分, 共7道小题, 总分值35分 )
1.在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。(5分)
答:错误
2.说明或定义对象时,类名前面不需要加class关键字。(5分)
答:正确
3.一个函数中可以有多于一个return语句。(5分)
4.C++中的注释可以帮助读者阅读源程序,但并不参与程序的运行。(5分)
5.C++语言中不允许使用宏定义方法定义符号常量,只能用关键字const 来定义符号
常量。(5分)
(表达式)的功能是返回指定的表达式值的数据类型在内存中占用的字节数。(5
分)
7.在C++中,运算符优先级相同的情况下,按照从右向左的顺序进行计算。(5分)
19秋《C++》作业_2
一、单选题 ( 每题5分, 共10道小题, 总分值50分 )
1.若声明数组int a[10],则对数组中第三个元素的引用正确的是( )。(5分)
A. a[1]
B. a[2]
C. a[3]
D. a[4]
2.C++中用于进行单行注释的符号是( )。(5分)
A. //
B. /
C. /**/
D. */
3.在C++中,下列选项中是合法的八进制数的是(5分)
A. 127
B. 091
C. 0x12
D. 01011
4.说明语句在某一个类定义、函数定义或复合语句中的变量被称为(
A. 全局变量
(5分) )
B. 局部变量
C. 形式变量
D. 实际变量
5.下列程序的执行结果为(
#include
void main( )
{
int n=10;
int* pn=&n;
int* &rn=pn;
(*pn)++;
cout<<"n="< (*rn)++; ) cout<<"n="< }(5分) A. n=11,n=12 B. n=11,n=11 C. n=10,n=11 D. n=11,n=10 6.C++中不能用来组成循环结构的关键字是( )(5分) A. for B. while C. switch D. do 7.在C++中,14%4的运算结果为( )(5分) A. 1 B. 2 C. 3 D. 4 8.C++源程序的扩展名为( )。(5分) A. .c B. .cpp C. .c++ D. .cplus 9.下列程序段的输出结果是( )。 for(i=0,j=10,k=0;i<=j;i++,j-=3,k=i+j);cout< A. 3 B. 4 C. 6 D. 7 10.在面向对象的程序设计中,首先在问题域中识别出若干个 ( )。(5分) A. 函数 B. 类 C. 文件 D. 过程 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.以下为不合法的十六进制数是( )(5分) A. 0x2A B. 0x11Au C. 0X0 D. 3A 2.若有以下定义和语句: int w[2][3],(*pw)[3]; pw=w; 则对w数组元素合法引用是 ( )(5分) A. pw[0][0] B. *(pw[1]+2) C. *(w[0]+2) D. *(pw+1)[2] 3.在C语言中,不合法的长整型常数是( )(5分) A. 2.1869e10 B. 0L C. 4962710 D. 0.054838743 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.想要在程序中正确地使用自定义的函数,则必须先声明它,然后再定义它。(5分) 2.C++是一种以编译方式实现的高级语言。(5分) 3.在C++中,可以通过在当前类中将另一个类作为自己的友元类,来在另一个类中访 问当前类的私有成员。(5分) 4.C++中标识符内的大小写字母是没有区别的。(5分) 5.C++是最开始提出类概念的语言(5分) 6.指针指向的内存地址可以改变,与之类似,引用指向的变量也可以改变。(5分) 7.同一个数组中的各个元素数据类型一定相同。(5分) 19秋《C++》作业_3 一、单选题 ( 每题5分, 共10道小题, 总分值50分 ) 1. 在int a=3,int *p=&a;中,*p的值是( )(5分) A. 变量a的地址值 B. 变量p的地址值 C. 3 D. 无意义 2.表达式中含有int、long和float型的变量,则运算时需要转换为( 分) A. int (5 )类型。 B. long C. float D. double 3.多个具有不同类型或个数参数的函数共用一个函数标识名被称为( )函数。(5 分) A. 继承 B. 重载 C. 递归 D. 多态 4.假定一个类的构造函数为A(int aa,int bb) {a=aa--;b=a*bb;},则执行A x(4,5);语句 后,x.a和x.b的值分别为( )。(5分) A. 3和15 B. 4和20 C. 5和4 D. 20和5 5.如不希望函数返回任何值,则可以将函数的返回值定义为( )(5分) A. int B. 0 C. void D. return 6.在函数定义中的形参属于( A. 局部变量 B. 全局变量 C. 静态变量 D. 寄存器变量 7.下列标识符不合法的是( A. a1 )。(5分) (5分) ) B. tex_1 C. _sum D. 2word 8.字符串常量“A”的长度是( A. 0 B. 1 C. 2 D. 3 9.定义函数 int show(int a,int b) { return a+b; } (5分) ) 则a被称为函数的( )(5分) A. 形参 B. 返回值 C. 名字 D. 实参 10.有如下语句 int i=1; do { i++; }while(i<10); 则程序执行时循环执行( A. 0 (5分) )次。 B. 8 C. 9 D. 10 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.以下叙述中不正确的是( )(5分) A. 函数中的形式参数是局部变量 B. 在一个函数内的复合语句中定义的变量在本函数范围内有效 C. 在一个函数内定义的变量只在本函数范围内有效 D. 函数的形式参数不可以说明为register变量 2.在C++语言中,不合法的字符常量是( )(5分) A. x43' B. 'ab' C. '084' D. "0" 3.下列运算符中,优先级相同的是( )(5分) A. ~ B. % C. / D. > 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.当一个函数体内定义的局部变量和全局变量同名时,程序会优先选择使用全局变量。 (5分) 2.类的私有成员只能被类中的成员函数访问,任何类以外的函数对它们的访问都是非 法的。(5分) 语句的格式为:for(表达式1;表达式2;表达式3) 语句若在for语句中省略3个 表达式,则循环一定执行无数次。(5分) 4.结构体的默认访问权限为public,而类中的默认访问权限为protected。(5分) f是用来定义一些C++中没有的新数据类型。(5分) 6.返回值类型、参数个数和类型都相同的函数也可以重载。(5分) 语句中的循环控制变量必须在for语句内部进行声明。(5分) 19秋《C++》作业_4 一、单选题 ( 每题5分, 共10道小题, 总分值50分 ) 1.( )是表示换行的转义字符(5分) A. f B. C. n D. b 2.若有语句char a[]= "test";则数组a[]中共有( )个变量。 A. 3 B. 4 C. 5 分) (5 D. 0 3.指针变量是用来存放( )的变量。(5分) A. 其他变量的值 B. 其他变量的变量名 C. 函数名 D. 地址 4.在C++中,函数原型不能标识( A. 函数的返回类型 B. 函数参数的个数 C. 函数参数类型 D. 函数的功能 5. int n=0; while(n=1)n++; 。(5分) ) while循环执行次数是( )。(5分) A. 0次 B. 1次 C. 不确定次 D. 无限次 6.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体, 这实体也就是( )。(5分) A. 类 B. 对象 C. 函数体 D. 数据块 7.若有语句char a[]= "test";int b=strlen(a);则执行语句后b的值为( )。(5分) A. 3 B. 4 C. 5 D. 0 8.双精度浮点型的类型说明符为( )(5分) A. int B. double C. float D. long 9. 下列程序的输出结果是( ) #include void main( ) {int n[][3]={10,20,30,40,50,60}; int (*p)[3]; p=n; cout< A. 10,30,50 B. 10,20,30 C. 20,40,60 D. 10,30,60 10.使用地址作为实参传给形参,下列说法正确的是( A. 实参是形参的备份 B. 实参与形参无联系 C. 实参与形参是同一对象 D. 形参是实参的备份 二、多选题 ( 每题5分, 共3道小题, 总分值15分 ) 1.C++语言中,下面的描述不正确的是( )(5分) 。(5分) ) A. do-while语句构成的循环,当while语句中的表达式值为非零时结束循环 B. do-while语句构成的循环必须用break语句才能退出 C. 不能使用do-while语句构成的循环 D. do-while语句构成的循环,当while语句中的表达式值为零时结束循环 2.下面哪些是C++标准I/O操作包含的类对象( )(5分) A. cin B. cerr C. clog D. cout 3.有关sizeof(double)不正确的描述是( )(5分) A. 一种函数调用 B. 一个双精度型表达式 C. 一个整型表达式 D. 一个不合法的表达式 三、判断题 ( 每题5分, 共7道小题, 总分值35分 ) 1.在私有继承中,基类中所有成员对派生类都是不可见的。(5分) 2.C++中的函数都具有返回值。(5分) 3.C++语言中,函数的声明和函数的定义必须在同一个源文件内。(5分) 4.一条语句最多只能定义一个变量并指定初始值。(5分) 5.编译错误属于异常,可以抛出。(5分) 6.某类中的友元类的所有成员函数可以存取或修改该类中的私有成员。(5分) 7.构造函数可以声明为虚函数。(5分)