问答题
18分
打开考生文件夹proj1下的工程proj1,程序中位于每个"// ERROR ****found****"之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:fruit1&...
打开考生文件夹proj1下的工程proj1,程序中位于每个"// ERROR ****found****"之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
fruit1 是苹果吗? true
fruit1 是梨吗? false
fruit2 是苹果吗? true
fruit2 是梨吗? False
注意:只修改"/ ERROR****found****"的下一行语句,不要改动程序中的其他内容。
fruit1 是苹果吗? true
fruit1 是梨吗? false
fruit2 是苹果吗? true
fruit2 是梨吗? False
注意:只修改"/ ERROR****found****"的下一行语句,不要改动程序中的其他内容。
参考解析: 【参考答案】
(1)~Fruits() {}
(2)strcpy(name,the_name);
(3)return strcmp(this->name,name)==0;
【考点分析】
本题主要考查Fruits类,其中涉及构造函数,析构函数,成员函数。
【解题思路】
(1)主要考查的是Fruits类的析构函数,析构函数没有返回值,所以应该为~Fruits()
(2)主要考查库函数strcpy的应用,本题中目的是想将形参the_name赋值给当前对象的name数据成员,所以strcpy的第一个参数应该为name。
(3)主要考查this指针,本题中要使用strcmp,所以第一个参数为this->name
【解题宝典】
定义析构函数时不能有返回值,strcpy函数参数使用正确,this指针正确掌握。