国家二级C++机试(运算符重载、C++流)模拟试卷3(题后含答案及解析)

国家二级C++机试(运算符重载、C++流)模拟试卷3 (题后含答案及解析)

题型有:1. 选择题

选择题

1. 通过运算符重载,可以改变运算符原有的( )。

A.操作数类型

B.操作数个数

C.优先级

D.结合性

正确答案:A

解析:此题考查的是运算符重载。运算符重载具有保持其原有的操作数个数、优先级、语法结构和结合性不变的特性。故本题选项A正确。 知识模块:运算符重载

2. 下列有关运算符重载的叙述中,正确的是( )。

A.运算符重载是多态性的一种表现

B.C++中可以通过运算符重载创造新的运算符

C.C++中所有运算符都可以作为非成员函数重载

D.重载运算符时可以改变基结合性

正确答案:A

解析:此题考查的是运算符重载。C++中运算符重载是多态性的一种表现:运算符重载是针对C++原有运算符进行的,不可能通过重载创造出新的运算符;除了“.”、“.*”、“->*”、“::”、“?:”这五个运算符外,其它运算符都可以重载;但“=”“[]”“->”及所有的类型转换运算符只能作为成员函数重载,运算符重载不可改变其结合性、操作数个数和优先级。 知识模块:运算符重载

3. 下列关于运算符函数的描述中,错误的是( )。

A.运算符函数的名称总是以operator为前缀

B.运算符函数的参数可以是对象

C.运算符函数只能定义为类的成员函数

D.在表达式中使用重载的运算符相当于调用运算符重载函数

正确答案:C

解析:C++把重载的运算符视为特殊的函数,称为运算符函数。编译系统能够依据使用运算符的不同环境,即参数(操作数)的数量或类型的差异,区分同一运算符的不同含义。运算符函数作为非成员函数时,所有的操作数必须出现在参数表中。 知识模块:运算符重载

4. 下列关于运算符重载的叙述中,正确的是( )。

A.通过运算符重载机制可以为C++语言扩充新的运算符

B.运算符重载的作用是使已有的运算符作用于类的对象

C.重载运算符的操作数类型可以全部为基本类型

D.所有运算符都可以被重载

正确答案:B

解析:运算符重载就是赋予已有的运算符多重含义。通过重新定义运算符,使它能够用于特定类的对象执行特定的功能,这便增强了C++语言的扩充能力。运算符重载要注意以下3点:①不能重载的运算符包括::,.,.*,?:②必须重载为成员函数的运算符包括[],( ),->,=;③在类成员函数中重载运算符是不允许返回引用的,会出现“返回局部变量的地址”警告。 知识模块:运算符重载

5. 在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是( )。

A.operator+有两个参数,operator*有两个参数

B.operator+有两个参数,operator*有一个参数

C.operator+有一个参数,operator*有两个参数

D.operator+有一个参数,operator*有一个参数

正确答案:C

解析:此题考查的是运算符的重载。运算符可重载成员函数,也可重载为友元函数。当重载为成员函数时,运算符重载函数的形参个数要比运算符操作数的个数少一个;当重载为友元函数时,其参数个数应与操作数的个数相同。 知识模块:运算符重载

6. 下面程序中对一维坐标点类Point进行运算符重载#include<iostream>using namespace std;class Point{public:Point(int val){x=val;}Point&

operator++( ){x++;return *this;}Point operator++(int){Point old=*this;++(*this);return old;}Int GetX( ) const{return x;}private:int x;};int

main( ){Point a(10);cout<<(++a).GetX( );cout<<a++.GetX( );return

0;}编译和运行情况是( )。

A.运行时输出1011

B.运行时输出1111

C.运行时输出1112

D.编译有错

正确答案:B

解析:此题考查的是重载增l运算符“++”。此题中,Point&operator++( )重载的是前缀形式,而Point operator++(int)重载的是后缀形式。所以主函数中第1条输出语句输出11,此时a.x的值为11;第2条输出语句,首先创建了一个Point对象old保存自身,然后通过语句++(*this);调用前缀++的重载函数,因为

返回值是改变前保存的old对象,故仍输出11。 知识模块:运算符重载

7. 已知Value是一个类,Value是Value的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是( )。

A.Value operator+(Value v,int i);

B.Value operator+(Value v=value;int i);

C.Value operator+(Value vint i=0);

D.Value operator+(Value v=value,int i=0);

正确答案:B

解析:此题考查的是重载加法运算符“+”。“+”是二元运算符,其第一操作数是对象本身,i为第二操作数,由此可知选项B正确。 知识模块:运算符重载

8. 已知表达式++a中的“++”是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为( )。

A.a.operator++(1)

B.operator++(a)

C.operator++(a,1)

D.a.operator++( )

正确答案:C

解析:本题主要是对运算符重载的考查。“++”实现增加1,所以除了8之外的另一个参数默认为1。 知识模块:运算符重载

9. 将前缀运算符“--”重载为非成员函数,下列原型中,能正确用于类中说明的是( )。

A.Decr& operator--(int);

B.Decr operator--(Decr&,int);

C.friend Decr& operator--(Decr&);

D.friend Decr operator--(Decr&,int);

正确答案:C

解析:因为要作为非成员函数重载,所以加friend,作为前缀操作,其返回的操作结果是对该变量的引用,所以类型为Deer&,操作数出现在参数表中,应声明为引用,即Deer&。 知识模块:运算符重载

10. 若在表达式y/x中,”/”是作为成员函数重载的运算符,则该表达式还可以表示为( )。

A.x.operator/(y)

B.operator/(x,y)

C.y.operator/(x)

D.operator/(y,x)

正确答案:C

解析:运算符函数的函数名是由运算符前加关键字operator构成的。所以当“/”作为运算符重载后,其格式为operator/。所以其作为成员函数调用时的格式为y.operator/(x)。 知识模块:运算符重载

11. 若要对类BigNumber中重载的类型转换运算符long进行声明,下列选项中正确的是( )。

A.operator long( ) const;

B.operator long(bigNumber);

C.long operator long( ) const;

D.long operator long(BigNumber);

正确答案:A

解析:在重载类型转换符时,由于运算符本身已经表示出返回值类型,因此不需要返回值类型的声明。 知识模块:运算符重载

12. 有如下类定义class MyClasspublic:______________Private:int data;};若要为MyClass类重载流输入运算符>>,使得程序中可以“cin>>obj;”形式输入MyClass类的对象obi,则横线处的声明语句应为( )。

A.friend istream& operator>>(istream& is,MyClass& a);

B.friend istream& operator>>(istream& is,MyClass a);

C.istream& operator>>(istream& is,MyClass& a);

D.istream& operator>>(istream& is,MyClass a);

正确答案:A

解析:C++的输入运算符>>作为非类成员函数重载。在一个类中,可将输入运算符>>声明为友元函数,在类MyClass重载输入运算符>>的形式如选项A)所示。 知识模块:运算符重载

13. 已知类MyCiock中未显式定义构造函数,并重载了加法运算符,使得下面的语句序列能够正确执行:MyClock c1,c2;//……c2=c1+10;由此可知:为类MyClock重载的“+”运算符函数的声明是( )。

A.friend MyClock operator+(MyClock,int);

B.friend MyClock operator+(MyClock,MyClock);

C.friend MyClock operator+(int,MyClock);

D.MyClock operator+(MyClock);

正确答案:A

解析:由表达式c2=c1+10可知,在对“+”进行重载时,第一操作数是MyCloek类的对象,而第二操作数是一个整型数据。 知识模块:运算符重载

14. 若要重载+、=、<<、==和口运算符,则必须作为类成员重载的运算符是( )。

A.+和=

合集下载

国家二级C语言机试模拟试卷124_真题(含答案与解析)-交互

国家二级C语言机试模拟试卷124_真题(含答案与解析)-交互

国家二级(C语言)机试模拟试卷124

(总分86, 做题时间90分钟)

1. 选择题

