【计算机类职业资格】国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷2及答案解析.doc
《【计算机类职业资格】国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷2及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级C++机试(基本控制结构和数组、指针与引用)模拟试卷2及答案解析.doc(12页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C+机试(基本控制结构和数组、指针与引用)模拟试卷2 及答案解析(总分:68.00,做题时间:90 分钟)一、选择题(总题数:34,分数:68.00)1.有如下程序: #includeiostream using namespace std; int main() char str 100,*p; coutPlease input a string:; cin;str; p=str; for(int i=0;*p!=0;p+,i+); coutiend1; return 0; 运行这个程序时,若输入字符串为: abcdefg abcd 则输出结果是( )。(分数:2.00)A.7B.
2、12C.13D.1002.if 语句的语法格式可描述为: 格式 1:if(条件)语句 或 格式 2:if(条件)语句1else语句 2 关于上面的语法格式,下列表述中错误的是( )。(分数:2.00)A.条件部分可以是一个 if 语句,例如 if(if(a=0-)B.语句部分可以是一个 if 语句,例如 if()if()C.如果在条件前加上逻辑非运算符!并交换语句 1和语句 2的位置,语句功能不变D.语句部分可以是一个循环语句,例如 if()while()3.若 x 和 y 是程序中的两个整型变量,则下列 if 语句中正确的是( )。(分数:2.00)A.if(x=0)y=1;else y=2
3、;B.if(x=0)then y=1 else y=2;C.if(x=0)y=1 else y=2;D.if(x=0)y=1;else y=2;4.下列语句中,与语句“1n=(ab?(1)c?1:0):0);”的功能等价的是( )。(分数:2.00)A.if(a=b) n=0;B.if(ab)Il(bc)n=1;else n=0;C.if(ab)if(bc) n=1:else n=0;else n=0;D.if(ab) n=1;else if(=c)n=1;else if(bc)n=1;else n=0;5.有如下程序 #includeiostream using namespace std;
4、 int main() char a; cina; if(a=*) cout*end1; else cout#end1; rerurn 0: 输入字符+时,程序的运行结果是( )。(分数:2.00)A.*B.#C.*#D.无输出6.执行语句序列( )。 int i=0; while(i25)i+=3; couti; 输出结果是(分数:2.00)A.24B.25C.27D.287.有如下程序: int x=3; do x-=2; coutx; while(1(-x); 执行这个程序的输出结果是( )。(分数:2.00)A.1B.30C.1-2D.死循环8.执行下列语句段后,输出字符*“的个数是(
5、 )。 for(int i=50;i1:-i)cout*;(分数:2.00)A.48B.49C.50D.519.执行下列语句段后,输出字符“*”的个数是( )。 for(int i=50;i1;I-=2)cout*;(分数:2.00)A.24B.25C.26D.5010.有如下程序: #includeiostream using namespace std; int main() hat sum; for(int i=0;i6;i+=3) sum=i; for(int j=i;j6;j+)sum+=j; coutsumend 1; return 0: 运行时的输出结果是( )。(分数:2.00
6、)A.3B.10C.12D.1511.有如下程序段: int i=5; while(int i=0)cout*;i-; 运行时输出*的个数是( )。(分数:2.00)A.0B.1C.5D.无穷12.有如下程序段: int i=1; while(1) i+; if(i=10) break; if(i2=0) cout*; 执行这个程序段输出字符*的个数是( )。(分数:2.00)A.10B.3C.4D.513.下列循环语句中有语法错误的是( )。(分数:2.00)A.int i;for(i=1;i10;i+)cout*;B.int i,j;for(i=l,j=0;i10;i+,j+)cout*;
7、C.int i=0;for(;i10;i+)cout*;D.for(1)tout*;14.有如下程序: #includeiostream using namespace std; int main() int f,f1=0(),t2=1; for(int i=3;i=6;i+) f=f1+f2; f1=f2;f2=f; coutfend1; return 0; 运行时的输出结果是( )。(分数:2.00)A.2B.3C.5D.815.有如下程序: #includeiostream using namespace std; int main() int a6=23,15,64,33,40,58;
8、 int s1,s2; s1=s2=a0; for(int*p=al+1;pa+6;p+) if(s1*p)s1=*p; if(s2*p)s2=*p; couts1+s2end1; return 0; 运行时的输出结果是( )。(分数:2.00)A.23B.58C.64D.7916.有如下程序: #includeiostream using namespace std; int main() int i,s=0; for(i=1;s20;i+=2)s+=i*i; coutiend1; return 0; 运行这个程序的输出结果是( )。(分数:2.00)A.3B.5C.7D.917.要定义一个
9、具有 5 个元素的一维数组 vect,并使其各元素的初值依次是 30,50,-88,0 和 0,则下列定义语句中错误的是( )。(分数:2.00)A.int vect=30,50,-88;B.int vect=30,50,-88,0,0;C.int vect5=30,50,-88;D.int vect5=30,50,-88,0,0;18.已知有数组定义 char a34; 下列表达式中错误的是( )。(分数:2.00)A.a2=WINB.strcpy(a2,WIN)C.a23=WD.a01=a0119.已知数组 arr 的定义如下: int arr5=1,2,3,4,5; 下列语句中输出结果不
10、是 2 的是( )。(分数:2.00)A.tout*arr+1end1;B.cout*(arr+1)C.coutarr1end1D.cout*arrend1;20.有如下类定义: ciass A char*a; public: A():a(0) A(char*aa)把 aa 所指字符串拷贝到 a 所指向的存储空间 a=_; strcpy(a,aa); A()(deletea; ; 横线处应填写的表达式是( )。(分数:2.00)A.new charstrlen(aa)+1B.charstrlen(aa)+1C.charstrlen(aa)D.new charsizeof(aa)-121.要定义
11、整型数组 x,使之包括初值为 0 的三个元素,下列语句中错误的是( )。(分数:2.00)A.im x3=0,0,0;B.int x=0;C.static int x3=0;D.int x=0,0,0;22.有如下语句序列: char str10;cistr; 当从键盘输入I love this game时,str 中的字符串是( )。(分数:2.00)A.I love this gameB.I love thiC.I loveD.I23.字符串“a+b=12nt”的长度为( )。(分数:2.00)A.12B.10C.8D.624.下列有一维数组 a 的定义中,语法正确的是( )。(分数:2.
12、00)A.int a(10);B.int n=7,an;C.int n;cinn;int an;D.const int size=10;int asize;25.有如下程序: #includeiostream using namespace std; int main() int *p; *p=9; coutThe value atp:*p; return 0; 编译运行程序将出现的情况是( )。(分数:2.00)A.编译时出现语法错误,不能生成可执行文件B.运行时一定输出:The value at p:9C.运行时一定输出:The value at p:*9D.运行时有可能出错26.下列语句
13、中,错误的是( )。(分数:2.00)A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*const point;27.有如下说明 int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是( )。(分数:2.00)A.*p+9B.*(p+8)C.*p+=9D.p+828.语句 int*p=k;定义了指针 p,与这个语句等效的语句序列是( )。(分数:2.00)A.int*p;p= coutfend1; return 0; 运行时的输出结果是( )。(分数:2
14、.00)A.2B.3C.5 D.8解析:解析:在主函数中 for 循环语句执行 4 次,第一次循环结束时,变量 f 的值等于 1,n 的值等于1,f2 的值等于 1;第二次循环结束时,变量 f 的值等于 2,f1 的值等于 1,f2 的值等于 2:第三次循环结束时,变量 f 的值等于 3,f1 的值等于 2,f2 的值等于 3;第四次循环结束时,变量 f 的值等于 5,f1的值等于 3,f2 的值等于 5;结束循环。15.有如下程序: #includeiostream using namespace std; int main() int a6=23,15,64,33,40,58; int s
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 机试 基本 控制 结构 数组 指针 引用 模拟 试卷 答案 解析 DOC
