第1题:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错。请改正程序中的错误,使程序输出的结果为 100 37 32 注意:错误的语句在//******error******的下面,修改该语句即可。 试题程序: include<iostream.h> //******error****** voidmain { //******error****** intm=0142: //******error****** intn=0X27: intq=32; cout<<m<<endl; cout<<n<<endl; cout<<q<<endl; return; }
第2题:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句: TC1:0 TC2 注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。 试题程序: include<iostream.h> structTC1 { TCl(inti=0) { m_i=i; } voidprint { cout<<"TCl:"<<m_i<<endl; } intm_i; }; classTC2 { public: TC2 { } voidprint { cout<<"TC2"<<endl: } //********error******** private: ~TC2 { } }; intmain { //********error******** TC1obj1; //********error******** TC20bj2; obj1.print; obj2.print; return0; }
第3题:
给定程序MODll.C中fun函数的功能是:求出以下分数序列的前n项之和。

和值通过函数值返回main函数。
例如,若n=5,则应输出:8.391667。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第4题:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行有问题,请改正main函数中的错误,使程序的输出结果为: number=1 number=10 number=100 注意:不要改动main函数,不能增加或删除行。也不能更改程序的结构,错误的语句在//******error******的下面。 试题程序: include<iostream.h> classTC { public: TC(inti) { number=i; } voidSetNumber(intm) { number=m; } intGetNumberconst { returnnumber; } voidPrintconst { cout<<"number="<<number<<endl; } private: intnumber; }; voidmain { //********error******** TCobjl; objl.Print; TCobj2(3); //********error******** objl.number=10; //********error*‰****** TC.SetNumber(100); objl.Print; obj2.Print; }
第5题:
使用VC++6.0打开考生文件夹下的源程序文件 1.cpp,该程序运行时有错误,请改正程序中的错误。本程序要求实现的功能为从键盘输入一个字符串,并将结果保存到文件1.txt中。 注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在 //******error******的下面。 试题程序: include<iostream> include<fstream> //********error******** usingstd; voidWriteFile(char*s) { ofstreamout1; //********error******** out1.open("1.txt",binary|app); for(inti=0;s[i]!=0;i++) { //********error******** out1.puts(s[i]); } out1.close; } voidClearFile { ofstreamout1; out1.open("1.txt"); out1.close; } intmain { chars[1024]; ClearFile; cout<<"pleaseinputastrin9:"<<endl; cin.getline(s,1024); WriteFile(s); return0; }
第6题:
给定程序MODll.C中函数fun的功能是:根据整型形参m的值,计算如下公式的值。

例如,若m中的值为:5,则应输出:0.536389。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第7题:
给定程序MODll.C中函数fun的功能是:根据整型形参m,计算如下公式的值。

例如,若m中的值为:5,则应输出:1.463611。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第8题:
下列给定程序中,函数proc()的功能是:根据形参m(2≤m≤9)的值,在m行m列的二维数组中存放如下所示的数据,由main()函数输出。

请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:


(1)错误:proc(int**a,intm)
正确:voidproc(int(*a)[N],intm)
(2)错误:aEj][k]=k*J;
正确:a[j][k]=(k+1)*(j+1);
【解析】从主函数的调用可知,函数proc()没有返回值,因此应该定义为void类型。形参a应该是一个整型的指针数组。因此,“proe(int**a,intm)”应改为“voidproc(int(*a)[N],intm)”。数组下标从0开始,由事例数组可知,其元素从l开始递增,因此“a[j][k]=k*J;”应改为“a[j][k]=(k+1)*(j+1);”。
第9题:
给定程序MODll.C中函数fun的功能是:求出以下分数序列的前n项之和。和值通过函数值返回到main函数。

例如,若n=5,则应输出:8.391667。
请改正程序中的错误,使它能计算出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第10题:
第11题:
第12题:
第13题:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错误,请改正错误,使程序正常运行,并且要求最后一个catch必须抛出执行的任何异常。
程序异常,输出信息为
error
O
ERROR
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
include<iostream.h)
intmain
{
try
{
throw("error");
}
//********error********
catch(chars)
{
cout<<s<<endl;
}
try
{
throw((int)0);
}
//********error********
catch
{
cout<<i<<endl;
}
try
{
throw(O);
throw("error");
}
//********error********
catch
{
cout<<"ERROR"<<endl;
}
return0;
}
(1)应改为“catch(char*s)”。
(2)应改为“cateh(inti)”。
(3)应改为“catch(…)”。
【解析】本题中第1个标识前的异常抛出语句为“throw("error");”,其中的类型为字符串。所以对应的异常捕捉语句catch中应该符合这个类型,而程序中给出的语句“catch(chars)”是字符型的,所以第1处的语句修改为“catch(char*S)”。第2个标识前的异常抛出语句为“throw((int)0);”,其中的类型为int。对应的异常捕捉语句catch中应该符合这个类型,所以补充catch子句中的类型,否则如果找不到匹配的catch块,系统就会调用一个系统函数,使程序终止运行。即第2处的语句修改为“catch(inti)”。如果在catch子句中没有指定异常信息的类型,那么就用删节号“…”表示它可以捕捉任何类型的异常信息,即修改为“catch(…)”。
第14题:
给定程序MODll.C中函数fun的功能是:根据整型形参n,计算如下公式的值。

