国家二级C++机试(操作题)模拟试卷398
基本操作题
1.使用VC6打开考生文件夹下的源程序文件modil.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:
number1=4.8 number2=93.6
number3=0.9
PRODUCT=404.3 52
注意:错误的语句在∥********error********的下面。
修改该语句即可。其他的语句不能修改。
#include
using namespace Std;
int msin()
{
double number1=4.8,number2=93.6,number3=0.9;
∥********error********
Droduct=number1*number2*n umber3;
∥********error********
cout<<“number1=”<<number1
< ‘\t’<<“number2=”<< number2
<<‘\t’ ;
∥********error********
cout<<“number3=”<<number3
<<‘\t’;
cout<<“PRODUCT=”<<product
<<end1;
return 0;
}
(1)double prduct=numbe_r1*number2*number3;
(2)cout<< “number1=”<<number1<<‘\t’<< “number2=”<< number2 << ‘\t’;
(3)cout<<“number3=”<<number3<<‘\t’<<end1;
解析:程序内容比较简单,要求在屏幕上输出三个变量值和这三个变量的乘积值,可编译程序按照提示来找到错误处修改调试,按照要求来修改程序。
简单应用题
2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成函数fun(int x),该函数功能是将x的值转换成二进制数输出到屏幕,并且在函数中调用写函数WriteFile()将结果输出到modi2.txt文件中。
例如:x=13,13的二进制数字为1101,则输出到屏幕的为1101。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
#include
#include
#include
using namespace std;
void WriteFile(char*str)
{
ofstream outl;
outl.open(“modi2.txt”,ios—
base::binary | ios—base::app);
for(int i=0;str[i]!=0; i++)
out1.put(str[i]);
out1.close();
}
void fun(int x)
{
}
void ClearFile()
{
Ofstream out1;
out1.open(“modi2.txt”);
out1.close();
}
int main()
{
ClearFile();
fun(1 3);
return 0;
}
char str[32];
int i;
for(i=30;i>=0;i一一)//计算二进制
{
if(x%2)str[i]=’1’; //求余,如果余不为零字符串str第i位为1
el se str[i]=‘0’; //否则为0
x>>=1;
if(!x)break;
}
str[31]=‘\0’; //串加尾符
cout<<&Str[i]<<end1;
WriteFile(&str[i]);
解析:(1)该程序功能是实现十进制转换成二进制数。十进制到二进制的转换是对十进制的数字进行2的取余运算,余数不为零则取1,否则为0,然后对余数进行循环取余运算,直到余数为0。
(2)从己给部分源程序的main主函数开始入手,核心函数fun(int x)中的x参数为输入的十进制数。
综合应用题
3.使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
每卖出一个瓜,则计算瓜的重量,还要计算所有卖出瓜的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整
(1)定义类Cmelon的私有静态数据成员float型变量totalweight和int型变量totalNo,请在注释∥********1********后添加适当的语句。
(2)完成类Cmelon的带一个float型变量W的构造函数,并把这个W加到totalweight中,并且totalNo自加。请在注释∥********2********后添加适当的语句。
(3)在析构函数中,在totahveight中减去weight,然后totalNo自减,请在注释∥********3********后添加适当的语句。
(4)完成静态成员变量的初始化为0,请在注释∥********4********后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#inClude
class Cmelon
{
private:
float weight;
∥********1********
static int totaINo;
public:
Cmelon(flcat w)
{
∥********2********
totalweight+=w;
totaiNo++;
}
~Cmelon()
{
∥********3********
totalweight一=weight;
}
void display()
{
tout << “Sell a melon
with”<<weight<<“kg”<<endl;
co
本文档预览:3600字符,共4368字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载