2009 C++笔试题目B

合集下载

C笔试题目及答案c语言笔试题目及答案

C笔试题目及答案c语言笔试题目及答案

C笔试题目及答案c语言笔试题目及答案c笔试题目及答案:c语言笔试题目及答案c笔试题目汇总篇11.谋下面函数的返回值(谷歌)intfunc(x){intcountx=0;while(x){countx++;x=x&(x-1);}returncountx;}假定x=。

答案:8思路:将x转变为2十进制,看看所含的1的个数。

2.什么是“引用”?申明和使用“引用”要注意哪些问题?请问:提及就是某个目标变量的“别称”(alias),对应用领域的操作方式与对变量轻易操作方式效果完全相同。

言明一个提及的时候,切勿必须对其展开初始化。

提及声明完后,相等于目标局部变量存有两个名称,即为该目标原名称和提及名,无法再把该提及名做为其他局部变量的别称。

声明一个提及,不是崭新定义了一个变量,它只则表示该提及名就是目标局部变量的一个别称,它本身不是一种数据类型,因此提及本身不占到存储单元,系统也不给提及分配存储单元。

无法创建数组的提及。

3.将“引用”作为函数参数有哪些特点?(1)传达提及给函数与传达指针的效果就是一样的。

这时,被调函数的形参就沦为原来主调函数中的实参变量或对象的一个别称去采用,所以在被调函数中对形参变量的操作方式就是对其适当的目标对象(在主调函数中)的操作方式。

(2)使用引用传递函数的参数,在内存中并没有产生实参的副本,它是直接对实参操作;而使用一般变量传递函数的参数,当发生函数调用时,需要给形参分配存储单元,形参变量是实参变量的副本;如果传递的是对象,还将调用拷贝构造函数。

因此,当参数传递的数据较大时,用引用比用一般变量传递参数的效率和所占空间都好。

(3)采用指针做为函数的参数虽然也能够达至与采用提及的效果,但是,在被调函数中同样必须给形参分配存储单元,且须要重复使用"*指针局部变量"的形式展开运算,这很难产生错误且程序的写作性极差;另一方面,在主调函数的调用点处,必须用变量的地址做为实参。

2009年全国计算机等级考试二级C++笔试试题(1)-中大网校

2009年全国计算机等级考试二级C++笔试试题(1)-中大网校

2009年全国计算机等级考试二级C++笔试试题(1)总分:100分及格:60分考试时间:90分每小题2分,共70分(1)下列能对对象进行初始化的是()。

A. 构造函数B. 析构函数C. 友元函数D. 静态成员函数(2)若有以下宏定义:#define N 2#define Y(n)((N+1)*n)则执行语句z=2*(N+Y(5));后的结果是()。

A. 语句有错误B. z=34C. z=70D. z无定值(3)软件调试的目的是()。

A. 发现错误B. 改正错误C. 改善软件的性能D. 挖掘软件的潜能(4)以下程序的功能是按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出:上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。

这条语句是()。

A. sum=O;B. sum+=score;C. ave=sum/4.O;D. cout<<"No"<<n<<":"<<ave<<endl;(5)下列关于关系运算的叙述中正确的是()。

A. 投影、选择、连接是从二维表的行的方向来进行运算B. 投影、选择、连接是从二维表的列的方向来进行运算C. 并、交、差是从二维表的列的方向来进行运算D. 以上三种说法都不对(6)若执行以下程序时从键盘上输入9,则输出结果是()。

A. 11B. 10C. 9D. 8(7)当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。

A. ios::inB. ios::outC. ios::int|ios::outD. 没有(8)按“先进先出”原则组织数据的结构是()。

A. 有序表B. 栈C. 队列D. 二叉树(9)在多继承中.公用派生和私有派生对于基类成员在派生类中的可访问性与单继承规则()。

2009年全国高等学校计算机考试二级(C语言)试卷

2009年全国高等学校计算机考试二级(C语言)试卷

一、单项选择1.中央处理器(CPU)包括A.控制器和内存 B .制器和内存器C.运算器和内存 D .硬盘和控制器2.计算机的主存储器包括A.RAM和C盘 B .ROM和C磁盘C . ROM和RAMD .硬盘和控制器3.计算机中数据的表示形式是A.二进制B.八进制C.十进制 D.十六进制4在微型计算机中,2048*2048的字节准确等于A.1MBB.2MBC.3MBD.4MB5.八进制整数157化为二进制数是A.1101010B.1101000C. 1101111D.10101016.在Windows应用环境中,选中窗口全部对象的组合键是A.<Alt>+AB.<Ctrl>+AC.<Alt>+<Shift>+AD.<Shift>+A7.Windows中,文件扩展名通常表示A.文件的类型B.文件的大小C. 文件的版本D.文件的修改时间8.在Windows移动普通窗口的方法是使用鼠标拖动A.滚动条B.菜单栏C.工具栏D.标题栏9.在Windows中剪贴板是A.硬盘上的一块空间B.U盘上的一块空间C.Cache中的一块空间D.内存中的一块空间10.在Windows中,关闭窗口的操作是双击A.窗口控制图标B.标题栏C.菜单栏D.工具栏11.在Windows的“资源管理器”的窗口右部,若单击了第一个文件,有按住<Ctrl>键并开始单击第七个文件,则A.在0个文件被选中B.有1个文件被选中C.有2个文件被选中D.有7个文件被选中12.Word文档文件默认的扩展名是A.TXTB.DOSC.WPSD.WAV13.Word文档编辑过程中,为防止突然断电等意外操作造成丢失数据,应经常单击工具栏上的保存按钮或快捷键A.<Art>+SB.<Alt>+CC. <Ctrl>+CD.<Ctrl>+S14.保存Word文档时系统默认的保存路径是A.My DocumentsB.我的公文包C.WindowsD.Wrod15.Word程序中允许打开多个文档,可以实现文档窗口之间切换的菜单是A.编辑B.窗口C.视图D.工具16.Excel中,下列输入数据属于字符型的是A.+J1+7B.=SUM(J1:Y1)C.’SUM(P1,P7)D.=P7+717.以下说法错误的是A.Excel文件的扩展名是.XSLB.Excel是电子表格软件C.Excel属于OfficeD.Excel可以在Windows环境下运行18.在Excel中,若要对几个数值求平均值,选用函数是A.SUMB.AVERAGEC.MAXD.COUNT19.局域网的英文缩写是A.WANB.ISDNC.WWWN20.下列各种网络拓扑结构中,共享资源能力最差的是A.网状结构B.树状结构C.总线结构D.星型结构21若在说明语句:int i=9,j:则执行语句j=(i++)+(++i);后j的数值是A.18B.19C.20D.2222.设有如下定义:int x=10,y =3;则语句printf(”%d”,(x%y));的输出结果是A.0B.1C.4D.323.”A”和在计算机内存中分别占用的字节数是A.2,1B.1,1C.1,2D.2,224.若已定义char a[10];则下面表达式中不能表示a[1]地址的是A.a+1B.a++C.&a[0]+1D.&a[1]25.设有定义:int a=1,b=2,c=3,d=4;,则printf(”%d”,a<b?c:b);的输出结果是A.1B. 2C.3D.426.C语言中运算数必须是整形的运算符是A./B.%C.>=D.+27.C语言中,可以用来定义多个不同类型变量值的数据类型是A.数组B.结构体C.指针D.权举28.程序设计的三种结构是A.顺序结构、分支结构、选择结构B.顺序结构、递归结构、选择结构C.顺序结构、循环结构、逻辑结构D.顺序结构、循环结构、选择结构29.字符串常量”\\ab\’dtd"的长度是A.5B.7C.8D.930.若有如下定义,则sizeof(struct stu)的数值是Struct sut{ int i;Char ch[5]}a;A.2B.5C.6D.7二.阅读程序题(本题共10小题,每小题3分,共30分)1. main( ){int x=4;printf(“%d”, x+=x-=x*x);}2. int x=4,y=5;main( ){int x=6, y=7;printf(“%d,%d\n”,x,y);}3. main( )int i,s=0;for(i=1;i<6;i++){switch(i){case 1: s=1;case 2: s+=3; break;case 3: s==4;default : s+=2;}}printf(“%d\n”, s);}4.int fun(int x){static int m=1;m*=x;return m;}main( ){int i,s=0;for(i=1;i<3;i++)s+=fun(i);printf(“%d\n”,s);}5. main( ){int a=8,b=10,c=6;if(a<b)if(b<1) c=0else c++;printf(“%d\n”,c);}6. #define m(x,y,z) x*y-zmain( ){int a=2,b=3,c=4,y;y= M(a,b+c,c+b);printf(“%d\n”,y);}7. main( ){int a[ ]={1,2,3,4,5,6}, *p;p=a;*(p+2)+=4;printf(“%d,%d \n”, *p,*(p+2));}8. main( ){int num[3][3]={0,1,2,0,1,2,0,1,2},I,j,t=0;for(i=0;i<3;i++)for(j=0;j<=i;j++)t=t+num[i][num[[j][j]];}三.完善程序题(本小题共10小题,每小题2分,共20分)将下列程序________的内容填写到答题纸上对应题号处,使程序完整、正确。

2009年3月全国计算机等级考试二级笔试试卷C语言程序设计(附答案)

2009年3月全国计算机等级考试二级笔试试卷C语言程序设计(附答案)

机密★启用前2009年3月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)-(10)、(21)-(40)每题2分,(11)-(20)每题1分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应的位置上,答在试卷上不得分。

(1)下列叙述中正确的是A)栈是“先进先出”的线性表B)队伍是“先进先出”的线性表C)循环队列是非线性结构D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构(2)支持子程序调用的数据结构是A)栈 B)树 C)队列 D)二叉树(3)某二叉树有5个度为2的结点,则该二叉树的叶子结点数是A)10 B)8 C)6 D)4(4)下列排序方法中,最坏情况下比较次数最少的是A)冒牌排序 B)操作系统 C)直接插入排序 D)堆排序(5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件),下面属于应用软件的是A)编译程序 B)操作系统 C)教务管理系统 D)汇编程序(6)下面叙述中错误的是A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行“错误定位”是程序调试的必要步骤、C)程序调试通常也成为DebugD)软件测试应严格执行测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独立性度量的两个标准。

下列叙述中正确的是A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利益提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度(8)数据库应用系统中的核心问题是A)数据库设计 B)数据库系统设计C)数据库维护 D)数据库管理员培训(9)有两个关系R、S如下:有关系R通过运算得到关系S,则所使用的运算为A)选择 B)投影C)插入 D)连接(10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性 B)键 C)关系 D)域(11)以下选项中合法的标识符是A)l_l B)l-l C)_ll D)l_ _(12)若函数中有定义语句:int k;,则A)系统将自动给k赋初值0 B)这时k中的值无定义C)系统将自动给k赋初值-1 D)这时k中无任何值(13)以下选项中,能用作数据常量的是A)o115 B)0118 C)1.5e1.5 D)115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A)x*=x+1 B)x++,2*x C)x*=(1+x) D)2*x,x+=2(15)程序段:int x=12;double y=3.;printf(“%d%8.6f”,x,y);的输出结果是:A)123. B)12 3. C)12,3. D)123.(16)若有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是A)scanf(“%f%f”,x,y); B)scanf(“%f%f”,&x,&y);C)scanf(“%1f%1e”,px,py); D)scanf(“%1f%1f”,x,y);(17)以下是if语句的基本形式:if(表达式) 语句其中“表达式”A)必须是逻辑表达式 B)必须是关系表达式C)必须是逻辑表达式或关系表达式 D)可以是任意合法的表达式(18)有以下程序#include <stdio.h>main(){ int x;scanf(“%d”,&x);if(x<=3) ; elseif(x!=10) printf(“%d\n”,x);}程序运行时,输入的值在哪个范围才会有输出结果A)不等于10的整数 B)大于3且不等于10的整数C)大于3或等于10的整数 D)小于3的整数(19)有以下程序#include <stdio.h>main(){ int a=1,b=2,c=3,d=0;if (a==1 && b++==2)if (b!=2||c==!=3)printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);else printf(“%d,%d,%d\n”,a,b,c);}程序运行后输出的结果是A)1,2,3 B)1,3,2 C)1,3,3 D)3,2,1(20)以下程序段中的变量已正确定义for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf(“*”);程序段输出的结果是A)******** B)**** C)** D)*(21)有以下程序#include <stdio.h>main(){ char *s={“ABC”};do{ printf(“%d”,*s%10); s++;}while(*s);}注意:字母A的ASCⅡ码值为65。

全国计算机二级C语言考试注意事项以及真题

全国计算机二级C语言考试注意事项以及真题

笔试机试注意事项笔试注意事项1、笔试满分100 分,共两大题,选择70 分40 小题,填空30 分15 小题。

C 语言占70分,公共基础占30 分。

2、选择用铅笔涂答题卡,填空用黑色签字笔在答题上写。

3、考前准备好身份证、准考证、2B 铅笔、橡皮、黑色签字笔、手表等。

机试注意事项1、机试满分100 分,共三道题,其中程序填空30 分2~3 空,程序改错30 分2~3 空,完成程序40 分。

考试时间为90 分钟,考试环境为Windows XP,Visual C++6.0。

2、大家考试的时间、地点是不一样的,所以一定看清自己准考证,提前进入考场候考。

3、使用Visual C++编译,具体是中文版还是英文版由考点决定,要求中英文版都会用。

4、考试科目是二级C 语言,不是C++或三级C。

5、成功登录考试系统后,自己无法选择改变题目,相邻的考生题目不一样。

6、考试中若出现死机、断电等异常情况不要紧张,立即举手报告监考人员,由他们处理,切不可自作主张。

7、考题大多数是50 套模拟题中的题,就算不一样也是换汤不换药。

8、填空和改错把“ 1 ”删掉填上正确答案,不要改动每空前面/*****found*****/注释行等内容;完成程序在函数体花括号{ }中填写程序,“完成程序”题编完后必须要编译运行才能得分。

做完后千万不要忘记保存。

9、在考试界面左上角有“答题”菜单,点击后选择“启动Microsoft Visual C++”进入VC,在“打开”对话框中按考生文件夹中的路径选择文件。

考生目录下的W ARN 文件夹有备份文件,如果误操作了可从这个文件夹中复制出来。

10、很多考生进入机试时,脑子一片空白,无从下手;还有的不知道逻辑或“||”怎么打出来或Insert 键按后有什么区别等。

这是缺少练习的缘故,所以一定要在考前多练。

其它注意事项1、无法使用上机模拟系统的原因有:VISTA 系统需右键单击“二级考试”程序,选择“以管理员身份运行”;杀毒软件误报需关闭杀毒软件;部分网吧机房不允许安装。

2009年C语言模拟题目-2(填空题答案)

2009年C语言模拟题目-2(填空题答案)

一、程序填空题[在每对/**/之间填写内容,完成题目的要求]1、以下程序用以实现:输入运算标志m和圆的半径r,按照运算标志进行指定运算。

运算标志运算a 圆的面积c 圆的周长b 二者都计算#define PI 3.1415926void main( ){ /**/ char /**/ m;float r, a, c;printf(“Input mark a or c or b and r: “);scanf(“%c %f”, &m, &r);if(((m==‟a‟) || (m==‟c‟) || (m==‟b‟)) && r>=0){if(m==‟a‟){a=PI*r*r;printf(“area is %f\n”,a);}else if(/**/ m==‟c‟ /**/ ){c=2*PI*r;printf(“circle is %f\n”,c);}else{ a=PI*r*r;c=2*PI*r;printf(“area is %f, circle is %f\n”, a, c);}}elseprintf(“Data are error!\n”);}2、以下程序用以统计键盘输入字符串中所有字符个数n和元音字符个数v。

#include <stdio.h>void main( ){char c;int n=0, v=0;/**/ do /**/{switch( c=getchar() ){ case …a‟: case …A‟:case …e‟: case …E‟:case …i‟: case …I‟:case …o‟: case …O‟:case …u‟: case …U‟:v++;/**/ default: /**/n++;}}while(c!=‟\n‟);printf(“n=%d, v=%d\n”,n,v);getch( );}3、以下程序用以查找1-100之间含有3或7数字的所有整数,并按每行最多打印10个数的形式输出。

2009年全国计算机等级考试二级C++笔试试题(2)-中大网校

2009年全国计算机等级考试二级C++笔试试题(2)总分:100分及格:60分考试时间:90分每小题2分,共70分(1)以下循环体的执行次数是()。

A. 3B. 2C. 1D. 0(2)以下不属于构造函数特征的是()。

A. 构造函数名与类名相同B. 构造函数可以重载C. 构造函数可以设置默认参数D. 构造函数必须指定函数类型(3)若有以下程序段:int a=0,b=0,c=0; c=(a-=a-5),(a=b,b+3); cout&lt;&lt;a&lt;&lt;","&lt;&lt;b&lt;&lt;","&lt;&lt;c&lt;&lt;endl;<A<<","<<B<<","<<C<<END L; 其输出结果是()。

A. 3,O,-10B. 0,O,5C. -10,3,-1OD. 3,O,3(4)设有如图所示的二叉树则对该二叉树前序遍历的结果是()。

A. FCADBEGB. ACBDFGEC. ABDCGEFD. ACBDFEG(5)以下程序运行后,输出结果是()。

A. 49.5B. 9.5C. 22.OD. 45.O(6)静态成员函数不能说明为()。

A. 整型函数B. 常函数C. 虚函数D. 内联函数(7)为了避免嵌套的if…else语句的二义性,C++规定与else配对的是()。

A. 缩排位置相同的ifB. 在其之前未配对的ifC. 在其之前未配对的最近的ifD. 同一行上的if(8)下列数据结构中,能直接使用堆排序法进行排序的是()。

A. 完全二叉树B. 线性链表C. 带链的栈D. 带链的队列(9)以下有关类与结构体的叙述不正确的是()。

A. 结构体中只包含数据;类中封装了数据和操作B. 结构体的成员对外界通常是开放的;类的成员可以被隐蔽C. 用struet不能声明一个类型名;而class可以声明一个类名D. 结构体成员默认为public;类成员默认为private(10)设有以下类和对象的定义:则下面针对成员变量m的引用,错误的是()。

2009年国家公务员考试真题及答案解析【行测真题】

2009年国家公务员考试笔试公共科目《行政职业能力测验》试卷第一部分常识判断(共25题,参考时间限10分钟)1.北京奥运会开幕式上展示的巨大的“和”字,其蕴含的思想源自()A.墨家B.道家C.儒家D.法家【答案解析】C。

孔子的思想以“仁、和”为本,凡是都要中庸,不要过,由于儒家的倡导,“和”成为中华文化的基本精神,成为中国人追求的核心价值和处世原则。

2.今年改革开放的三十周年,三十年前我国的经济体制改革始于()A.上海B.安徽C.广东D.浙江【答案解析】B。

我国的经济体制改革始于安徽省凤阳县小岗村的农民们联产承包责任制。

3.经济学上所推崇的“橄榄型”收入分配结构,是指低收入和高收入相对较少、中等收入占绝大多数的分配结构。

我国正在采取,实施“提低、扩中、调高、打非、保困”的方针,使收入分配朝着“橄榄型”方向发展。

()A.生产的发展B.效率的提高C.社会的公平D.内需的扩大【答案解析】C。

从“提低、扩中、调高、打非、保困”方针可以看出,这是在强调收入分配的公平。

4.新中国成立以后,我国政府制定了“两颗一星”的战略决策,这一战略目标的实现是在()A.20纪50~60年代B.大跃进时期C.20世纪60~70年代D.文革时期【答案解析】C。

“两弹一星”是指原子弹、氢弹和人造卫星。

1964年10月16日,中国第一颗原子弹爆炸成功;1967年6月17日,中国第一颗氢弹空爆试验成功;1970年4月24,中国第一颗人造卫星(东方红一号)发射成功。

这就是中国人民创造的“两弹一星”的人间奇迹。

5.从2006年元旦起我国政府正式取消了延续2006年的农业税。

我国农业税的征收始于:()A.春秋时期鲁国的初税亩B.战国时期的商秧变法C.秦朝的按亩纳税D.西汉的编户齐民【答案解析】A。

农业税的征收始于春秋时期鲁国的初税亩。

6.地热资源、太阳能、水能资源均丰富的地区是()A.青藏高原B.海南岛C.塔里木盆地D.四川盆地【答案解析】A。

2009年全国计算机等级考试二级C++笔试试题

年月二级真题及参考答案一、选择题(每小题分,共分)()对编译器区分重载函数无任何意义的信息是)参数类型)参数个数)返回值类型)常成员函数关键字()有如下类定义和变量定义:{:(){;}(){}(){ ;}(){;}:;};;;下列函数调用中错误的是)();)();)();)();()有如下类定义和变量定义:{:;:;};{*类体略*};{*类体略*);;;下列语句中正确的是)<< << ;)<< << ;)<< << ;)<< << ;()运算符重载时不需要保持的性质是)操作数个数)操作数类型)优先级)结合性()下列关于函数模板的描述中,错误的是)从模板实参表和从模板函数实参表获得信息矛盾时,以模板实参的信息为准)对于常规参数所对应的模板实参,任何情况下都不能省略)虚拟类型参数没有出现在模板函数的形参表中时,不能省略模板实参)模板参数表不能为空()要建立文件流并打开当前目录下的文件用于输入,下列语句中错误的是)(“”);)* (“”);); (“”);)* ();一>(“”);()下列描述中,不属于面向对象思想主要特征的是)封装性)跨平台性)继承性)多态性()有如下程序段:;(){,;<<<<<<;}运行时的输出结果是))))()有如下程序段:;(){《'*';}运行时输出“*”的个数是))))无穷()己知有数组定义[][];下列表达式中错误的是)[]“”)([],“”))[][]'')[][][][]()已知函数的原型为();下列重载函数原型中错误的是)();)();)(*);)(, , );()建立一个类对象时,系统自动调用)析构函数)构造函数)静态函数)友元函数()通过派生类的对象可直接访问其)公有继承基类的公有成员)公有继承基类的私有成员)私有继承基类的公有成员)私有继承基类的私有成员()己知表达式中的“”是作为成员函数重载的运算符,则与十等效的运算符函数调用形式为)())())(,))()()在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是)())[ ])< >){ }()当使用流类定义一个流对象并打开一个磁盘文件时,文件的默认打开方式为))))()有如下程序:<><>;{* ;;:(* , ){[()];();;}* (){ ;)(){ ;}};(){*“”,*“”;, ;(),(,);<< (()). ();;}运行时的输出结果是))))()有如下程序:<><>;{;:():(){<<“”;} (){ ; <<“”;)(){<<;}(){ ;}};(){(),();* ();<<一>();;;}。

2009年(下)全国信息技术水平考试计算机程序设计技术水平证书(C语言)

2009年(下)全国信息技术水平考试计算机程序设计技术水平证书(C语言)考试试卷第一大题:单选题(40 分)1. (2分) 以下程序的功能是()。

#include<stdio.h>#include<math.h>void main( ){int m,k,i;for(m=2;m<=10;m++){k=sqrt(m);for(i=2;i<=k;i++)if(m%i==0)break;if(i>=k+1)printf("%3d",m);}}(A) 求10以内偶数之和(B) 求10以内质数之和(C) 求10以内质数(素数)(D) 求10以内奇数之和2. (2分)以下程序输出的结果是()。

#include<stdio.h>void main( ){int a=2,b=4,c=6,x=1,y=2;y=(x=a+b),(b+c);printf("y=%d,x=%d",y,x);}(A) y=6,x=6(B) y=10,x=6 (C) y=2,x=1 (D) y=10,x=23 . (2分设有int a[ ]={20,21,22},*p=&a[2];则执行完 (*p)- -; *(p-1)=20;后,a[0],a[1],a[2]的值为 ( )。

(A) 21,21,22 (B) 20,22,22 (C) 20,20,22 (D) 20,2) 0,214. (2分) 以下程序段输出的结果是( )。

#include<stdio.h>#include<string.h>void main( ){ char s1[20]="12345",s2[20]="1234";printf("%d\n",strlen(strcpy(s2,s1)));}(A) 4 (B) 5 (C) 9 (D) 105. (2分) 已知int a=20; a+=2; 则a的值为()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第1页

诚信保证 本人知晓我校考场规则和违纪处分条例的有关规定,保证遵守考场规则,诚实做人。 本人签字:

编号: 西北工业大学考试试题(卷)

20 08 -20 09 学年第 二 学期 开课学院 软件与微电子学院 课程 C++程序设计 学时 84 考试日期 2008-07-09 考试时间 2 小时 考试形式(闭开)(BA)卷

题号 一 二 三 四 五 六 七 总分 得分

考生班级 学 号 姓 名 一、单选题(2分 * 15 = 30分) 1.若有以下语句: static char x[ ]=”12345”; static char y[ ]={‘1’,’2’,’3’,’4’,’5’}; 则正确的说法是________________。 A.x数组和y数组的长度相同 B.x数组的长度大于y数组的长度 C.x数组的长度小于y数组的长度 D.x数组与y数组等价

2.一个C++类________________。 A.只能有一个构造函数和一个析构函数。 B. 可以有一个构造函数和多个析构函数 C. 可以有多个构造函数和一个析构函数 D. 可以有多个构造函数和多个析构函数

3.以下有关宏替换的叙述中,错误的是___________。 A.宏替换不占用运行时间 B.宏名无类型 C.宏替换只是字符替换 D.宏名必须用大写字母表示

4.要判断char型变量m是否是数字,可以使用下列表达式_________。 A.0<=m && m<=9 B.’0’<=m && m<=’9’ C.”0”<=m && m>=”9” D.以上都错误 注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第2页

5. 要使语句“p=new int[10][20];”能够正常执行,p应定义为_______。 A. int *p; B. int **p; C. int *p[20]; D. int(*p)[20]; 6.在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是_______。 A. 作为友元函数重载的1元运算符 B. 作为成员函数重载的1元运算符 C. 作为友元函数重载的2元运算符 D. 作为成员函数重载的2元运算符

7.下面关于C++中类的继承与派生的说法错误的是:_____________。 A. 基类的protected成员在公有派生类的成员函数中可以直接使用 B. 基类的protected成员在私有派生类的成员函数中可以直接使用 C. 私有派生时,基类的所有成员访问权限在派生类中保持不变 D. 继承可以分为单一继承与多重继承

8.下面选项中能用作用户自定义的标识符是___________。 A.friend B.-var C.3Xyz- D.Float

9.C++语言中提供内存申请运算符________,它能可靠地控制内存的分配。 A.delete B.new C.pos D.auto

10.数组作为函数的形参时,把数组名作为实参,传递给函数的是_________。 A.该数组的首地址 B.该数组的元素个数 C.该数组中的各元素值 D.该数组的大小

11、有关构造函数的说法不正确的是_______ 。 A、构造函数名字和类的名字一样。 B. 构造函数无任何函数类型。 C. 构造函数有且只有一个 D. 构造函数在说明类对象时自动执行。

12、下列关键字中,_______不是类定义中使用的关键字。 A.class B.switch C.private D.public

13、当类中的一个整型指针成员指向一块具有n*sizeof(int)大小的存储空间时,它最多能够 存储_______个整数。 A. n B. n+1 C. n-1 D. 1

14、假定AB为一个类,则执行 “AB a, b(3), *p;”语句时共调用该类构造函数的次数为_______。 A. 2 B. 3 C. 4 D. 5

15、在重载一个运算符时,其参数表中没有任何参数,这表明该运算符是_______。 A. 作为友元函数重载的1元运算符 B. 作为成员函数重载的1元运算符 C. 作为友元函数重载的2元运算符 D. 作为成员函数重载的2元运算符 注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第3页

二、填空题 (每空3分 共15分) 1.设a=5, b=4, c=0, 计算(a>b)&&b&&(b!=c)的值______________。 2.请阅读下面的程序: # include void f(float *p,float &b,int n) { for(int i=0;ib+=*p++; b/=n; } const int N=5; void main(void) { int i; float a[]={1,2,3,4,5},c=0; f (a,c,N); cout<<"c="<} 请写出程序运行结果为______________。

3. 执行如下程序后,第一行的输出是__________,第三行的输出是_________________。 #include int fac() { int b=0; static int c=3; b++;c++; return b+c; } void main(int argc, char *argv[]) { for(int j=0;j<3;j++) cout<}

4. 请阅读如下程序: # include void main (void) { float a=1,b=2,c; float *p1=&a,*p2; 注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第4页

p2=&b; c= * p1 + *p2; cout<<*p1<<'\t'<<*p2<<’\t’<}

请写出程序运行结果为_______________。

三、判断题 (1分 * 10 = 10分) 1、每个变量都有自己的作用域,作用域之外无法访问。 ( ) 2、struct成员默认的访问权限是private。 ( ) 3、一个名称空间只能在一个文件中定义,不能分散成多个文件。 ( ) 4、可以使用预编译命令防止头文件被重复包含。 ( ) 5、使用malloc分配内存会调用类的构造函数 ( ) 6、标志为inline的函数一定是内联函数。 ( ) 7、C++中的临时对象都是const属性。 ( ) 8、如果有定义const int* u,则指针u可以改变,而u指向的内容不能修改。 ( ) 9、如果某个类共有继承(public)父类,则该类能够访问父类的所有属性和方法。( ) 10、纯虚函数可以有函数定义。 ( )

四、分析程序,给出运行结果。(8分*2=16分) 1、 #include class A { public: A() { 注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第5页

cout<<″调用构造函数″

运行结果为:

2、 #include 注:1. 命题纸上一般不留答题位置,试题请用小四、宋体打印且不出框。 2. 命题教师和审题教师姓名应在试卷存档时填写。 共8页 第6页

#include #include class TAnimal { private: char m_strName[10]; public: virtual void Roar() {cout<<"animal roar!"

相关文档
最新文档