qq_39779074 2022-11-20 16:09 采纳率: 100%
浏览 7
已结题

关于#c++#的问题:C++改错

C++改错,求改错结果以及原因分析

一:

程序位于每个“//ERRORfound”下的语句行有错误,请加以更正。

更正后程序的输出应该是:

 0

 10

[程序]

//main.cpp

#include<iostream>

using namespace std;

class Class_Object{

public:

       //ERROR**********found**********

       void Class_Object(int=0);

       void set(int);

       int get();

private:

       int member;

};

Class_Object::Class_Object(int m):member(m){}

void Class_Object::set(int m)

{

       //ERROR**********found**********

       m=member;

}

int Class_Object::get()

{

       return member;

}

int main()

{

       Class_Object test;

       cout<<test.get()<<endl;

       //ERROR**********found**********

       test.member=10;

       cout<<test.get()<<endl;

       system("pause");

       return 0;

}

说明:
只能修改每个“//ERRORfound”下的那一行,不要改动程序中的其他内容,也不能删除或移动“//ERRORfound”。


在主函数中定义了一个幂类的对象,程序实现了求xn并输出结果。请在程序中“//found”下的横线处填写适当的代码,然后删除横线,以实现上述类定义。

此程序的正确输出结果应为:

 0.5^0=1

 0.5^1=0.5

 2^10=1024

 2^-3=0.125

 [程序]

//main.cpp

#include<iostream>

using namespace std;

class Powers{

public:

       void print(double,int);                         // 按指定格式输出结果

       double features(double x,int n);                // 用递归法求x的n次方的值,即xn

};

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

void ____________ print(double x,int n)

{

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

       cout<<x<<'^'<<n<<'='<< ____________ <<endl;

}

double Powers::features(double x,int n)

{

       int k;

       if(n==0)return 1.0;        // x的0次方为1

       else if(n==1)return x;           // x的1次方为x

       else if(n<0){                 // n<0时x的n次方的值

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

              ____________ ;

              return 1/x*features(x,k);

       }

       else{                                   // n>0且n不为1时x的n次方的值

              k=n-1;

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

              return  ____________ ;

       }

}

int main()

{

       Powers test;

       test.print(0.5,0);

       test.print(0.5,1);

       test.print(2,10);

       test.print(2,-3);

       return 0;

}

  • 写回答

5条回答 默认 最新

  • 快乐鹦鹉 2022-11-20 16:13
    关注
    //main.cpp
    #include
    using namespace std;
    class Class_Object{
    public:
           //ERROR**********found**********
           Class_Object(int=0);   //构造函数没有返回值
           void set(int);
           int get();
    private:
           int member;
    };
    Class_Object::Class_Object(int m):member(m){}
    void Class_Object::set(int m)
    {
           //ERROR**********found**********
           member = m;   //赋值写反了
    }
    int Class_Object::get()
    {
           return member;
    }
    int main()
    {
           Class_Object test;
           cout<get()<//ERROR**********found**********
           //test.member=10;
           test.set(10);    //member是私有变量,不可以直接访问
           cout<get()<system("pause");
           return 0;
    }
    
    
    
    //main.cpp
    #include <iostream>
    using namespace std;
    class Powers{
    public:
           void print(double,int);                         // 按指定格式输出结果
           double features(double x,int n);                // 用递归法求x的n次方的值,即xn
    };
    //**********found**********
    void Power:: print(double x,int n)
    {
           //**********found**********
           cout<<x<<'^'<<n<<'='<< feature(x,n);
    }
    double Powers::features(double x,int n)
    {
           int k;
           if(n==0)return 1.0;        // x的0次方为1
           else if(n==1)return x;           // x的1次方为x
           else if(n<0){                 // n<0时x的n次方的值
                  //**********found**********
                  x=-x ;
                  return 1/x*features(x,k);
           }
           else{                                   // n>0且n不为1时x的n次方的值
                  k=n-1;
                  //**********found**********
                  return  x*features(x,k) ;
           }
    }
    int main()
    {
           Powers test;
           test.print(0.5,0);
           test.print(0.5,1);
           test.print(2,10);
           test.print(2,-3);
           return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 12月5日
  • 已采纳回答 11月27日
  • 创建了问题 11月20日

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法