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

上传人:赵齐羽 文档编号:502475 上传时间:2018-11-29 格式:DOC 页数:5 大小:29.50KB
下载 相关 举报
[计算机类试卷]国家二级(C++)机试模拟试卷28及答案与解析.doc_第1页
第1页 / 共5页
[计算机类试卷]国家二级(C++)机试模拟试卷28及答案与解析.doc_第2页
第2页 / 共5页
[计算机类试卷]国家二级(C++)机试模拟试卷28及答案与解析.doc_第3页
第3页 / 共5页
[计算机类试卷]国家二级(C++)机试模拟试卷28及答案与解析.doc_第4页
第4页 / 共5页
[计算机类试卷]国家二级(C++)机试模拟试卷28及答案与解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家二级( C+)机试模拟试卷 28及答案与解析 一、程序改错题( 30分) 0 使用 VC6打开考生文件夹下的工程 RevProj9。此工程包含一个源程序文件RevMain9.cpp。在该文件中,函数 fun()的功能是;将字符串 s中的小写字母都改为对应的大写字母,其他字符不变。例如,输入 “mT+gN”,则输出 “MT+GN”。 请改正程序中的错误,使它能得到正确结果。 注意,不要改动 main函数,不得删行或增行,也不得更改程序的结构。 源程序文件 RevMain9.cpp中的程序清单如下; /RevMain9.cpp #include iostream using namespace

2、 std; char* fun(char*s); int main() int i; char str81; cout “Please enter a string: “; cin str; cout “n The result is: n“ fun(str) end1; return 0; char *fun(char*s) int i; for(i=0; si; i+) /* * * * *FOUND* * * * * if(a =si)|(si: =z) /* * * * *FOUND * * * * * / si+=32; return s; 二、简单应用题( 40分) 0 请编写一个

3、函数 char *fun(char *s),其中 s代表一个字符串。函数 fun()的功能是将字符串 s的元素倒置。例如,输入为 “teacher”,则应输出 “rehcaet”。 注意:部分源程序已存在文件 PROC10.cpp中。 请勿修改主函数和其他函数中的任何内容,仅在函数 fun()的花括号中填写若干语句。 文件 PROC10.cpp的内容如下: /PROC10. cpp #include iostream #include string using namespace std; char *fun(char *s); int main ( ) char str81; cout “P

4、lease enter a string:n“; cin str; cout “The result is:“ fun(str); cout end1; return 0; char*fun(char*s) /* * * * * * * * * 三、综合应用题( 30分) 0 使用 VC6打开考生文件夹下的工程 MyProj8。此工程包含一个源程序文件MyMain8.cpp,该程序实现栈的入栈和出栈的操作。其中有两个类:一个是节点类node,它包含节点值和指向上一个节点的指针 prey;另一个类是栈类 stack,它包含栈的头指针 top。但类的定义并不完整。 请按要求完成下列操作,将类 Sa

5、mple的定义补充完成: 定义私有节点值 data,它是血型的数据,以及定义一个指向上一个节点的指针prev。请在注释 “/* *1* *”之后添加适当的语句。 完成构造函数 node(int d,node*n)的定义,使得私有成员 data和 prev分别初始化为 d和 n。请在注释 “/* *2* *”之后添加适当的语句。 完成类 stack的成员函数 push(int i)的类体内的定义。函数 push()实现入栈这个操作,即把形参 i压入栈中,那么此时应该创建 一个新的节点,并让这个节点的prev指针指向栈顶。请在注释 “/* *3 * *”之后添加适当的语句。 注意:除在指定位置添加

6、语句之外,请不要改动程序中的其他内容。 源程序文件 MyMain8.cpp清单如下: /MyMain 8.cpp #include iostream using namespace std; class stack; class node private: /* * 1 * * public: node(int d, node *n) /* * 2 * * friend class stack; ; class stack node *top; /栈头 public: stack() top=0; void push(int i) /* * 3 * * int pop() node*t=top; if(top) top=top- prev; int c=t- data; delete t; return c; return 0; ; int main() stack s; s.push(6); s.push(3); s.push(1); return 0; 国家二级( C+)机试模拟试卷 28答案与解析 一、程序改错题( 30分) 二、简单应用题( 40分) 三、综合应用题( 30分)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

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