欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    [计算机类试卷]国家二级(C++)机试模拟试卷134及答案与解析.doc

    • 资源ID:502405       资源大小:88KB        全文页数:31页
    • 资源格式: DOC        下载积分:2000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要2000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [计算机类试卷]国家二级(C++)机试模拟试卷134及答案与解析.doc

    1、国家二级( C+)机试模拟试卷 134及答案与解析 一、选择题 1 下列数据结构中,属于非线性结构的是 ( )。 ( A)循环队列 ( B)带链队列 ( C)二叉树 ( D)带链栈 2 下列数据结构中,能够按照 “先进后出 ”原则存取数据的是 ( )。 ( A)循环队列 ( B)栈 ( C)队列 ( D)二叉树 3 对于循环队列,下列叙述中正确的是 ( )。 ( A)队头指针是固定不变的 ( B)队头指针一定大于队尾指针 ( C)队头指针一定小于队尾指针 ( D)队头指针可以大于队尾指针 ,也可以小于队尾指针 4 算法的空间复杂度是指 ( )。 ( A)算法在执行过程中所需要的计算机存储空间

    2、( B)算法所处理的数据量 ( C)算法程序中的语句或指令条数 ( D)算法在执行过程中所需要的临时工作单元数 5 软件设计中划分模块的一个准则是 ( )。 ( A)低内聚低耦合 ( B)高内聚低耦合 ( C)低内聚高耦合 ( D)高内聚高耦合 6 下列选项中不属于结构化程序设计原则的是 ( )。 ( A)可封装 ( B)自顶向下 ( C)模块化 ( D)逐步求精 7 软件详细 设计产生的图如下: 该图是 ( )。 ( A) N-S图 ( B) PAD图 ( C)程序流程图 ( D) E-R图 8 数据库管理系统是 ( )。 ( A)操作系统的一部分 ( B)在操作系统支持下的系统软件 ( C

    3、)一种编译系统 ( D)一种操作系统 9 在 E-R图中,用来表示实体联系的图形是 ( )。 ( A)椭圆形 ( B)矩形 ( C)菱形 ( D)三角形 10 有三个关系 R, S和 T如下:其中关系 T由关系 R和 S通过某种操作得到,该操作为 ( )。 ( A)选择 ( B)投影 ( C)交 ( D)并 11 下列符号中可以用做 C+标识符的是 ( )。 ( A) _radius ( B) foo bar ( C) else ( D) 3room 12 下列各组类型声明符中,含义相同的一组是 ( )。 ( A) unsigned long int和 long ( B) signed sho

    4、rt int和 short ( C) unsigned short和 short ( D) short int和 int 13 必须用一对大括号括起来的程序段是 ( )。 ( A) switch语句中的 case标号语句 ( B) if语句的分支 ( C)循环语句的循环体 ( D)函数的函数体 14 语句 int*p=&k;定义了指针 p,与这个语句等效的语句序列是 ( )。 ( A) int*p; p=&k; ( B) int*p; p=k; ( C) int*p; *p=&k; ( D) int*p; *p=k; 15 执行下列语句段后,输出字符 “*”的个数是 ( )。 for(int

    5、i=50; i1; i-=2)cout using namespaee std; class CD public: CD()cout using namespaee std; class MyClass public: MyClass()+count; MyClass()- count; static int getCount()retum count; private: static int count; ; int MyClass: count=0: int main() MyClass obj; eout using namespaee std; class MyClass public

    6、: MyClass(int x): val(x) void Print()eonsteout using namespace std; class Part public: Part(int x: 0): val(x)cout using namespace std; class Base public: Base(int x=0)cout using namespace std; class Base public: void output()coutoutput(); ptr-Print(); delete ptr; return 0; 执行这个程序的输出结果是 ( )。 ( A) 1B

    7、( B) 1D ( C) 2B ( D) 2D 36 有如下程序: #include using namespace std; class B public: virtual void show()coutshow(); void flun2(B &ref)ref show(); void fun3(B b)b show(); int main() B b, *p=new D; D d; fun1(P); fun2(b); fun3(d); delete p; return 0; 执行这个程序的输出结果是 ( )。 ( A) BBB ( B) BBD ( C) DBB ( D) DBD 37

    8、C+中的模板包括 ( )。 ( A)对象模板和函数模板 ( B)对象模板和类模板 ( C)函数模板和类模板 ( D)变量模板和对象模板 38 下列关于类模板的模板参数的叙述中,错误的是 ( )。 ( A)模板参数可以作为数据成员的类型 ( B)模板参数可以作为成员函数的返回类型 ( C)模板参数可以作为成员函数的参数类型 ( D)模板参数不能作为成员函数的局部变量的类型 39 下列关于 C+预定义流对象的叙述中,正确的是 ( )。 ( A) cin是 C+预定义的标准输入流对象 ( B) cin是 C+预定义的标准输入流类 ( C) cout是 C+预定义的标准输入流对象 ( D) cout是

    9、 C+预定义的标准输入流类 40 有如下语句序列: char str10; cinstr; 当从键盘输入 “I love this game”时, str中的字符串是 ( )。 ( A) “I love this game” ( B) “I love thi” ( C) “I love” ( D) “I” 二、基本操作题 41 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,此工程中含有一个源程序文件 proj1 cpp。其中位于每个注释 “ ERROR *found*”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor cal

    10、led The value is 10 Copy constructor called The value is 10 Destructor called Destructor called 注意:只修改注释 “ ERROR *found*”的下一行语句,不要改动程序中的其他内容。 proj1 cpp #include using namespace std; class MyClass public: ERROR*found* MyClass(int i) value=i; cout using namespace std; class Date 日期类 int year, month, d

    11、ay;年、月、日 public: Date(int year, int month, int day): year(year), month(month), day(day) int getYear()constreturn year; int getMonth()constreturn month; int getDay()constreturn day; ; class Person 人员类 char name14;姓名 bool is_male;性别,为 true时表示男性 Date birth_date:出生日期 public: Person(char * name, bool iS

    12、male, Date birth_date) *found* : _ strcpy(this-name, name); const char木 getName()constreturn name; bool isMale()constreturn is_male; Date getBirthdate()constreturn birth_date; 利用 strcmp()函数比较姓名,返回一个正数、 0或负数,分别表示大于、等于、小于 int compareName(const Person&p)const *found* _ void show() couti) Person p=psm;

    13、psm=psi; psi=p; int main() Person staff= Person(张三 , true, Date(1978, 4, 20), Person(王五 , false, Date(1965, 8, 3), Person(杨六 , false, Date(1965, 9, 5), Person(李四 , true, Date(1973, 5, 30) ; const int size=sizeof(staff) sizeof(staff0); int i; cout #include #include using namespace std; class doe priv

    14、ate: char*str;文本字符串首地址 int length;文本字符个数 public: 构造函数,读取文件内容,用于初始化新对象, filename是文件名字符串首地址 doe(char*filename); void reverse();将字符序列反转 doe(); void writeToFile(char*filename); ; doe: doe(char*filename) ifstream myFile(filename); int len=1001, tmp; str=new charlen; length=0; while(tmp=myFile get()!=EOF)

    15、 strlength+=tmp; strlength= 0; myFile close(); void doe: reverse() 将数组 str中的 length个字符中的第一个字符与最后一个字符交换,第二个字符与倒数第二个 字符交换 *333* *666* doe: doe() deletestr; void doe: writeToFile(char*filename) ofstream outFile(filename); outFileoutput后,会执行基类的 output函数,输出 1,由于 Print是虚函数,所以 ptr-Print()会执行派生类的 Print,即输出

    16、D,所以本题答案为 B。 36 【正确答案】 C 【试题解析】 在某基类中声明为 vinual并在一个或多个派生类中被重新定义的成员函数,本题中定义类 B的对象 h、对象指针 *p=flew D以及类 D的对象 cl;执行 funl会调用派生类的 show函数,因为 show函数为虚函数,而调用 fun2、 fun3仍然为基类的 show函数,所以本题答案为 C。 37 【正确答案】 C 【试题解析】 本题考查函数模板和类模板,所以答案为 C。 38 【正确答案】 D 【试题解析】 本题考查类模板的概念和定义,模板参数可以作为成员函数的局部变量的类型。 39 【正确答案】 A 【试题解析】 c

    17、in是 C+预定义的标准输入流对象, count是 C+预定义的标准输出流对象。 40 【正确答案】 D 【试题解析】 cin是 C+预定义的标准输入流对象, cin朋来接收字符串时,遇“空格 ”、 “TAB”、 “回车 ”时都会结束。所以本题答案为 D。 二、基本操作题 41 【正确答案】 (1)MyClass(int i=10) (2)MyClass(const MyClass&p) (3) MyClass() 【试题解析】 (1)考查构造函数参数默认值,题目要求输出语句: The value is 10,从主函数中可以看出, obj1并没有初始化,但是 obj1调用蹦 nt()函数时它的

    18、值为 10,由此可知构造函数的形参有默认值,且值为 10,因此得出语句MyClass(int i=10)。 (2)主要考查考生对复制构造函数的掌握,复制构造函数的形参都为 引用,同时为了不改变形参的值要加上 const,因此得出语句 MyClass(const MyClass&p)。 (3)主要考查考生对析构函数的掌握,析构函数和构造函数一样,前面不能添加任何类型,要把 void去掉。 三、简单应用题 42 【正确答案】 (1)is_male(is_male), birth-date(birth_date) (2)retum strcmp(name, p getName(); (3)name,

    19、 name);可知,要使用成员列表初始化的成员为 is_male和 binh_date。 (2)主要考查考生对 strcmp()函数的掌握,先看程序对该函数的功能要求:利用strcmp()函数比较姓名,返回一个正数、 0或负数,分别表示大于、等于、小于。因为 strcmp()函数的功能是比较字符串大小,因此可以直接被 return语句调用:retum strcmp(name, p get-Name();。 (3)主 要考查考生对成员函数的掌握,程序的注释为:显示出生月,由此可以知道这里要输出出生月份,直接调用函数 getMonth()即可。 四、综合应用题 43 【正确答案】 int i, j;定义两个整数临时变量 i j for(i=0, j=length-1; ij; i+, j-) char temp=stri; 把 Stri中的值保存在临时变量 temp stri =strj; 把 Strj值赋给 Stri,实现字符前后替换 strj=temp; 把保存在临时变量 temp中的值再赋值给 Strj


    注意事项

    本文([计算机类试卷]国家二级(C++)机试模拟试卷134及答案与解析.doc)为本站会员(eveningprove235)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开