1.

下列数据结构中,能用二分法进行查找的是( )。

SSS_SINGLE_SEL

A 无序线性表

B 线性链表

C 二叉链表

D 顺序存储的有序表

分值: 2

答案:D

解析:二分法查找只适用于顺序存储的有序表,表中的元素按值从小到大排列。

2.

下列叙述中,不属于设计准则的是( )。

SSS_SINGLE_SEL

A 提高模块独立性

B 使模块的作用域在该模块的控制域中

C 设计成多入口、多出口模块

D 设计功能可预测的模块

分值: 2

答案:C

解析:大量软件设计表明,以下的设计准则是可以借鉴为设计的指导和对软件结构图进行优化,这些准则是:提高模块独立性;模块规模适中:深度、宽度、扇出和扇入适当;使模块的作用域在该模块的控制域中;应减少模块的接口和界面的复杂性;设计成单入口、单出口的模块;设计功能可预测的馍块。

3.

下列队列的描述中,正确的是( )。

SSS_SINGLE_SEL

A 队列属于非线性表

B 队列在队尾删除数据

C 队列按“先进后出”进行数据操作

D 队列按“先进先出”进行数据操作

分值: 2

答案:D

解析:队列是只允许在一端删除,在另一端插入的顺序表,允许删除的一端叫做队头,允许插入的一端叫做队尾。队列的操作数是依据先进先出的原则进行的。因此队列亦称作先进先出的线性表,或后进后出的线性表。

4.

对下列二叉树进行前序遍历的结果为( )。

SSS_SINGLE_SEL

A ABCDEFGH

B ABDGEHCF

C GDBEHACF

D GDHEBFCA

分值: 2

答案:B

解析:遍历就是不重复地访问二叉树的所有结点。二叉树遍历的方法有3种:前序遍历、中序遍历和后序遍历。记住3种遍历的顺序:①前序,访问根→按前序遍历左子树→按前序遍历右子树;②中序,按中序遍历左子树→访问根→按中序遍历右子树;③后序,按后序遍历左子树→按后序遍历右子树→访问根。所以对该二叉树的中序遍历结果为ABDGEHCF。

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷13

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷13

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷13

(总分:56.00,做题时间:90分钟)

一、 选择题(总题数:28,分数:56.00)

1.有以下定义和语句: struct workers {int num;char name[20];char c; struct {int day;int month;int year;}s;}; struct workers w,*pw; pw:&w; 能给w中year成员赋1980的语句是

(分数:2.00)

A.w.year=1980;

B.pw->year=1980;

C.w.s.year=1 980; √

D.*pw.year=1980;

解析:解析:本题主要考查的是结构体变量的嵌套定义,也就是说一个结构体变量也可以是一个结构体。在本题中works这个结构体中包含了结构体s。所以对结构体变量w中year成员的引用是w.s.year。

2.有以下程序 #include struct tt {int x;struct tt *y;)*p; struct tt a[4]={20,a+1,15,a+2,30,a+3,17,a}; main() {int i; p=a; for(i=1;i<=2;i++){printf("%d,",p->x);p=p->y;} }

程序的运行结果是

(分数:2.00)

A.20,15, √

B.30,17

C.15,30,

D.20,30,

解析:解析:程序定义了结构体类型tt,其成员包括一个整型数据x和指向其自身结构的指针变量y。程序在定义结构体数组a的同时对其进行了初始化。其元素a[0]的成员y被赋值为元素a[1]的地址,a[1].y被赋值为a[2]的地址,a[2].y被赋予a[3]的地址,a[3].y被赋予a[0]的地址。这就形成了一个单向的循环链表,每个元素的指针成员都指向下一个元素的地址。在主函数中,通过一个for循环语句,输出该链表前2个节点数值成员的值,即a[0].x和a[1].x。

国家二级C语言(C语言基础知识)机试模拟试卷9(题后含答案及解析)

国家二级C语言(C语言基础知识)机试模拟试卷9(题后含答案及解析)

国家二级C语言(C语言基础知识)机试模拟试卷9 (题后含答案及解析)

题型有:1. 选择题

选择题

1. 下列叙述中错误的是

A.C程序可以由多个程序文件组成

B.一个C语言程序只能实现一种算法

C.C程序可以由一个或多个函数组成

D.一个C函数可以单独作为一个C程序文件存在

正确答案:B

解析:算法是指为解决某个特定问题而采取的确定且有限的步骤。在C语言中一个算法是用函数来实现的。一个C语言源程序由许多函数组成,这些函数都是根据实际任务,确定具体的算法,由用户自己编写。C语言源程序可以放在不同的文件中,同一个源程序中的函数也可放在不同的文件中,所以一个C语言程序可以实现多种算法。 知识模块:C语言基础知识

2. 关于算法,以下叙述中错误的是

A.同一个算法对于相同的输入必能得出相同的结果

B.一个算法对于某个输入的循环次数是可以事先估计出来的

C.某个算法可能会没有输入

D.任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕

正确答案:D

解析:算法和程序不同,算法满足以下特性:算法有5个特性,即有穷性、确定性、可行性、有零个或多个输入以及有一个或多个输出。算法的确定性是指算法中的每一个步骤都必须有明确定义,不允许有模棱两可的解释,也不允许有多义性,因此对于相同的输入必有相同的输出,同时可以事先估计算法的时间复杂度,对于有循环的算法,以循环体内的循环次数来估测时间复杂度。 知识模块:C语言基础知识

3. 有以下程序,在VC6平台上编译运行,程序运行后的输出结果是#include<stdio.h>main( ){int s,t,A=10;double B=6:s=sizeof(A);t=sizeof(B);printf(“%d,%d\n”,s,t);}

A.4,4

B.2,4

C.4,8

D.10,6

正确答案:C

解析:关键字sizeof用于测试不同类型变量所占的内存空间,返回所占的字节数。在VC编译系统中,整型燹量占用4个字节的内存空间,而双精度型变量占用8个字节的内存空间。 知识模块:C语言基础知识

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷14

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷14

国家二级C语言机试(结构体、共用体、位运算及文件操作)模拟试卷14

(总分:56.00,做题时间:90分钟)

一、 选择题(总题数:28,分数:56.00)

1.有以下程序 #include main() { int a=5,b=1,t; t=(a<

(分数:2.00)

A.11

B.6

C.21 √

D.1

解析:解析:本题考查位操作运算符。 “<<”是左移运算符,左移一位相当于乘2,“|”是按位或运算符。5序移两位相当于乘4,得到20,20的二进制数是00010100,和00000001进行按位或操作得到00010101,即十进制的21。

2.若变量已正确定义,则以下语句的输出结果是 s=32; s^=32; printf("%d",s);

(分数:2.00)

A.-1

B.1

C.32

D.0 √

解析:解析:“按位异或”运算的规则是:参与运算的两个运算数中相对应的二制位上,若数相同,则该位的结果为0;若数不同,则该位的结果为1。因为语句“s=32;s^=32;”相当于s与自身做按位异或运算,所以其结果等于0。

3.若有以下程序 main(){int c; c=10^5; printf("%d\n",c); } 则程序的输出结果是

(分数:2.00)

A.15 √

B.10000

C.5

D.105

解析:解析:按位异或(^)的运算规则是:参与运算的两个运算数中相对应的二进制位上,若数相同,则该位的结果为0;若数不同,该位的结果为1。整数10和5的二进制编码分别为1010和0101,异或结果为1111,其十进制数据位15。

4.若有以下程序 main(){int c; C=1315; printf("%d\n",c); } 则程序的输出结果是

(分数:2.00)

A.15

B.18

C.13 √

D.5

解析:解析:按位或(|)的运算规则是:参加运算的两个运算数中,只要两个相应的二进制位中一个为1,则该位的运算结果即为1:只有当两个相应位的数都为0时,该位的运算结果才为0。13的二进制位1101,5的二进制位0101,或运算的结果为1101,因此值为13。

国家二级C语言选择结构循环结构机试模拟试卷1_真题(含答案与解析)-交互

国家二级C语言选择结构循环结构机试模拟试卷1_真题(含答案与解析)-交互

国家二级C语言(选择结构、循环结构)机试模拟试卷1

(总分66, 做题时间90分钟)

1. 选择题

1.

下列选项中,当x为大于1的奇数时,值为0的表达式是( )。

SSS_SINGLE_SEL

A x%2==0

B x/2

C x%2!=0

D x%2==1

分值: 2

答案:A

解析:算术运算符的优先级高于关系运算符的优先级,所以当x为大于1的奇数时,A选项的值为假,即0。B选项的值为不定值,但绝对不是O。C选项的值为真,即1。D选项的值为真,即1。

2.

若a是数值类型,则逻辑表达式(a==1)‖(a!=1)的值是( )。

SSS_SINGLE_SEL

A 1

B 0

C 2

D 不知道a的值,不能确定

分值: 2

答案:A

解析:逻辑或“‖”要求只要两边的运算对象有一个非零,结果就为真。虽然不知道a的值,但是若a为l,则左边运算对象为1;若a的值不是l,则右边运算对象的值为1,所以总能保证一边非零。

3.

当变量e的值不为2、4、6时,值为“真”的表达式是( )。

SSS_SINGLE_SEL

A (c>=2&&e<=6)&&(c%2 1=1)

B (c==2)‖(c==4)‖(c==6)

C (c>=2&&c<=6)&&!(c%2)

D (c>=2&&c←6)‖(c!=3)lI(c!=5)

分值: 2

答案:D

解析:逻辑或运算符中只要有一个运算量为真,结果就是真,当c>=2&&c<=6条件不成立时,c的值肯定不是2、3、4、5、6,所以c!:3与c!:5均成立,所以D选项的结果一定为真。

4.

有以下程序: #include main() { int a=1,b=2,c=3,d=0;

if(a==1&&b++==2) if(b!=2‖c一!=3) prinff(“%d,%d,%d\n”,a,

b,c); else prinff(“%d,%d,%d\n”,a,b,c); else prinff(“%d,%d,%d\n”,a,b,c); } 程序的运行结果是( )。

国家二级C++机试模拟试卷153_真题-无答案

国家二级C++机试模拟试卷153_真题-无答案

国家二级(C++)机试模拟试卷153

(总分86,考试时间90分钟)

1. 选择题

1. 在关系代数运算中,有5种基本运算,它们是( )。

A. 并(∪)、差(—)、交(∩)、除(÷)和笛卡儿积(×)

B. 并(∪)、差(—)、交(∩)、投影(Ⅱ)和选择(σ)

C. 并(∪)、交(∩)、投影(Ⅱ)、选择(σ)和笛卡儿积(×)

D. 并(∪)、差(—)、投影(x)、选择(σ)和笛卡儿积(×)

2. 在数据库系统的组织结构中,下列( )映射把用户数据库与概念数据库联系了起来。

A. 外模式/模式 B. 内模式/外模式

C. 模式/内模式 D. 内模式/模式

3. 下列关于线性链表的描述中,正确的是( )。Ⅰ、只含有一个指针域来存放下一个元素地址Ⅱ、指针域中的指针用于指向该结点的前一个或后一个结点(即前件或后件)Ⅲ、结点由两部分组成:数据域和指针域。

A. 仅Ⅰ、Ⅱ B. 仅Ⅰ、Ⅲ

C. 仅Ⅱ、Ⅲ D. 全部

4. 下面关于数据库三级模式结构的叙述中,正确的是( )。

A. 内模式可以有多个,外模式和模式只有一个

B. 外模式可以有多个,内模式和模式只有一个

C. 内模式只有一个,模式和外模式可以有多个

D. 模式只有一个,外模式和内模式可以有多个

5. 设有关键码序列(66,13,51,76,81,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为( )。

A. 23, 13, 51, 57, 66, 26, 81, 69, 76

B. 13, 23, 26, 51, 57, 66, 81, 76, 69

C. 23, 13, 51, 57, 26, 66, 81, 69, 76

D. 23, 13, 51, 57, 81, 26, 66, 69, 76

6. 下列哪一条不属于数据库设计的任务?( )

国家二级(C++)笔试模拟试卷66(题后含答案及解析)

国家二级(C++)笔试模拟试卷66 (题后含答案及解析)

题型有:1. 选择题 2. 填空题

选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1. 以下内容不属于算法程序所占的存储空间的是( )。

A.算法程序所占的空间

B.输入的初始数据所占的存储空间

C.算法程序执行过程中所需要的额外空间

D.算法执行过程中所需要的存储空间

正确答案:D

解析:一个算法程序所占的存储空间包括算法程序所占的空间、输入的初始数据所占的存储空间以及算法程序执行过程中所需要的额外空间,而不是算法执行过程中所需要的存储空间。因此,答案为D。

2. 数据的存储结构是指( )。

A.数据所占的存储空间量

B.数据的逻辑结构在计算机中的表示

C.数据在计算机中的顺序存储方式

D.存储在外存中的数据

正确答案:B

解析:数据元素在计算机存储空间中的位置关系与它们的逻辑关系不一定是相同的,而且一般不可能相同。数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构,也称数据的物理结构。

3. 在一个长度为n的线性表中插入一个元素,最坏情况下需要移动的数据元素数目( )。

A.1

B.n

C.n+1

D.n/2

正确答案:B

解析:在一般情况下,要在第i个元素之前插入一个新元素时,首先是从最后一个元素开始,直到第i个元素之间共n-i+1个元素依次向后移动一个位置,移动结束后,第i个位置就被空出,然后将新元素插入到第i项。最坏情况指的是在线性表的第1个元素之前插入一个新元素,则需要移动表中所有的元素,答案为B。

4. 对于建立良好的程序设计风格,下面有关数据说明描述错误的是( )。

A.数据说明的次序规范化

B.说明语句中变量安排有序化

C.使用注释来说明复杂数据的结构

D.数据说明次序可以任意排列

正确答案:D

国家二级(C语言)机试历年真题试卷汇编18

国家二级(C语言)机试历年真题试卷汇编18

(总分:86.00,做题时间:90分钟)

一、 选择题(总题数:40,分数:80.00)

1.下列叙述中错误的是( )。

(分数:2.00)

A.算法的时问复杂度与算法所处理数据的存储结构有直接关系

B.算法的空间复杂度与算法所处理数据的存储结构有直接关系

C.算法的时间复杂度与空间复杂度有直接关系 √

D.算法的时间复杂度与算法程序执行的具体时间是不一致的

解析:解析:算法的时间复杂度是指执行算法所需要的计算工作量。数据的存储结构直接决定数据输入,而这会影响算法所执行的基本运算次数,A项正确。算法的空间复杂度是指执行这个算法所需要的内存空间,其中包括输入数据所占的存储空间,B项正确。而算法的时间复杂度与空间复杂度没有直接关系,C项错误。算法程序执行的具体时间受到所使用的计算机、程序设计语言以及算法实现过程中的许多细节所影响,而算法的时间复杂度与这些因素无关,所以是不一致的,D项正确。

2.在满足实体完整性约束的条件下( )。

(分数:2.00)

A.一个关系中应该有一个或多个候选关键字 √

B.一个关系中只能有一个候选关键字

C.一个关系中必须有多个候选关键字

D.一个关系中可以没有候选关键字

解析:解析:实体完整性约束要求关系的主键中属性值不能为空值,因此本题答案为A。

3.下面描述中,不属于软件危机表现的是( )。

(分数:2.00)

A.软件过程不规范 √

B.软件开发生产率低

C.软件质量难以控制

D.软件成本不断提高

解析:解析:软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。因此本题答案为A。

4.下列各项中不属于需求分析阶段任务的是( )。

(分数:2.00)

A.确定软件系统的功能需求

国家二级C语言机试C语言基础知识模拟试卷9_真题(含答案与解析)-交互

国家二级C语言机试(C语言基础知识)模拟试卷9

(总分60, 做题时间90分钟)

1. 选择题

1.

C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是

SSS_SINGLE_SEL

A 关键字可用作用户标识符,但失去原有含义

B 在标识符中大写字母和小写字母被认为是相同的字符

C 用户标识符可以由字母和数字任意顺序组成

D 预定义标识符可用作用户标识符,但失去原有含义

分值: 2

答案:D

解析:预定义标识符是C语言中的标识符,在C语言中也有特定的含义,如函数printf、scanf、sin等和编译预处理命令名(如define和include)。预定义标识符可以作为用户标识符使用,只是这样会失去系统规定的原义。

2.

以下叙述中错误的是

SSS_SINGLE_SEL

A 常量可以用一个符号名来代表

B 数值型常量有正值和负值的区分

C 常量是在程序运行过程中值不能被改变的量

D 定义符号常量必须用类型名来设定常量的类型

分值: 2

答案:D

解析:C语言中,常常用一个标识符来代表一个常量,称为符号常量。符号常量在使用之前要先定义,定义格式:#define<符号常量名>(常量) 其中,<符号常量名)用标识符,习惯上用大写字母,<常量>可以是数字常量,也可以是字符。

3.

与十进制数200等值的十六进制数为

SSS_SINGLE_SEL

A A8

B A4

C C8

D C4

分值: 2

答案:C

解析:本题考察了进制转换,十进制的数转换为十六进制规则:整数部分除以16取余数,将余数倒过来排列。

4.

以下选项中,合法的一组C语言数值常量是

SSS_SINGLE_SEL

A 12.0Xa23 4.5e0

B 028.5e-3-0xf

C .177 4e1.5 0abc

D 0x8A 10,000 3.e5

分值: 2

答案:A

解析:八进制数其开头必须是数字“0”,其数字包括0~7,而在选项B)中,028是错误的。浮点数据的指数形式表示常量中,C语言规定字母e或E之前必须要有数字,且e或E之后的指数必须为整数,而选项C)中4e1.5是错误的。在选项D)中,整型数据10,000的表示形式是错误的。

