改错题

2020-03-01 17:34:46 来源:范文大全收藏下载本文

改错题

1.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句: MyStruct: 0 MyDate 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include struct MyStruct { MyStruct(int i=0) {

m_i = i; } void print() {

cout

cout

1 return 0; }

2.该程序运行时有问题,请改正main错误,使得程序正确执行,并且输出以下语句:

6 7

9 10 10 11 11 12 12 13 13 14 14 15 15 16 16 17 17 18 18

注意:错误的语句在/******found******/的下面,修改该语句即可。

#include #include void main() { int a[3][6]={{1,2,3,4,5,6},{7,8,9,10,11,12},{13,14,15,16,17,18}}; int *ptr, i; /********found********/ ptr = a; for(i=0;i

cout

/********found********/

cout

if(i%6==5) cout

3.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句:

sizeof(str)=4 sizeof(str2)=20 sizeof(str3)=1 要求:不能删除aert()语句;

只能修改后面的数字。

提示:aert()函数如果为假,则产生一个中断异常。

注意:错误的语句在/******found******/的下面,修改该语句即可。

#include #include void main() { char* str = \"abc\"; /********found********/ aert(sizeof(str)==3); cout

2 char str2[20] = \"ab\"; /********found********/ aert(sizeof(str2)==2); cout

4.该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:

4, 5 20 注意:错误的语句在/******found******/的下面,修改该语句即可。

#include cla A { protected: int n,m; public: void set(int a,int b){m=a; n=b;} void show(){cout

cla B:public A { int s; public: void set(){s=m*n;} void shows(){cout

b.show(); b.set(); /**********found**********/

b.show();

3 }

5.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下语句:

平均值是:21

最小值是:-22 最大值是:36 注意:错误的语句在/******found******/的下面,修改该语句即可。

#include using namespace std; int main() { int i,avg,min,max; int vn[5]={25,56,-22,43,4}; avg=0; for( i=0; i

/********found********/

avg=vn[i]; avg/=5; cout

/********found********/

if(vn[i]>min) min=vn[i];

/********found********/

if(vn[i]

6.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

a=5, b=0

a=5, b=6 注意:错误的语句在/******found******/的下面,修改该语句即可。

#include cla C0 { public: /********found********/

4 friend void fun(C0&,int); void print() {

/********found********/

cout

7.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

MyObj

~MyObj 注意:错误的语句在/******found******/的下面,修改该语句即可。

#include cla MyObj { /********found********/ /********found********/ MyObj{cout

5 MyObj obj; }

8.该程序运行有问题,请改正程序中的错误,使程序的输出结果为:

Which act(a or b)?b act1 act2 Bact3 Bact4 Bend 注意:错误的语句在/********found*******/的下面,修改该语句即可。 #include cla A { public: virtual void act1(){cout

virtual void act4{cout

cla B :public A { void act3(){cout

void main(void) { char c; A *a;

cout

a = new A; else

a = new B;

6 a->act1(); delete a; }

9.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

i=5 i=a i=15 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla MyCla { public: template

void fun(T t) {

/********found********/

T i=0;

if( t > i)

{

i+=t;

}

cout

t.fun(5); /********found********/ t.fun(97); float i = 10.0; /********found********/ t.fun(i); }

10.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

100 提示:定义i为一个整型数据位长的变量

7 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include /********found********/ struct { /********found********/ int i: 1; int j; } S; void main() { S obj; obj.i = 100; obj.j = 10; /********found********/ int* p =& obj.i; cout

11.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

Constructor1 Constructor1 Constructor1 Destructor Constructor2 Destructor I=0 I=5 Destructor Destructor 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla CSample { int i; public: CSample() {

cout

i=0;

8 } CSample(int val) {

cout

i = val; } ~CSample() {

cout

/********found********/ ~CSample(int i){ cout

obj[i].print(); } delete []obj; return; }

12.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

Number=1,2,3 sum=16 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla Num { public: /***************** found *****************/

9 void Num(int a,int b,int c); void PrintNumber(); void PrintSum(); private: int x,y,z; static int sum; }; /***************** found *****************/ int sum=10; Num::Num(int a,int b,int c) { x=a; y=b; z=c; sum=sum+x+y+c; } void Num::PrintNumber() { cout

13.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

输入:A 输出:Input:A 输入:B 输出:Input:B Input:B 输入:C 输出:Input:C 输入其他字母,没有任何输出。

注意:错误的语句在/********found*******/的下面,修改该语句即可。

10

#include void main() { cout>c; switch(c) { case \'A\':

cout

/********found********/ case \'B\':

cout

/********found********/ case \'B\':

cout

/********found********/ case:

break; } return; }

14.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

m_t=0 m_t=10 要求:obj的类对象不能直接给m_t赋值,如obj.m_t=10则产生错误。 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla C0 { /********found********/ int m_t; public: void print() {

cout

11 { public: /********found********/ C1(int t) {

m_t = t; } }; int main() { C1 obj; obj.print(); C1 obj2(10); obj2.print(); return 0; }

15.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

m_Mumber=10 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla C0 { public: C0(){m_Number = 0;}; ~C0(){}; public: /********found********/ virtual print() {

cout

cout

12 } /********found********/ void Add(int i)const {

m_Number += i; } }; void main() { C1 obj; obj.Add(6); obj.Add(4); obj.print(); }

16.该程序运行有问题,请改正程序中的错误,使程序的输出结果为:

0 0 0 1 2 -1 0 0 0 1 2 -1 2 1 1 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla A { /**************** found *******************/ int a=0; public:

A(int aa=0):a(aa){} }; cla B { int a,b;

const int c; A d; public: /**************** found *******************/ B(){} /**************** found *******************/ B(int aa, int bb): d(aa+bb) {

a=aa, b=bb; }

13 void print() {

cout

17.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

abcdefgh abcdefgh abcdefgh 注意:错误的语句在/********found*******/的下面,修改该语句即可。 #include cla C0 { int m_Number; public: C0(int i) {

m_Number = i; } /********found********/ friend operator --() {

m_Number--; }

/********found********/ operator --() {

m_Number-=2; } void print() {

cout

14 } }; void main() { C0 obj(10); /********found********/ --obj; obj.print(); --obj; obj.print(); }

18.该程序运行时有错,请改正错误,使得程序正确执行,消除相关的警告提示,并且能输出以下结果:

30 注意:错误的语句在/********found*******/的下面,修改该语句即可。 #include cla Point { /********found********/ int *x, y; public: Point(int x=0,int y=0) {

/********found********/

this->x = new int[x];

/********found********/

this->y = new int[y]; } ~Point() {

delete x;

delete y; } int Mul() {

return *x * *y; } void print() {

cout

15 void main() { Point obj(5,6); cout

19.该程序运行时有错,请改正错误,使得程序正确执行,并且输出以下结果:

C1 C0 1 C0 int 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla C0 { public: C0(int t) {

cout

cout

/********found********/

return 0; } }; cla C1 { public: operator C0() {

cout

16

20.该程序运行有问题,请改正函数中的错误,使该程序的输出结果为:

This is static a: 1 This is non-static b: 1 This is static a: 2 This is non-static b: 2 This is static a: 2 This is non-static b: 1 Pre any key to continue 注意:错误的语句在/********found*******/的下面,修改该语句即可。

#include cla shared {

static int a;

int b; public: /***************** found *****************/

void set(int i=0, int j) {a=i; b=j;}

void show(); }; /***************** found *****************/ void shared::show() {

cout

cout

cout >> \"\\n\"; } void main() {

shared x, y;

x.set(1, 1);

x.show();

y.set(2, 2);

y.show();

x.show(); }

改错题

改错题

改错题

改错题

改错题

改错题

改错题

改错题

改错题

改错题

《改错题.doc》
改错题
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档
下载全文