使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: This is a greart! Hello Hello 注意:错误的语句在//********err

admin2015-05-30  20

问题 使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
    This is a greart!
    Hello
    Hello
    注意:错误的语句在//********error********的下面,修改该语句即可。
    1    #include
    2    class CMyClass
    3    {
    4   public:
    5    void displayl()
    6    {
    7    cout<<"This is great!"<    8    }
    9    void,display2()
    1 0    {
    11    //******error******
    12    char str[5]="Helio";
    13    cout<    14    }
    15    //******error******
    16    void di splay3(char string)
    17    {
    18    //******error******
    19    cout<    20    }
    21    }j
    22  void main()
    23  {
    24    CMyClass myclass;
    25    myclass.di splayl();
    26    myclass.display2();  
    27    myclass.display3(”Hello”);
    28    }

选项

答案(1)char str[6]="Hello"; 或char str[]="Helio"; (2)void display3(char*string) 或voiddisplay3(char string[]) (3)cout<
解析 类CMyClass有3个成员函数:displayl()、display2()和display3(),displayl()和display2()不带参数,display3()带有参数,函数功能分别向屏幕打印输出不同的字符串。
    [解题思路]
    (1)"Hello"字符串的长度为5,存放在字符数组中的话,字符数组的长度至少为6,因为字符数组的最后一个字符为NULL,故第1个标识下字符数组长度为5太短,应改成“charstr[6]="Hello";”或"char str[]="Hello";”。
    (2)char string表示string为一个char变量,代表一个字符而不是一串字符,程序要求输出一串字符显然字符变量做不到,应该为字符指针或字符数组,故第2个标识下应改为“void display3(char*string)”  或“void display3(char string[])”。
    (3)编译程序发现第3标识下有错误,观察程序可知第3个标识下语句结束没有分号,而C++语句必须以分号结束,应加上分号,即第3表示下应改为“cout<
转载请注明原文地址:https://kaotiyun.com/show/OPNp777K
0

最新回复(0)