国家二级C语言机试选择题模拟试卷78_真题(含答案与解析)-交互

国家二级C语言机试(选择题)模拟试卷78

(总分80, 做题时间90分钟)

1. 选择题

1.

数据结构主要研究的是数据的逻辑结构、数据的运算和( )。

SSS_SINGLE_SEL

A 数据的方法

B 数据的存储结构

C 数据的对象

D 数据的逻辑存储

分值: 2

答案:B

解析:数据结构是研究数据元素及其之间的相互关系和数据运算的一门学科,它包含3个方面的内容,即数据的逻辑结构、存储结构和数据的运算。

2.

一棵二叉树的前序遍历结果是ABCEDF,中序遍历结果是CBAEDF,则其后序遍历的结果是( )。

SSS_SINGLE_SEL

A DBACEF

B CBEFDA

C FDAEBC

D DFABEC

分值: 2

答案:B

解析:由于该二叉树的前序遍历结果是ABCEDF,显然A结点为根结点,所以后序遍历时A结点是最后遍历的,其后序遍历的结果为CBEFDA。

3.

在数据处理中,其处理的最小单位是( )。

SSS_SINGLE_SEL

A 数据

B 数据项

C 数据结构

D 数据元素

分值: 2

答案:B

解析:数据元素是由多个数据项组成,数据是能够被计算机识别、存储和加工处理的信息载体,数据处理的最小单位是数据项。

4.

在数据库系统的内部结构体系中,索引属于 ( )。

SSS_SINGLE_SEL

A 模式

B 内模式

C 外模式

D 概念模式

分值: 2

答案:B

解析:内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上(如磁盘及磁盘操作)。

5.

以下( )不属于对象的基本特征。

SSS_SINGLE_SEL

A 继承性

B 封装性

C 分类性

D 多态性

分值: 2

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