【计算机类职业资格】二级C++分类模拟91及答案解析.doc

上传人:wealthynice100 文档编号:1324289 上传时间:2019-10-17 格式:DOC 页数:7 大小:72.50KB
下载 相关 举报
【计算机类职业资格】二级C++分类模拟91及答案解析.doc_第1页
第1页 / 共7页
【计算机类职业资格】二级C++分类模拟91及答案解析.doc_第2页
第2页 / 共7页
【计算机类职业资格】二级C++分类模拟91及答案解析.doc_第3页
第3页 / 共7页
【计算机类职业资格】二级C++分类模拟91及答案解析.doc_第4页
第4页 / 共7页
【计算机类职业资格】二级C++分类模拟91及答案解析.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、二级 C+分类模拟 91 及答案解析(总分:100.00,做题时间:90 分钟)一、程序改错题(总题数:1,分数:30.00)1.使用 VC6 打开 下的源程序文件 modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序运行后没有内存遗漏。可以在修改处增加或者删除一条语句。本程序完成输入两个字符串,分别存储到s1,s2 中。 注意:不要改动 main 函数,不能增行或删行,也不能更改程序的结构,错误的语句在/*error*的下面。 #include iostream.h void main() char* s1; char s21024; /*error* cin.getline

2、(s1,1024); (分数:30.00)_二、程序填空题(总题数:1,分数:30.00)2.使用 VC6 打开 下的源程序文件 modi2.cpp。请完成以下两个函数: (1)fun1(int n);求出 n 的阶乘,必须使用递归调用。 (2)fun2(int n);求出 n 的阶乘,不能使用递归调用。 如果 n 小于 1 则返回 0。 注意:请勿改动主函数 main 与其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。#include iostream. h /必须使用递归 int fun1 (int n) ; /不能使用递归 int fun2 (int n) voi

3、d main() int i; cout “请输入一个整数: “ endl; cin i; cout “输入数字的阶乘是: “ funl (i) endl; cout “输入数字阶乘是: “ fun2 (i) (分数:30.00)_三、程序设计题(总题数:1,分数:40.00)3.使用 VC6 打开 源程序文件 modi3.cpp。其中类 TestClass 用于把文件输出到屏幕,然后进行文件的分割。分割的方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。 此程序将 int.txt 文件中的内容输出到屏幕,并且将文件按照以上方式分割,存于文件 out1.txt 和out2

4、.txt 中。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)从输入文件中获得一个字符,并判断是否到文件结尾,如果到文件结尾,则退出循环。请在注释/*1*后添加适当的语句。 (2)把获得的输入文件的内容存储到 buf 中,并且用 len 记录下文件的长度。请在注释/*2*料后添加适当的语句。 (3)将输入文件的后一半内容存储在第二个文件中,请在注释/*3*后添加适当的语句。 (4)使用文件流对象打开输入文件 in.txt,请在注释/*4*后添加适当的语句。 注意:仅在函数指定位置添加语句,请勿改动主函数 main 与其他函数中的任何内容。 #includeiostream

5、.h #includefstream.h #includestdlib.h class TestClass public: TestClass(char* fileName) len = 0; fstream infile; infile.open(fileName, ios:in); char ch; /*1* while() cout ch; /*2* infile.close(); void split() fstream outfile1; fstream outfile2; outfile1.open(“out1.txt“,ios:out); outfile2.open(“out2.

6、txt“,ios:out); int i=0; for(i=0;ilen/2;i+) outfile1 (分数:40.00)_二级 C+分类模拟 91 答案解析(总分:100.00,做题时间:90 分钟)一、程序改错题(总题数:1,分数:30.00)1.使用 VC6 打开 下的源程序文件 modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序运行后没有内存遗漏。可以在修改处增加或者删除一条语句。本程序完成输入两个字符串,分别存储到s1,s2 中。 注意:不要改动 main 函数,不能增行或删行,也不能更改程序的结构,错误的语句在/*error*的下面。 #include iost

7、ream.h void main() char* s1; char s21024; /*error* cin.getline(s1,1024); (分数:30.00)_正确答案:()解析:(1)s1=new char1024; (2)deletes1; (3)删除“delete s2;”语句 答案考生文件夹 解析 本题是主要是处理程序运行后是否有内存遗漏的问题。对于这类问题主要是根据调试环境中的错误提示以及警告提示进行处理。 (1)s1 变量为指针变量,在使用前要对其分配空间,所以第 1 个标识下添加“s1=new char1024;”。 (2)为了防止内存空间的泄漏,指针变量使用后,要将其空

8、间释放,第二个标识下“deletes1;”。 (3)s2 是数组变量,空间是在使用前静态分配的,不是使用前动态分配的,所以使用后不用释放内存空间,这里应该删除“delete s2;”。二、程序填空题(总题数:1,分数:30.00)2.使用 VC6 打开 下的源程序文件 modi2.cpp。请完成以下两个函数: (1)fun1(int n);求出 n 的阶乘,必须使用递归调用。 (2)fun2(int n);求出 n 的阶乘,不能使用递归调用。 如果 n 小于 1 则返回 0。 注意:请勿改动主函数 main 与其他函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。#inclu

9、de iostream. h /必须使用递归 int fun1 (int n) ; /不能使用递归 int fun2 (int n) void main() int i; cout “请输入一个整数: “ endl; cin i; cout “输入数字的阶乘是: “ funl (i) endl; cout “输入数字阶乘是: “ fun2 (i) (分数:30.00)_正确答案:()解析:int fun1(int n) /使用递归计算阶乘 if(n=0) /n 小于等于 0,直接返回 0 return 0; if(n=1) /n 等于 1 直接返回 1 return 1; return n*f

10、un1(n-1); /n 大于等于 1,通过递归计算 n! ; /不使用递归计算阶乘 int fun2(int n) if(n=0) /n 小于 0,直接返回 0 return 0; int res=1; /初始化阶乘存放变量 res for(int i=1;i=n;i+) /通过循环计算 n! res*=i; return res; 答案考生文件夹 解析 (1)该程序功能是对阶乘的实现。其中,阶乘的计算公式定义为: 三、程序设计题(总题数:1,分数:40.00)3.使用 VC6 打开 源程序文件 modi3.cpp。其中类 TestClass 用于把文件输出到屏幕,然后进行文件的分割。分割的

11、方法如下:第一个文件的大小是文件的前一半,另外一个文件的大小是剩余部分。 此程序将 int.txt 文件中的内容输出到屏幕,并且将文件按照以上方式分割,存于文件 out1.txt 和out2.txt 中。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)从输入文件中获得一个字符,并判断是否到文件结尾,如果到文件结尾,则退出循环。请在注释/*1*后添加适当的语句。 (2)把获得的输入文件的内容存储到 buf 中,并且用 len 记录下文件的长度。请在注释/*2*料后添加适当的语句。 (3)将输入文件的后一半内容存储在第二个文件中,请在注释/*3*后添加适当的语句。 (4)使用

12、文件流对象打开输入文件 in.txt,请在注释/*4*后添加适当的语句。 注意:仅在函数指定位置添加语句,请勿改动主函数 main 与其他函数中的任何内容。 #includeiostream.h #includefstream.h #includestdlib.h class TestClass public: TestClass(char* fileName) len = 0; fstream infile; infile.open(fileName, ios:in); char ch; /*1* while() cout ch; /*2* infile.close(); void spli

13、t() fstream outfile1; fstream outfile2; outfile1.open(“out1.txt“,ios:out); outfile2.open(“out2.txt“,ios:out); int i=0; for(i=0;ilen/2;i+) outfile1 (分数:40.00)_正确答案:()解析:(1)将“while()”完整为:while(infile.get.(ch) (2)添加语句:buflen+=ch; (3)添加语句:outfile2 bufi+; (4)将“Testclass Fsp();”完整为:TestclassFsp(“modi3.txt

14、“); 答案考生文件夹 解析 在 VC 环境下打开程序,根据题干给出的几条功能要求,对程序中给出注释下的内容逐个补全或修改。从已给定源程序的 main 主函数开始入手,可以看出程序通过调用类 TestClass 及其成员函数实现各种输出操作。 (1)题目 1 要求“从输入文件中获得一个字符,并判断是否到文件结尾”。程序中的“while()”循环判断语句中缺少从文件中获得的字符,所以这里补全 while 循环判断条件,即“while(infile.get(ch)”。 (2)题目 2 要求“把获得的输入文件的内容存储到 buf 中,并且用 len 记录下文件的长度。”所以为 buf分配空间,即“buflen+=ch;”。 (3)题目 3 要求“将输入文件的后一半内容存储在第二个文件中。”在 C+中,用流插入运算符为“ ”,所将 buf 中存放的数据存入文件 outfile2,以根据题干中的要求,即这里补全“outfile2

展开阅读全文
相关资源
猜你喜欢
  • DIN EN 14391-2004 Packaging - Collapsible aluminium tubes - Tactile warnings of danger German version EN 14391 2004《包装 可折叠铝管 危险的触摸警告》.pdf DIN EN 14391-2004 Packaging - Collapsible aluminium tubes - Tactile warnings of danger German version EN 14391 2004《包装 可折叠铝管 危险的触摸警告》.pdf
  • DIN EN 14392-2008 Aluminium and aluminium alloys - Requirements for anodised products for use in contact with foodstuff English version of DIN EN 14392 2008-01《铝和铝合金 与食品接触用阳极制品用要求》.pdf DIN EN 14392-2008 Aluminium and aluminium alloys - Requirements for anodised products for use in contact with foodstuff English version of DIN EN 14392 2008-01《铝和铝合金 与食品接触用阳极制品用要求》.pdf
  • DIN EN 14394-2008 en 5729 Heating boilers - Heating boilers with forced draught burners - Nominal heat output not exceeding 10 MW and maximum operating temperature of 110 C(include.pdf DIN EN 14394-2008 en 5729 Heating boilers - Heating boilers with forced draught burners - Nominal heat output not exceeding 10 MW and maximum operating temperature of 110 C(include.pdf
  • DIN EN 14395-1-2005 Influence of organic materials on water intended for human consumption - Organoleptic assessment of water in storage systems - Part 1 Test method German version.pdf DIN EN 14395-1-2005 Influence of organic materials on water intended for human consumption - Organoleptic assessment of water in storage systems - Part 1 Test method German version.pdf
  • DIN EN 14396-2004 Fixed ladders for manholes German version EN 14396 2004《人孔用固定梯子》.pdf DIN EN 14396-2004 Fixed ladders for manholes German version EN 14396 2004《人孔用固定梯子》.pdf
  • DIN EN 14397-1-2010 en 7253 Fertilizers and liming materials - Determination of carbon dioxide - Part 1 Method for solid fertilizers German version EN 14397-1 2010《肥料和石灰材料 二氧化碳的测定 .pdf DIN EN 14397-1-2010 en 7253 Fertilizers and liming materials - Determination of carbon dioxide - Part 1 Method for solid fertilizers German version EN 14397-1 2010《肥料和石灰材料 二氧化碳的测定 .pdf
  • DIN EN 14397-2-2004 Fertilizers and liming materials - Determination of carbon dioxide - Part 2 Method for liming materials German version EN 14397-2 2004《肥料和石灰浸物质 二氧化碳的测定 第2部分 石灰浸.pdf DIN EN 14397-2-2004 Fertilizers and liming materials - Determination of carbon dioxide - Part 2 Method for liming materials German version EN 14397-2 2004《肥料和石灰浸物质 二氧化碳的测定 第2部分 石灰浸.pdf
  • DIN EN 14398-1-2004 Cryogenic vessels - Large transportable non-vacuum insulated vessels - Part 1 Fundamental requirements German version EN 14398-1 2003《低温容器 大型可运输的非真空绝缘容器 第1部分 基本.pdf DIN EN 14398-1-2004 Cryogenic vessels - Large transportable non-vacuum insulated vessels - Part 1 Fundamental requirements German version EN 14398-1 2003《低温容器 大型可运输的非真空绝缘容器 第1部分 基本.pdf
  • DIN EN 14398-2-2008 Cryogenic vessels - Large transportable non-vacuum insulated vessels - Part 2 Design fabrication inspection and testing German version EN 14398-2 2003+A2 2008《低.pdf DIN EN 14398-2-2008 Cryogenic vessels - Large transportable non-vacuum insulated vessels - Part 2 Design fabrication inspection and testing German version EN 14398-2 2003+A2 2008《低.pdf
  • 相关搜索

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

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