大学MOOC C++程序设计(吉林大学珠海学院)1452161186 最新慕课完整章节测试答案
第1讲C++语言概述
文章目录
- 第1讲C++语言概述
- 第2讲信息的表示与存储
- 第3讲程序中数据的表示
- 第4讲运算符与表达式
- 第5讲顺序结构的程序设计
- 第6讲选择结构的程序设计
- 第7讲循环结构的程序设计
- 第8讲循环结构的设计
- 第9讲函数的定义和使用
- 第10讲函数的设计
- 第11讲函数的调用
- 第12讲作用域、生命期和程序的组织结构
- 第13讲数组的定义和使用
- 第14讲数组与函数
- 第15讲字符串的处理
- 第17讲指针的定义与使用
- 第18讲指针与数组
- 第19讲指针与函数
- 第20讲动态分配内存
- 第25讲类的定义
- 第26讲对象的定义和使用
- 第27讲构造函数
- 第28讲默认构造函数和复制构造函数
- 第29讲析构函数
- 第30讲对象数组和对象指针
- 第31讲类作用域、对象生命期、const限定
- 第32讲静态成员和友元
- 第33讲类的继承与派生
- 第34讲派生类成员的访问
- 第35讲派生类的构造和析构函数
- 第37讲多态性
- 第38讲虚函数
- 第39讲运算符重载
- 第40讲典型运算符的重载
- 第41讲类模板
第1讲了解计算机的基本工作原理
1、单选题:
第一次信息化浪潮主要解决什么问题?
选项:
A: 信息传输
B: 信息处理
C: 信息爆炸
D: 信息转换
答案: 【 信息处理】
2、单选题:
下面哪个选项属于大数据技术的“数据存储和管理”技术层面的功能?
选项:
A: 利用分布式文件系统、数据仓库、关系数据库等实现对结构化、半结构化和非结构化海量数据的存储和管理
B: 利用分布式并行编程模型和计算框架,结合机器学习和数据挖掘算法,实现对海量数据的处理和分析
C: 构建隐私数据保护体系和数据安全体系,有效保护个人隐私和数据安全
D: 把实时采集的数据作为流计算系统的输入,进行实时处理分析
答案: 【 利用分布式文件系统、数据仓库、关系数据库等实现对结构化、半结构化和非结构化海量数据的存储和管理】
3、单选题:
在大数据的计算模式中,流计算解决的是什么问题?
选项:
A: 针对大规模数据的批量处理
B: 针对大规模图结构数据的处理
C: 大规模数据的存储管理和查询分析
D: 针对流数据的实时计算
答案: 【 针对流数据的实时计算】
4、单选题:
大数据产业指什么?
选项:
A: 一切与支撑大数据组织管理和价值发现相关的企业经济活动的集合
B: 提供智能交通、智慧医疗、智能物流、智能电网等行业应用的企业
C: 提供数据分享平台、数据分析平台、数据租售平台等服务的企业
D: 提供分布式计算、数据挖掘、统计分析等服务的各类企业
答案: 【 一切与支撑大数据组织管理和价值发现相关的企业经济活动的集合】
5、单选题:
下列哪一个不属于大数据产业的产业链环节?
选项:
A: 数据循环层
B: 数据源层
C: 数据分析层
D: 数据应用层
答案: 【 数据循环层】
6、单选题:
下列哪一个不属于第三次信息化浪潮中新兴的技术?
选项:
A: 互联网
B: 云计算
C: 大数据
D: 物联网
答案: 【 互联网】
7、单选题:
云计算平台层(PaaS)指的是什么?
选项:
A: 操作系统和围绕特定应用的必需的服务
B: 将基础设施(计算资源和存储)作为服务出租
C: 从一个集中的系统部署软件,使之在一台本地计算机上(或从云中远程地)运行的一个模型
D: 提供硬件、软件、网络等基础设施以及提供咨询、规划和系统集成服务
答案: 【 操作系统和围绕特定应用的必需的服务】
8、单选题:
下面关于云计算数据中心的描述正确的是:
选项:
A: 数据中心是云计算的重要载体,为各种平台和应用提供运行支撑环境
B: 数据中心就是放在企业内部的一台中心服务器
C: 每个企业都需要建设一个云计算数据中心
D: 数据中心不需要网络带宽的支撑
答案: 【 数据中心是云计算的重要载体,为各种平台和应用提供运行支撑环境】
9、单选题:
下列哪个不属于物联网的应用?
选项:
A: 智能物流
B: 智能安防
C: 环保监测
D: 数据清洗
答案: 【 数据清洗】
10、单选题:
下列哪项不属于大数据的发展历程?
选项:
A: 成熟期
B: 萌芽期
C: 大规模应用期
D: 迷茫期
答案: 【 迷茫期】
第2讲信息的表示与存储
第2讲了解各种进位计数制及常用数据在计算机中的存储
1、单选题:
下列数中最大的数为:
选项:
A: (101001)B
B: (52)O
C: (43)D
D: (2C)H
答案: 【 (2C)H】
2、单选题:
如果X为负数,由[X]补求[-X]补是将:
选项:
A: [X]补各值保持不变
B: [X]补符号位变反,其它各位不变
C: [X]补除符号位外,各位变反,末位加1
D: [X]补连同符号位一起各位变反,末位加1
答案: 【 [X]补连同符号位一起各位变反,末位加1】
3、单选题:
以下叙述错误的是:
选项:
A: 浮点数中,阶码反映了小数点的位置
B: 浮点数中,阶码的位数越长,能表示的精度越高
C: 计算机中,整数一般用定点数表示
D: 浮点数和整数的最高位都是符号位
答案: 【 浮点数中,阶码的位数越长,能表示的精度越高】
4、单选题:
二进制数101101.101转换为十进制数、八进制数和十六进制数的结果分别是:
选项:
A: 45.525、55.5、2D.A
B: 45.625、55.5、2D.B
C: 45.625、55.5、2D.A
D: 45.625、55.6、2D.A
答案: 【 45.625、55.5、2D.A】
5、单选题:
字符型数据'A'存放在计算机中:
选项:
A: 存放的就是字母'A'
B: 存放的是'A'的ASCII码值的补码
C: 实际存放的是'A'的ASCII码值97
D: 实际存放的是'A'的ASCII码值65
答案: 【 实际存放的是'A'的ASCII码值65】
第3讲程序中数据的表示
第3讲掌握常量、变量的表示及基本数据类型
1、单选题:
类型修饰符unsigned不能修饰
选项:
A: char
B: int
C: long int
D: float
答案: 【 float】
2、单选题:
在C++语言的数据类型中,int,short等类型的长度是
选项:
A: 固定的
B: 任意的
C: 用户自定义的
D: 与机器字长有关的
答案: 【 与机器字长有关的】
3、单选题:
下列选项中,均是合法的整型常量的是:
选项:
A: 60-0xffff0011
B: –0xcdf01a0xe
C: –01986,0120668
D: –0x48a2e50x
答案: 【 60-0xffff0011】
4、单选题:
下列选项中,均是合法的实型常量的是:
选项:
A: +1e+15e-9.403e2
B: -0.1012e-4-8e5
C: 123e1.2e-.4+2e-1
D: –e3.8e-45.e-0
答案: 【 -0.1012e-4-8e5】
5、单选题:
下列字符串常量表示中,哪个是错误的?
选项:
A: ""yes"or"No""
B: "'OK!'"
C: "abcdn"
D: "ABC"
答案: 【 ""yes"or"No""】
6、单选题:
字符串”tv\whichn”的长度是:
选项:
A: 4
B: 3
C: 9
D: 字符串有非法字符,输出值不确定
答案: 【 3】
7、单选题:
以下不是C++语言支持的存储类别的是:
选项:
A: auto
B: static
C: dynamic
D: register
答案: 【 dynamic】
8、单选题:
下列不是C++语言的合法用户标识符的是:
选项:
A: a#b
B: _int
C: a_10
D: Pad
答案: 【 a#b】
9、单选题:
下列字符列中,可作为C++语言程序自定义标识符是:
选项:
A: switch
B: file
C: break
D: do
答案: 【 file】
10、单选题:
下列属于逻辑运算的一组算式是:
选项:
A: 1/1=1
B: 1-1=0
C: 1+1=10
D: 1+1=1
答案: 【 1+1=1】
第4讲运算符与表达式
第4讲掌握各种表达式的表示
1、单选题:
命题“10<m<15或m>20”的C++语言表达式是
选项:
A: ((m>10)&&(m<15)||(m>20))
B: ((m>20)&&(m<15)||(m>10))
C: (m>10)||((m<15)&&(m>20))
D: ((m>10)||(m<15)||(m>20))
答案: 【 ((m>10)&&(m<15)||(m>20))】
2、单选题:
设int a=3,b=4,c=5;表达式(a+b)>c&&b==c的值是:
选项:
A: 2
B: -1
C: 0
D: 1
答案: 【 0】
3、单选题:
若x是一个bool型变量,y是一个值为100的int型变量,则表达式 !x && y>0 的值为:
选项:
A: 为true
B: 为false
C: 与x的值相同
D: 与x的值相反
答案: 【 与x的值相反】
4、单选题:
设变量m,n,a,b,c,d均为0,执行(m = a==b)&&(n=c==d)后,m,n的值是:
选项:
A: 0,0
B: 0,1
C: 1,0
D: 1,1
答案: 【 1,1】
5、单选题:
设a和b均为double型变量,且a=5.5,b=2.5,则表达式(int)a+b/b的值是:
选项:
A: 6.500000
B: 6
C: 5.500000
D: 6.000000
答案: 【 6.000000】
6、单选题:
以下非法的赋值表达式是:
选项:
A: n=(i=2,i++)
B: j++
C: ++(i+1)
D: x=j>0
答案: 【 ++(i+1)】
7、单选题:
设int x=2,y=4,z=7;则执行x=y--<=x| | x+y!=z后x,y的值分别为:
选项:
A: 0,3
B: 1,3
C: 2,3
D: 2,4
答案: 【 1,3】
8、单选题:
表达式!x等效于:
选项:
A: x==1
B: x==0
C: x!=1
D: x!=0
答案: 【 x==0】
9、单选题:
设以下变量均为int类型,则值不等于7的表达式是:
选项:
A: (x=y=6,x+y,x+1)
B: (x=y=6,x+y,y+1)
C: (x=6,x+1,y=6,x+y)
D: (y=6,y+1,x=y,x+1)
答案: 【 (x=6,x+1,y=6,x+y)】
10、单选题:
在下列成对的表达式中,运算符“+”的意义不相同的一对是:
选项:
A: 5.0+2.0和5.0+2
B: 5.0+2.0和5+2.0
C: 5.0+2.0和5+2
D: 5+2.0和5.0+2
答案: 【 5.0+2.0和5+2】
第5讲顺序结构的程序设计
第5讲掌握C++输入输出的格式控制
1、单选题:
输入输出格式控制是应该引入哪个头文件?
选项:
A: iostream
B: iomanip
C: istream
D: ostream
答案: 【 iomanip】
2、单选题:
对于语句cout<<endl<<x;中的各个组成部分,下列叙述中错误的是:
选项:
A: ”cout”是一个输出流对象
B: ”endl”的作用是输出回车换行
C: ”x”是一个变量
D: ”<<”称作提取运算符
答案: 【 ”<<”称作提取运算符】
3、单选题:
在ios中提供控制格式的标志位中,哪个是转换为十六进制形式的标志位?
选项:
A: hex
B: oct
C: dec
D: left
答案: 【 hex】
4、单选题:
定义变量:char one_char;则语句cout<<one_char;显示结果相当于C语言中的:
选项:
A: printf(one_char);
B: printf(“%c”,one_char)
C: scanf(one_char);
D: scanf(“%c”,&one_char);
答案: 【 printf(“%c”,one_char)】
5、单选题:
若有定义“int x=17;”,则语句“cout<<oct<<x;”的输出结果是:
选项:
A: 11
B: 0x11
C: 21
D: 021
答案: 【 21】
6、单选题:
与C语言printf("Hello,World\n");语句功能相同的C++语句是:
选项:
A: cout>>"Hello,World\n";
B: cout<<"Hello,World\n";
C: cin>>"Hello,World\n";
D: cin<<"Hello,World\n";
答案: 【 cout<<"Hello,World\n";】
7、单选题:
与语句cout<<endl;不等价的是:
选项:
A: cout<<’ n’;
B: cout<<'12';
C: cout<<’ xA’;
D: D)cout<<’ ’;
答案: 【 D)cout<<’ ’;】
8、单选题:
下列程序的运行结果是:#include <iostream>using namespace std;int main(){int a=2;int b=a+1;cout<<a/b<<endl;return 0;}
选项:
A: 0.66667
B: 0
C: 0.7
D: 0.6666666...
答案: 【 0】
9、单选题:
执行下列代码,程序的输出结果是(用下划线表示空格):int a=29,b=100;cout <<setw (3) << a << b << endl;
选项:
A: 29_100
B: _29_100
C: 29100
D: _29100
答案: 【 _29100】
10、单选题:
执行下列代码,程序的输出结果是:cout <<″Hex:″<< hex << 255;
选项:
A: ff
B: hex:ff
C: Hex:ff
D: f
答案: 【 Hex:ff】
第6讲选择结构的程序设计
第6讲掌握选择结构的程序设计
1、单选题:
流程控制语句的基本控制结构有三种,不属于这一种结构的是:
选项:
A: 顺序结构
B: 选择结构
C: 循环结构
D: 计算结构
答案: 【 计算结构】
2、单选题:
在设计程序时,应采纳的原则之一是:
选项:
A: 不限制goto语句的使用
B: 减少或取消注解行
C: 程序越短越好
D: 程序结构应有助于读者理解
答案: 【 程序结构应有助于读者理解】
3、单选题:
if语句的语法格式可描述为:格式1:if(<条件>)<语句>或if(<条件>)<语句1>else <语句2>关于上面的语法格式,下列表述中错误的是:
选项:
A: <条件>部分可以是一个if语句,例如if(if(a==0)……)……
B: <语句>部分可以是一个if语句,例如if(……)if(……)……
C: 如果在<条件>前加上逻辑非运算符!并交换<语句1>和<语句2>的位置,语句功能不变
D: <语句>部分可以是一个循环语句,例如if(……) while(……)……
答案: 【 <条件>部分可以是一个if语句,例如if(if(a==0)……)……】
4、单选题:
在if语句中的表达式是:
选项:
A: 只能是表达式
B: 只能是关系表达式和逻辑表达式
C: 只能是逻辑表达式
D: 可以是任意表达式
答案: 【 可以是任意表达式】
5、单选题:
执行如下语句序列,不可能出现的情况是:int x; cin>>x; if(x>250) cout<<'A'; if(x<250) cout<<'B'; else cout<<'A';
选项:
A: 显示:A
B: 显示:B
C: 显示:AB
D: 显示:AA
答案: 【 显示:AB】
6、单选题:
阅读下面的程序,如果两次执行上述程序,且键盘输入分别是4和6,则输出结果是:#include <iostream>using namespace std;int main(){int x;cin>>x;if (x++>5)cout <<x<<endl;elsecout<<x--<<endl;return 0;}
选项:
A: 4,6
B: 3,6
C: 4,7
D: 5,7
答案: 【 5,7】
7、单选题:
下列描述正确的是:
选项:
A: 表示m>n为false或m<n为true的表达式为(m>n&&m<n)
B: switch语句结构中必须有default语句
C: if语句结构中必须有default语句
D: 如果至少有一个操作数为true,则包含||运算符的表达式为true
答案: 【 如果至少有一个操作数为true,则包含||运算符的表达式为true】
8、单选题:
执行如下语句序列,不可能出现的情况是:int n; cin>>n; switch(n){ case 1: case 2: cout<<'A'; case 3: case 4: cout<<'B'; break; default:cout<<'C'; }
选项:
A: 显示:A
B: 显示:B
C: 显示:C
D: 显示:AB
答案: 【 显示:A】
9、单选题:
关于switch语句的说明中,错误的是:
选项:
A: default语句是可缺省的
B: 各个分支中的break语句起着退出switch语句的作用
C: switch结构不可以嵌套
D: 每个case语句中不必用{},而整体的switch结构一定要写一对花括号{}
答案: 【 switch结构不可以嵌套】
10、单选题:
将以下程序写成三目运算表达式语句是:if (a>b) max=a;else max=b;
选项:
A: max=(a>b)?;
B: (max=a>b)?a:b;
C: c=(a>b)?a:b;
D: max=(a>b)?a:b;
答案: 【 max=(a>b)?a:b;】
第7讲循环结构的程序设计
第7讲掌握循环结构的程序设计
1、单选题:
while(!x)中的(!x)与下面哪个条件等价?
选项:
A: x==1
B: x!=1
C: x!=0
D: x==0
答案: 【 x==0】
2、单选题:
已知:int i=5,下列do-while循环语句的循环次数为:do{cout<<i--<<endl;i--;}while(i!=0);
选项:
A: 0
B: 1
C: 5
D: 无限
答案: 【 无限】
3、单选题:
下面程序段:x=3; do{y=x--;if(!y) {cout<<”x”; continue;}cout<<”#”;}while(x>=1 && x<=2);
选项:
A: 将输出##
B: 是死循环
C: 将输出###
D: 含有不合法的控制表达式
答案: 【 将输出###】
4、单选题:
for(int x=0,y=0;!x&&y<=5;y++)语句执行循环的次数是:
选项:
A: 0
B: 5
C: 6
D: 无限
答案: 【 6】
5、单选题:
以下程序的输出结果是:#include <iostream>using namespace std;int main(){char s[]="abcdefbcde",*p=s;int v1=0,v2=0,v3=0,v4=0; for (p;*p;p++) switch(*p){ case 'a':v1++;break; case 'b':v3++;break; case 'e':v2++;break; default: v4++;}cout<<v1<<","<<v2<<","<<v3<<","<<v4<<endl;return 0;}
选项:
A: 1,2,2,5
B: 4,7,5,8
C: 1,5,3,10
D: 8,8,8,8
答案: 【 1,2,2,5】
6、单选题:
下面有关for循环的正确描述是:
选项:
A: for循环只能用于循环次数已经确定的情况
B: for循环是先执行循环体语句,后判断表达式
C: 在for循环中,不能用break语句跳出循环体
D: for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来
答案: 【 for循环的循环体语句中,可以包含多条语句,但必须用大括号括起来】
7、单选题:
C++语言的跳转语句中,对于break和continue说法正确的是:
选项:
A: break语句只应用与循环体中
B: continue语句只应用与循环体中
C: break是无条件跳转语句,continue不是
D: break和continue的跳转范围不够明确,容易产生问题
答案: 【 continue语句只应用与循环体中】
8、单选题:
下列循环语句的循环次数是:while(int i=0) i--;
选项:
A: 0
B: 1
C: 2
D: 3
答案: 【 0】
9、单选题:
下面程序的输出结果是:#include<iostream>using namespace std;int main(){for(int i=-1;i<4;i++)cout<<(i?'0':'*');return 0;}
选项:
A: 0*0
B: 0000
C: 0*00
D: 0*000
答案: 【 0*000】
10、单选题:
下面程序的输出结果是:#include "iostream"using namespace std;int main() {int i=17;wh
