请使用VC6或使用【答题】菜单打开考生文件夹progl下的工程prog1。此工程中包含程序文件main.cpp,其中有类Score(“成绩”)和主函数main的定义。程序中位于每个“//ERROR*****found****”之后的一行语句有错误,请加以改

admin2016-06-12  27

问题 请使用VC6或使用【答题】菜单打开考生文件夹progl下的工程prog1。此工程中包含程序文件main.cpp,其中有类Score(“成绩”)和主函数main的定义。程序中位于每个“//ERROR*****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:
学号:12345678课程:英语总评成绩:85
注意:只修改每个“//ERROR****found****”下的一行,不要改动程序中的其他内容。
#include
using namespace std;
clasS Score{
public:
  Score(const char‘the  course,
const char*the id r int the normal l
int the midterm,int the end of term)
:course(the course),normal(the
normal),midterm(the midterm),end
of term(the end of term){
//ERROR*********found**********
strcpy(the id,student id);
}
const char*getCourse()const{return course;)  //返回课程名称
//ERROR*********found*********
  const char*getID()const{return
&student id;)  //返回学号
  int getNormal()cons t{return normal;)  //返回平时成绩
  int getMidterm()const{return midterm;)
//返回期中考试成绩
int getEndOfTerm()const{returnend—of—term;}  //返回期末考试成绩
  int getFinal()const;  //返回总评成绩
private:
  const char*course;//课程名称
  char student id[12];  //学号
  int normal;//平时成绩
  int midterm;//期中考试成绩
  int end of term;  //期末考试成绩
  };
  //总评成绩中平时成绩占20%,期中考试占30%,期末考试占50%,最后结果四舍五入为一个整数
  //ERROR*********found*********
  int getFinal()const{
  return normal*0.2+midterm*0.3+
end—of—term*0.5+0.5;
}
int main(){
char English[]=“英语”;
Score score(English,“12345678”,68,83,92);
cout<<“学号:”<cout<<“课程:”<  cout<<”总评成绩:”<nal()<  return 0;
}

选项

答案(1)strepy(studentjd,thejd); (2)eonst char*getlD()const{return studentjd;} (3)int Score::getFinal.()const{

解析 本题考查的是Score类,其中涉及动态数组、构造函数、strcpy函数、const函数和成员函数。strcpy()函数和strlen()函数等经常会考到,要注意它们的参数要求。类的成员函数在类外定义时需要加上类名的作用域符。
【解题思路】
(1)主要考查考生对strepy()函数的掌握情况,strcpy(参数一,参数二)函数的功能是将参数二的字符串复制给参数一,因此在这里student-id应该位于参数一的位置,即strcpy(studentjd,thejd);。
(2)主要考查考生对函数返回值的掌握情况,根据注释:返回学号可知学号应该由一个字符串组成。再看函数要返回的类型:const char术,可知要返回一个char型指针,也就是一个char型数组,而&studentjd是一个char型数组指针,因此直接写studentjd即可。
(3)主要考查考生对类的成员函数的掌握情况,因为getFinal函数是Score类的成员函数,所以在定义时要加上类名和作用域符,即Score::。
【解题宝典】
主要考查考生对strcpy函数、函数返回值和成员函数的掌握情况,在含有动态数组或者字符数组的类中,常常会涉及strepy、strlen等函数的使用,要注意这些函数的参数要求。
转载请注明原文地址:https://kaotiyun.com/show/vYNp777K
0

最新回复(0)