例如,若n=10,则应输出:0.617977。
请改正程序中的语法错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第15题:
使用VC6打开考生文件夹下的工程RevProj15。此工程包含一个源程序文件RevMain15.cpp,但该程序中类的定义有错误。请改正程序中的错误,使它能得到正确结果。
注意,不要改动主函数,不得删行或增行,也不得更改程序的结构。
源程序文件RevMain15.cpp中的程序清单如下:
//RevMain15.cpp
include<iostream>
using namespace std;
class Sample
{
private:
int x;
static int y;
public:
Sample(int a)
{
x=a;
y+=x;
}
static void print(Sample s)
{
cout<<"x="<<x<<<<",y="<<y<<end1;
}
Sample::y=5;
int main()
{
Sampel s1(10);
Sample s2(15);
Sample::print(s1);
Sample::print(s2);
return 0;
}
第16题:
给定程序MODll.C中函数fun的功能是:计算n!。
例如,给n输入5,则输出120.000000。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第17题:
使用VC++6.0打开考生文件夹下的源程序文件1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,即使程序在屏幕输出以下类似内容:
0012FF6810012FF3C5
0012FF6C20012FF444
0012FF7030012FF4C3
0023FF7440012FF542
0012FF7850012FF5C1
006AFDCC~006AFDEF数据可能因为机器的不同,程序输出的内容会有差异。只要相差为4的连续地址即可。
注意:不要改动main函数,不能增加或删除行,也不能更改程序的结构,错误的语句在//******error******的下面。
试题程序:
#include
usingnamespacestd;
intmain()
{
int*P,a[5]={1,2,3,4,5};
double*q,b[5]={5.0,4.0,3.0,2.0,1.0);
intx;
P=a;
q=b;
//********error********
for(x=0;x<=5;X++)
//********error********
cout<;< p="">
(q+x)<;< p="">
return0;
}
(1)应改为“for(x=0;x<5;x++)”。
(2)应改为“cout<
【解析】本题中根据数组a、b的定义。它们都有5个元素,而第1处的“for(x=0;x<=5;x++)”循环了6次,应该是5次,所以在第1处将其修改为“for(x=0;x<5;x++)”;第2处的P变量为指针型变量,p+x为糯向数组中第X个元素的地址,这里要输出的是存储单元的内容,所以使用“*”指针元素符,即修改为“cout<
第18题:
给定程序MODll.C中函数fun的功能是:根据以下公式求π值,并作为函数值返回。
例如,给指定精度的变量eps输入0.0005时,应当输出Pi=3.141480。

请改正程序中的错误,使它能得出正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。

第19题:
下列给定程序中,函数proc()的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若proc()返回1,则输出″YES″;若proc()返回0,则输出″NO″!
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main)函数,不得增行或删行,也不得,t更改程序的结构。
试题程序:


(1)错误:k++
正确:k++;
(2)错误:if(m=k)
正确:if(m==k)
【解析】根据C语言的语法规则,每一条语句都要以分号结束,因此,要在语句“k++”之后加上分号。判断变量m与变量k是否相等应该用符号“==”,符号“=”为赋值符号,因此,“if(m=k)”应改为“if(m==k)”。
第20题:
下列给定程序中,函数proc()的功能是:根据整型形参n,计算如下公式的值。

例如,若n=12,则应输出0.618026。
请修改程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:

(1)错误:intproc(intn)
正确:floatproc(intn)
(2)错误:for(i=2;i<n;i++)
正确:for(i=2;i<=n;i++)
【解析】由主函数中的调用以及函数proc()的返回值可知,函数proc()的返回值类型应为float型数据。因此,“intproc(intn)”应改为“floatproc(intn)”;由题目中所给公式可知,循环中应该包含n的值,因此,“for(i=2;i<n;i++)”应改为“for(i=2;i<=n;i++)”。
第21题:
下列给定程序中,函数fun的功能是:根据整形参m的值,计算如下公式的值。

例如,若m中的值为5,则应输出0.536389。
请改正程序中的错误,使它能得出正确的结果。
注意:部分源程序在文件MODll.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
试题程序:

第22题:
第23题:
第24题: