四川省普通高等学校计算机应用知识和能力
第十九次等级考试
二级(C与C++语言) 笔 试 试 卷
时间: 2003年10月18日 上午 9:00—11:00 第一部分 软件技术基础 (共15分) 一、是非判断题(每小题1分,共10分) ( 判断下列各题是否正确,如正确,在客观答题纸上对应编号选A,否则选B ) 1. 在目前,用于保证软件质量的主要手段是进行软件测试。 2. 使用DMA方式传送数据期间不需要CPU干预。 3. 线性顺序队列会产生“假溢出”,而线性循环队列则不会。 4. 对同一种算法,用高级语言编写的程序比用低级语言编写的程序运行速度快。 5. 在线性表中,数据的存储方式有顺序和链接两种。 6. 进程是由程序块、文件控制块和数据块三部分组成。 7. 在面向对象的程序设计中,派生类只能从一个基类产生。 8. 操作系统是用户和硬件的接口。 9. 个人计算机中可配置的最大内存容量受地址总线位数的限制。 10.软件维护中最困难的问题是软件配置不全。
( 1 ) ( 2 ) ( 3 ) ( 4 ) ( 5 ) ( 6 ) ( 7 ) ( 8 ) ( 9 ) ( 10 )
二、选择题(每小题1分,共5分)
1. 在排序法中,从未排序序列中依次取出元素,与已排序序列中的元素作比较,
将其放入已排序序列的正确位置称为 ( 11 )。 11 (A) 选择排序 (B) 快速排序 (C) 插入排序 (D) 冒泡排序
2. 有X、Y、Z三个元素依次入栈,不可能的出栈顺序是 ( 12 )。 12 (A) Z,Y,X (B) Z,X,Y (C) Y,X,Z (D) X,Y,Z
3. 进程的状态是可以转换的,而以下哪个状态转换是不可能的 ( 13 )。 13 (A) 就绪状态 ? 执行状态 (B) 执行状态 ? 就绪状态 (C) 阻塞状态 ? 就绪状态 (D) 等待状态 ? 执行状态 4. 线性链表的地址 ( 14 )。 14 (A) 必须连续 (B) 部分地址必须连续 (C) 一定不连续 (D) 连续与否均可以 5. 在软件测试中,( 15 )主要分析程序的内部结构。 15 (A) 白盒法 (B) 黑盒法 (C) 因果图法 (D) 错误推测法
四川省计算机二级考试第十九次C与C++语言笔试试卷 第 1 页 共 136 页
第 2 页 共 136 页
第二部分 C与C++语言程序设计 (共85分) 一、单项选择题 ( 每小题1分,共10分 )
1. 对下列程序段的描述正确的是 ( 16 )。
# include
return x+y; }
void main() {
int i=10;
cout< 16 (A) 程序输入结果不确定 (B) 程序输出结果是20 (C) 程序输出结果是21 (D) 程序输出是22 2. 下列描述正确的是 ( 17 )。 17 (A) C++程序中cout时需要用到预处理命令 # include (B) C++程序必须有return语句 (C) C++程序中的变量必须定义在主程序内部 (D) C++程序中所有使用的符号常量可以不进行定义 3. 下述程序的输出结果是 ( 18 )。 # include int y=10; while(y--); printf(\} 18 (A) y=0 (B) y=1 (C) y=随机值 (D)y=-1 4. 若有以下说明: char *str1=\则正确的串操作语句是 ( 19 )。 19 (A) strcpy(str4,str1); (B) strcat(str1,str3); (C) str2=\ (D) strcpy(str5,str3); 5.下面程序运行后,x,y,z的值分别为 ( 20 ) 。 # include int x=0,y=0,z=0; ++x||++y||++z; printf(\} 四川省计算机二级考试第十九次C与C++语言笔试试卷 共136页 第2页 20 (A) 100 (B) 000 (C) 111 (D)001 6. 以下程序运行的结果是 ( 21 )。 # include { int x,y,z; } u; int k; }a; void main() { a.u.x=4; a.u.y=5; a.u.z=6; a.k=0; printf(\} 21 (A) 4 5 6 (B) 6 5 4 (C) 0 5 6 (D) 0 6 5 7. 关于C++和C语言学关系描述中,错误的是 ( 22 )。 22 (A) C语言与C++是兼容的 (B) C++对C语言进行了一些改进 (C) C语言是C++的一个子集 (D) C++和C语言都是面向对象的 8. 下列描述中,正确的是 ( 23 )。 23 (A) 子类可以继承其父类的所有属性和操作,但子类不能定义自己特有的属性和操作 (B) 消息传递是类与类之间通信的手段 (C) C++允许函数重载,但不允许运算符重载 (D) C++中可以定义虚函数,通过它来支持动态联编 9. 下面程序运行的结果是 ( 24 )。 # define f(x) 1+x+x*x # include int a=2,b=3; printf(\} 24 (A) 17 (B) 31 (C) 13 (D) 7 10. 下面局部程序代码是C++中的 ( 25 ) 特性的表现。 void display(int var) { cout< void display(char var) { cout< void display(int var1,int var2) { cout< 四川省计算机二级考试第十九次C与C++语言笔试试卷 第 3 页 共 136 页 第 4 页 共 136 页 25 (A) 继承 (B) 重载 (C) 多态性 (D) 封装 二、读程序回答问题 ( 每个选择3分,共45分 ) 1. 有下列程序: # include static int x[3]={2,3,4}; int i; for(i=0;i<3;i++) x[i]+=x[i]-m; for(i=0;i<3;i++) printf(\ printf(\ return(x[m]); } void main() { int y=1; f(f(y)); } (1)第一次调用f函数的结果是( 26 )。 26 (A) 5,7,9, (B) 1,5,9, (C) 0,1,3, (D) 3,5,7, (2)第二次调用f函数的结果是( 27 )。 27 (A) 3,5,7, (B) 1,5,9, (C) 0,1,3, (D) 5,7,9, 2. 读下列程序,运行时输入:This is a book! # include int change(char *c,int fg) { if( *c==' ' ) L1: return 1; else if ( fg && *c<='z' && *c>='a') *c+='A'-'a'; return 0; } void main() { int flag=1; char ch; do { ch=getchar(); flag=change(&ch,flag); putchar(ch); }while(ch!='\\n'); } 四川省计算机二级考试第十九次C与C++语言笔试试卷 共136页 第4页
相关推荐: