【计算机类职业资格】国家计算机二级(C++)79及答案解析.doc
《【计算机类职业资格】国家计算机二级(C++)79及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家计算机二级(C++)79及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、国家计算机二级(C+)79 及答案解析(总分:96.00,做题时间:120 分钟)一、选择题(每小题 2分,共 70分) 下列各(总题数:35,分数:70.00)1.以下不能正确计算代数式?sin2(?)值的 C语言表达式是_。 (分数:2.00)A.1/3*sin(1/2)*sin(1/2)B.sin(0.5)*sin(0.5)/3C.pow(sin(0.5),2)/3D.1/3.0*pow(sin(1.0/2),2)2.下面程序的运行结果是( )。 #ncludeiostream.h int fun(inta,int n) int result=1; for(int i=1;in;+) r
2、esult=result*ai; return result; void main( ) int a3 =3,4,5; coutfun(a,3)endl; (分数:2.00)A.2B.0C.-2D.13.下列情况中,不会调用拷贝构造函数的是【 】(分数:2.00)A.用一个对象去初始化同一类的另一个新对象时B.将类的一个对象赋值给该类的另一个对象时C.函数的形参是类的对象,调用函数进行形参和实参结合时D.函数的返回值是类的对象,函数执行返回调用时4.有如下类定义: class MyBase int k; public; MyBase(int n=0):k(n) int value()const
3、return k; ; class MyDerived; MyBase int j; public; MyDerived(int i): j(i) int getK()const return k; int gutj()constreturn j; ; 编译时发现有一处语法错误,对这个错误最佳准确的描述是(分数:2.00)A.函数 getK 试图访问基类的私有成员变量 KB.在类 MyDerived 的定义中,基类名 MyBase 前缺少关键字 public、protected 或 privateC.类 MyDerived 缺少一个无参的构造函数D.类 MyDerived 的构造的数没有对基数
4、数据成员 K 进行初始化5.设 fp为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof(fp)的返回值为_。 (分数:2.00)A.EOFB.非 0 值C.0D.NULL6.下面程序中对一维坐标点类 Point进行运算符重载 #include using namespace std; class Point public: Point(int val)x=val; Point p-next=r;r-next=q;B.p-next=r; q-next=r-next;r-next=q;C.q-next=r-next;r-next=q;p-next=r;D.r-next=q;p-next
5、=r;q-next=r-next;20.以下程序中循环体总的执行次数是( )。 int i,j; for(i=6;i1;i-) for(j=0;ji;j+) (分数:2.00)A.20B.261C.15D.2521.以下程序的输出结果是( )。 #includeiostreamh voidmain( ) charx=040; cout(x1); (分数:2.00)A.并运算B.交运算C.差运算D.积运算22.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是( )。(分数:2.00)A.一元成员运算符B.二元成员运算符C.一元友元运算符D.选项 B)和选项 C)都可能23.下列语句
6、中,错误的是【 】(分数:2.00)A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*const point;24.关于友元,下列说法错误的是【 】(分数:2.00)A.如果类 A是类 B的友元,那么类 B也是类 A的友元B.如果函数 fun()被说明为类 A的友元,那么在 fun()中可以访问类 A的私有成员C.友元关系不能被继承D.如果类 A是类 B的友元,那么类 A的所有成员函数都是类 B的友元函数25.数字字符 0 的 ASCII 值为 48,若有以下程序 main() char a=
7、1,b=2 ; printf(“%c,“,b+); printf(“%d/n“,b-a); 程序运行后的输出结果是_。 (分数:2.00)A.3,2B.50,2C.2,2D.2,5026.下列符号中能够作为 C+标识符的是(分数:2.00)A.constB.2aC.-shapeD.-count27.下列程序的输出结果是( )。 #include“ iostream“ using namespace std; int Max(int a,int b) if(a b) else return a; else retum b; void main( ) int m,n; m=10,n=5; int
8、max=Max(m,n); cout max end1; (分数:2.00)A.单项索引文件B.复合索引文件C.结构化复合索引文件D.非结构化复合索引文件28.有如下说明 int a 10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为 9 的表达式是_。(分数:2.00)A.*p+9B.*(p+8)C.*p+=9D.p+729.有以下程序 main() int a32=0,(*ptr)2,i,j; for(i=0;i,则输出结果是_。(分数:2.00)A.产生错误信息B.1 0 2 0 0 0C.1 2 2 0 0 0D.1 0 2 0 3 030.下列程序的运行结果为( )
9、。 #includeiostreamh void main( ) int a=2; int b=a+1; cout a/b endl; (分数:2.00)A.0.66667B.0C.0.7D.0.6666666631.下列程序的运行结果为( )。 #includeiostream.h template class FF TT al,a2,a3; public: FF(TT b1,TT b2,TT b3)a1=b1;a2=b2;a3=b3; TT Sum( )return al+a2+a3; void main( ) FFx(int(1.1),2,3),y(int(4.2),5,6); cout
10、next=r-next; p-next=r;r-next=q;B.p-next=r; q-next=r-next;r-next=q;C.q-next=r-next;r-next=q;p-next=r;D.r-next=q;p-next=r;q-next=r-next; 解析:选项 D 中首先将 q 赋给 r-next,也就是将结点 q 的地址存放在结点 r 的指针域中;接着将 r 赋给 p-next, 也就是将结点 r 的地址存放在结点 p 的指针域中,此时完成了 q 和 r 所指结点的交换。q-next=r-next 的目 的是想将 q 的指针域指向下一个结点的数据地址,但由于一开始执行了
11、r-next= q,即已将 r 的指针域中存 放了 q 结点的地址,所以再做操作“q-next=r-next”就相当于将 q 指向了其本身,也就是和下一个结点断开了,所以选项 D 操作错误。20.以下程序中循环体总的执行次数是( )。 int i,j; for(i=6;i1;i-) for(j=0;ji;j+) (分数:2.00)A.20 B.261C.15D.25解析:本题中第 1个 for循环执行 5次后结束,第 2个 for循环执行 5次。第 2个 for循环中第 1次执行了 6次,第 2次执行了 5次,第 3次执行了 4次,第 4次执行了 3次,第 5次执行了 2次,共 20次。21.
12、以下程序的输出结果是( )。 #includeiostreamh voidmain( ) charx=040; cout(x1); (分数:2.00)A.并运算B.交运算C.差运算 D.积运算解析: 此题考查了窗体的 KeyPress事件过程;在默认情况下控件的键盘事件优先于窗体的键盘事件,在此题中只有窗体了。窗体的 KeyPress事件的格式为: Private Sub Form _ KeyPress(KeyAscii As Integer) End Sub KeyAscii=13 为回车键,所以按下回车键就执行条件语句,输出结果为 12 1(竖排)。 22.在重载一个运算符时,如果其参数表
13、中有一个参数,则说明该运算符是( )。(分数:2.00)A.一元成员运算符B.二元成员运算符C.一元友元运算符D.选项 B)和选项 C)都可能 解析:C+语言中用成员函数重载时,重载一目运算符没有参数,重载二目运算符要有一个参数。 23.下列语句中,错误的是【 】(分数:2.00)A.const int buffer=256;B.const double*point;C.int const buffer=256;D.double*const point; 解析:const 关键字不仅可以修饰类对象本身,也可以修饰类对象的成员函数和数据成员,分别称为常对象、常成员函数和常数据成员。24.关于友元
14、,下列说法错误的是【 】(分数:2.00)A.如果类 A是类 B的友元,那么类 B也是类 A的友元 B.如果函数 fun()被说明为类 A的友元,那么在 fun()中可以访问类 A的私有成员C.友元关系不能被继承D.如果类 A是类 B的友元,那么类 A的所有成员函数都是类 B的友元函数解析:本题考核友元类和友元函数。友元关系是单向的,并且只在两个类之间有效。即使类 X是类 Y的友元,类 Y是否是类 X的友元也要看类 X中是否有相应的声明。即友元关系不具有交换性,所以 A选项的说法是错误的。类的友元函数可以直接访问该类的所有成员;类 A是类 B的友元类,那么类 A的所有成员函数都是类 B的友元函
15、数。25.数字字符 0 的 ASCII 值为 48,若有以下程序 main() char a=1,b=2 ; printf(“%c,“,b+); printf(“%d/n“,b-a); 程序运行后的输出结果是_。 (分数:2.00)A.3,2B.50,2C.2,2 D.2,50解析:执行语句“printf(“%c,“,b+);”后, b 的值变成字符 3,执行“printf(“%d/n“,b-a);”,即3-1。26.下列符号中能够作为 C+标识符的是(分数:2.00)A.constB.2aC.-shape D.-count解析:作为标识符必须满足以下规则:所有标识符必须由一个字母(az,AZ
16、)或下划线“_”开头;标识符的其它部分可以用字母、下划线或数字(09)组成;大小写字母表示不同意义,即代表不同的标识符;标识符只有前 32个字符有效;标识符不能使用关键字。count 是设备保留字不能作为标识符。27.下列程序的输出结果是( )。 #include“ iostream“ using namespace std; int Max(int a,int b) if(a b) else return a; else retum b; void main( ) int m,n; m=10,n=5; int max=Max(m,n); cout max end1; (分数:2.00)A.单
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 C79 答案 解析 DOC
