对自己狠一点,逼自己努力刷二级C++试题,再过五年你将会感谢今天发狠的自己、恨透今天懒惰自卑的自己。我坚信一句话:只有自己足够强大,才有可能成功。
二级C++试题
【1】
简单应用题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。请完成函数fun(intn),使其实现以下功能:当i等于3时,则打印如下内容。
A
AA
AAA
注意:不能修改程序的其他部分,只能修改fun函数。
试题程序:
#include
voidfun(intn)
{
}
voidmain()
{
intn;
cout<<"请输入打印的行数:"<<ENDL;< p>
cin>>n;
if(n<1)
{
cout<<"输入的行数必须大于0"<<ENDL;< p>
return;
}
fun(n);
return;
}
答案:inti;
for(i=0;i<N;I++) p 外层循环,要打印的行数<>
{
intj;
for(j=0;j(n-i-1;j++)//循环打印空格
{
cout<<'';
}
for(;j<N;J++) p 循环打印A<>
{
cout<<"A":
}
cout<<ENDL; p 打印每一行的回车符<>
}
【2】
综合应用题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。
(1)将文件以追加的方式打开。请在注释l后添加适当的语句。
(2)定义m、n为类TC的公有int型数据成员。请在注释2后添加适当的语句。
(3)定义P为类TC的数据成员指针,并指向类TC的数据成员m。请在注释3后添加适当的语句。
(4)定义P指向类TC的数据成员n。请在注释4后添加适当的语句。
注意:增加或者修改代码的位置已经用符号表示出来,请不要修改其他的程序代码。
试题程序:
#include
#include(fstream)
#include
#include
usingnamespacestd;
voidWriteFile(intx)
{
ofstreamout1;
//********1********
out1.open("3.txt",);
out1<<X<<'';< p>
out1.close();
}
voidClearFile()
{
ofstreamout1;
outl.open("3.txt");
out1.close();
}
classTC
{
public:
voiddisp()
{
cout<<"m="<<M<<ENDL;< p>
WriteFile(m);
cout<<"n="<<N<<ENDL;< p>
WriteFile(n);
}
//********2********
};
voidmain()
{
//********3********
ClearFile();
TCa;
a.*p=30;
//********4********
a.*p=45;
a.disp();
}
答案:(1)将“out1.open(”3.txt”,);”补充完整为“outl.open("3.txt",ios_base::app);"。
(2)应添加“intm,n;”。
(3)应添加“intTC::*p=&(TC::m);”。
(4)应添加“p=&(TC::n);”。
【3】
程序改错题
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请补充程序中的丢失部分,使得程序运行。可以在修改处增加或者删除一条语句。
本程序完成以下功能:
(1)获得输入的两个数字d1,d2(d1=6,d2=1)。
(2)输出两个中较大的一个(输出6)。
(3)计算d1/d2,如果d2等于0,返回-l(输出结果6)。
(4)输出d1+d2的结果(输出结果7)。
(5)输出d1+1的结果(输出结果7)。
(6)输出d2-1的结果(输出结果0)。
注意:错误的语句在/********error********/的下面。修改该语句即可。其他的语句不能修改。
试题程序:
#include(iostream.h>
voidmain()
{
intd1;
intd2;
intd3;
cout<<"pleaseinputtWOnumber:"<<ENDL;< p>
cin>>d1>>d2;
/********error********/
d3=(d1<D2)?DL:D2;< p>
cout<<"Maxdatais:"<<D3<<ENDL;< p>
//计算d1/d2如果d2等于0,返回-l
/********error********/
d3=(d2)?d1\d2:-l;
cout<<"d1/d2="<<D3<<ENDL;< p>
/********error********/
d3=(--dl)+(d2++);
cout<<"d1+d2="<<D3<<ENDL;< p>
cout<<"d1+1="<<D1<<ENDL;< p>
cout<<"d2-1="<<D2<<ENDL;< p>
return;
}
答案:(1)“d3=(d1<D2)?D1:D2;”应改为“D3=(D1)D2)?D1:D2;”。< p>
(2)“d3=(d2)?d1\d2:-l;”应改为“d3=(d2)?d1/d2:-l;”。
(3)“d3=(--dl)+(d2++);”应改为“d3=(d1++)+(d2--);或d3=(++d1)+(--d2);”。
【4】
简单应用题
使用VC++6.0打开考生文件夹下的源程序文件2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数sum(intA[NUM][NUM],intn)的功能是计算矩阵中所有非质数数字的和。
提示:函数isPrime(intn)的功能是判定当前数字是否为质数,如果是,则返回true。
注意:不能修改程序的其他部分,只能修改sum函数。
试题程序:
#include(iostream.h)
#include
#defineNUM50
intA[NUM][NUM]=
{
{1,3,5,7,9},
{11,13,15,17,19},
{21,23,25,27,29},
{31,33,35,37,39},
{41,43,45,47,49}
};
boolisPrime(intn)
{
if(n==1)
returnfalse;
if(n==2)
returntrue;
for(inti=2;i(n/2;i++)
{
if(n%i==0)
returnfalse;
}
returntrue;
}
intsum(intAENUM]ENUM],intn)
{
}
intmain()
{
cout<<SUM(A,5)<<ENDL;< p>
return0;
}
答案:intre=0:
for(inti=0;i<N;I++)< p>
{
for(intj=0;j<N;J++)< p>
{
if(!isPrime(A[i][j]))//判断是否是素数,不是
素数则累加
{
re=re+A[i][j];
}
}
}
returnre:
【5】
综合应用题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列撮作,将类的定义补充完整。
(1)利用define定义常量TRUE为1,定义常量FALSE为0,请在注释1后添加适当的语句。
(2)在类A2前增加A1的声明,请在注释2后添加适当的语句。
(3)在类Cl中声明友元函数boolrune(A2&a,A1&b),请在注释3后添加适当的语句。
(4)实现函数boolfunc(A2&obj1,Al&obj2)的功能,检查两个类的值都为TRUE,则返回TRUE,请在注释4后添加适当的语句。
注意:除在指定位置添加语句之外,不要改动程序中的其他内容。
试题程序:
#include(iostream.h>
//********1********
#
defineFALSE0
//********2********
classA2
{
private:
boolm_A2;
friendboolfunc(A2&objl,A1&obj2);
public:
A2()
{
m_A2=FALSE。
}
public:
voidsetA2(booln)
{
m_A2=n;
}
};
elaSSA1
{
private:
boolm_A1;
//********3*********
public:
A1()
{
m_A1=TRUE;
}
public:
voidsetAl(booln)
{
m_A1=n;
}
};
boolfunc(A2&objl,A1&obj2)
{
//********4********
return
}
intmain()
{
A20bj0;
A10bj1;
cout<<FUNE(OBJ0,OBJL)<<ENDL;< p>
obj0.setA2(TRUE);
objl.setAl(TRUE);
cout<<FUNC(OBJ0,OBJL)<<ENDL;< p>
return0;
}
答案:(1)应添加“#defineTRUE1”。
(2)应添加“classA1;”。
(3)应添加“friendboolfunc(A2&objl,Al&obj2);”。
(4)将“retllin”补充完整为“returnobjl.m_A2==TRUE&&obj2.m_A1==TRUE;”。
考无忧小编提醒您:
现在距离计算机等级考试只剩下不到100天了,再不努力刷计算机等级考试题库?
9月份的考试,你一定会仓促应对,而考试结果也将不尽人意!赶紧把以上的二级C++试题刷起来吧!
文章推荐:
2019年全国计算机等级考试题库“二级MS Office 高级应用考试大纲”
全国计算机等级考试报考成功后可以退费吗?(内附计算机等级考试题库)
温馨提示:
考试想拿高分吗?更多计算机等级考试题库二级ms office试题请点击查看>>>二级ms office
想要了解更多的计算机等级考试题库请点击下载>>>计算机等级考试题库
想知道更多关于计算机等级考试题库的近期资讯吗?点击进入>>>计算机等级考试题库资讯