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

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

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

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

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正错误,使得程序输出:

Hello

test

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

//********error********的下面。

#include

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

template

Void fun(T t)

{

std::cout<<\\

(1)template

(2)删除“template”

(3)bool flag=true;

解析:(1)C++中的模板类格式为template,所以将题目中程序中的第1个标识下语句“template”修改为“template”。

(2)在第2个标识下的“void fun(bool t)”函数中,其中t变量为布尔型变量,是C++中的基础变量,并不是模板变量,并没有使用到模板类,所以删除第2个标识下的模板类型定义语句。

(3)第3个标识下的“bool flag=TRUE;”是声明布尔型变量flag,并将其值赋为逻辑真。而TRUE并不是合法值,C++中区分大小写,所以逻辑真值应为true,即“bool flag=true;”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是将x的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。

例如:x=13,13的二进制数字为1101,则输出到屏幕的为1101。

注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。

#include

#include

#include

using namespace std;

Void WriteFiie(char*str)

{

ofstream out1;

out1.open(\\

char str[32];

int i;

for(i=30;i>=0;i–)//计算二进制

{

if(x%2)str[i]=’1’; //求余,如果余不为零字符串str第i位为1

else str[i]=’0’; //否则为0

x>>=1;

if(!x)break;

}

str[31]=’\0’; //串加尾符

cout<<&str[i]<<endl;

WriteFile(&str[i]);

解析:(1)定义存放二进制的字符串str。

(2)然后利用for循环对十进制数字X进行取余运算,直到余数为0结束。

(3)如果取余结果为0,则二进制字符串这个字符位的值为0,否则为1。

(4)最后调用WriteFile将运算结果存入文件。

综合应用题

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

(1)定义类的公有数据成员函数No、Name[32],其中No是int型的数据,Name[32]为字符型。请在注释//********1********后添加适当的语句。

(2)完成函数set的定义,分别设置No和Name的值,请在注释//********2********后添加适当的语句。

(3)完成函数print(),请在注释//********3********后添加适当的语句,打印的输出如下:

No=111

Name=Garfield

(4)加缺省构造函数,设置No为0,Name为空,请在注释//********4********后添加适当的语句。

注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。

#include

Class TestClass

{

public:

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

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

{

No=no;

for(int i=0;strName[i]!=

0;i++)

{

Name[i]=strName[i];

Name[i+1]=0;

}

}

void print()

{

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

}

Testelass()

{

//********4********

}

};

int main()

{

TestClass stu;

stu.Set(111,\\

(1)添加语句:int No;char Name[32];

(2)添加语句:void Set(int no,char*strName)

(3)添加语句:cout<<\\

解析:(1)题目1要求“定义类的公有数据成员函数No、Name[32],其中No是int型的数据,Name[32]为字符型”。在已有程序中,类定义的public区域中,定义变量No,Name[32],即在第1个标识下添加语句“int No;char Name[32];”。

(2)题目2要求“完成函数set的定义,分别设置No和Name的值”。第2个标识下说明函数set的语句中,应该包括变量no,strName的定义,然后在函数中将其值赋值给No,Name,即添加定义语句“void Set(int no,char*strName)”。

(3)题目3要求“完成函数print()”,根据输出结果,知道输出的是No和Name的值,所以这里补全cout<<\\

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号