请使用“答题”菜单或使用VC6打开考生文件夹proj1下的工程proj1,此工程包含程序文件main.epp,其中有类TimesTable(“乘法口诀表”)的定义和主函数main的定义。程序中位于每个 //ERROR **********found

admin2021-07-02  25

问题 请使用“答题”菜单或使用VC6打开考生文件夹proj1下的工程proj1,此工程包含程序文件main.epp,其中有类TimesTable(“乘法口诀表”)的定义和主函数main的定义。程序中位于每个
    //ERROR **********found**********下的
    语句行有错误,请加以改正。更正后程序的输出应该是:
    1*1=1
    1*2=2 2*2=4
    1*3=3 2*3=6 3*3=9
    1*4=4 2*4=8 3*4=12 4*4=16
    1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
    1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
    1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
    1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
    1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
  注意:只能修改每个//ERROR **********found**********下的那一行,不要改动程序中的其他内容。
    1  #include
    2  #include
    3  using namespace std;
    4  class TimesTable//乘法口诀表
    5  {
    6  public:
    7    //ERROR  **********found**********
    8 TimesTable(int n=9){count=n;}
    9    void Print()const;
    10 private:
    11    const int count;
    12  };
    13    //ERROR  **********found**********
    14  void Print()const
    15  {
    16    int i,j;
    17    //ERROR  **********found**********
    18    for(i=1;i    19    {
    20    for(j=1;j<=i;j++)
    21    cout<    22    cout<    23    }
    24  }
    25  int main()
    26  {
    27 TimesTable obj;
    28    obj.Print();
    29    return 0;
    30  }

选项

答案(1)TimesTable(int n=9):count(n){} (2)void TimesTable::Print()const (3)for(i=1;i<=count;i++)

解析 (1)const为只读变量,const变量应该在成员初始化列表中赋初值,否则C++认为是语法错误,可知成员变量count,定义const类型,不能在构造函数中赋值。
    (2)类中的成员函数,在类外部定义,必须附加域说明符,来表示该函数属于某个类的。
    (3)根据题设值,计算出从1~n的乘法口诀表,包括n在内,因此使用“<=”运算符。
转载请注明原文地址:https://jikaoti.com/ti/Oph0FFFM
0

最新回复(0)