首页 > 全部 > 二级C++ > 国家二级C++机试(操作题)模拟试卷313

国家二级C++机试(操作题)模拟试卷313

本单篇文档共4135字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 3600人下载
价格: 1.00 原价:¥9.60
收藏

国家二级C++机试(操作题)模拟试卷313

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi.cpp,该程序运行时有错,请改正其中错误,使得程序正常运行,并使程序输出的结果为:

c

Test

注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//********error********的下面。

#inciude

Void main()

{

//********error********

char c=\\

(1)char C=’C’;

(2)int b=1024;

(3)b+=1024;

解析:(1)打开modi1.cpp,调试程序,显示错误提示为第一标识下“odil.cpp(5):error C2440:’initializing’:cannot convert from’char[2]’to’char’”。变量C的类型为字符型,字符型值应该是用单引号,双引号是字符串型。所以这里修改为“char C=’c’;”。

(2)根据第3个标识下的语句知道,b的值加上1024,然后判断b的值是否为2048,所以这里b的类型应该是整型,而不是字符型,所以修改为“intb=1024;”。

(3)显示第3个标识下的语句“b+=1024;”的错误提示modi1.cpp(10):error C2018:unknown character’Oxa3’,因为语句中的“;”为中文输入法下的输入,并不是英文下的“;”,所以修改为“b+=1024;”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(char*str,char ch),本函数采用二分法,在已按字母次序从小到大排序的字符数组str中,查找字符ch,若ch在数组中,函数返回字符ch在数组中的下标,否则返回-1。

二分法查找的思想是:初始查找区间的下界为0,上界为len-1,查找区间的中后,k=(下界+上界)/2:若list[k]等于ch,查找成功;若list[k]>ch,则新的查找区间的下界不变,上界改为k-1;否则新的查找区间的下界改为k+1,上界不变。在新区间内继续用二分法查找。

注意:请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

#include

int fun(char*str,char ch)

{

}

void main()

{

char str[]={’a’,’b’,’c’,’d’,

’e’,’f’,’g’,’h’,’i’,’j’,’k’,0};

char ch;

cout<<\\

int low=0; //初始查找区间的下界

int high;

int k;

for(high=0;str[high]!=0;high++)

//求字符串长度

while(low<high)//循环判断字符位置

{

k=(low+high)/2;

if(str[k]==ch)

return k;

else if(str[k]>ch)

high=k-1;

else low=k+1;

}

if(str[low]==ch)

return low;

return -1;

解析:(1)首先,初始查找区间的下界为0。

(2)然后,求得字符串长度len,上界为len-1,查找区间的中后,k=(下界+上界)/2;若list[k]等于ch,查找成功。

(3)若list[k]>ch,则新的查找区间的下界不变,上界改为k.1;否则新的查找区间的下界改为k+1,上界不变。

综合应用题

3.使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:

(1)完成构造函数的定义,使得数据成员变量filename和contex为空,内容长度FileLength为0。请在注释//********1********后添加适当的语句。

(2)完成析构函数,对contex内存的释放。请在注释//********2********后添加适当的语句。

(3)完成WriteFile()函数,用来对contex内容进行设置填充内容,如果以前有内容,则删除以前的内容,重新填写。请在注释//********3********后添加适当的语句。

(4)完成CopyFile()函数,完成将参数对象的contex的内容拷贝到当前的文件内容中,请在注释//********4********后添加适当的语句。

注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

#include

class MyFileClass

{

private:

char filename[64];

char*contex;

int FileLength;

public:

MyFileClass()

{

//********1********

contex=NULL;

FileLength=0;

}

~MyFileClass()

{

if(FileLength)

//********2********

}

void OpenFile(char*str,int

len)

{

for(int i=0;i<len;i++)

{

filename[i]=str[i];

}

filename[len]=0;

FileLength=0;

if(contex)

{

delete[]contex;

contex=NULL;

}

}

Void WriteFlie(char* str,

int len)

{

if(contex!=NULL)

//********3********

contex=new char[len+1];

for(int i=0;i<len;i++)

contex[i]=str[i];

contex[1er]]=0;

FileLength:fen;

)

void CopyFile(MyFileClass&

file)

{

//*****

本文档预览:3600字符,共4135字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(操作题)模拟试卷313

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号