收藏 分销(赏)

C++机试答案.doc

上传人:xrp****65 文档编号:7042732 上传时间:2024-12-25 格式:DOC 页数:7 大小:111KB
下载 相关 举报
C++机试答案.doc_第1页
第1页 / 共7页
C++机试答案.doc_第2页
第2页 / 共7页
点击查看更多>>
资源描述
10书名:C++语句。。。。。 (1)Book(const char *theTitle, int pages) : num_ pages(pages) (2)void openAtPage(int page_no) { //把书翻到指定页 (3)cur_page = 0; 办公室房间号308 (1)return length * width; (2)Room(the room_no, the_length, the_width) (3)depart, the_depart (4)an office(308,5.6,4.8,"会计科" Hello! length = otherString.length; setString(otherString.sPtr); return *this; 11constructor called (1)MyClass(int i = 10) (2)MyClass(const MyClass & p) (3)~MyClass() 12345 23456 34567 (1)getElement(i, j) (2)MatrixBase(rows, cols) (3)new double[rows*cols] (4)r == c 两个数据表 for( int i=0; i < len; ++i) dd[i] = d[i] + list.d[i]; 12There is awhite dog named hoho (1)this->color = color; (2)const char getName() const { return *name; } (3)Dog dog1("Hoho", WHITE), dog2("Haha", BLACK), dog3("Hihi", OTHER); (1)const Point& p (2)p1(p1), p2(p2) (3)Point p1, Point p2, Point p3 (4)(length1() + length2() + length3())/2 for(int i = 0; i < len; ++i) for(int j = i; j < len; ++j) if( d[i] > d[j]) { int temp = d[i]; d[i] = d[j]; d[j] = temp; } 13(1)Line(double x1, double y1, double x2, double y2) { (2)cout<< "),length = "<< length(*this)<< "。"<< endl; (3)return sqrt((l.getX1() - l.getX2()) * (l.getX1() - l.getX2()) + (l.getY1() - l.getY2()) * (l.getY1() - l.getY2())); 【参考答案】 (1)getElement(length()-1)<< (2)delete []val (3)s += val[i] (4)return 0.0; for( int i = 0; i < len; ++i) if (data < d[i]) { len++; double *dd = new double[len]; for (int k = len; k >i; k--) dd[k] = d[k-1]; dd[i] = data; for (int j = 0; j < i; j++) [j] = d[j]; delete []d; d = new double[len]; for (int index = 0; index < len; ++index) d[index] = dd[index]; delete []dd; break; } 14 (1)char *Name; (2)~StudentInfo() {} (3)StudentInfo::StudentInfo(char *name, int age, int ID, int courseNum, float record) 【参考答案】 (1)MaxSpeed(maxspeed), Weight(weight) { }; (2)virtual (3)virtual (4)public bicycle, public motorcar 【参考答案】 n = r.n; delete []p; p = new int[n]; for (int i = 0; i < n; i++) p[i] = r.p[i]; return *this; 15 (1)MyClass(int val) : N(1) (2)~MyClass() { delete [] p; } (3)void print(MyClass & obj) 【参考答案】 (1)virtual void print() const = 0 (2)Component* child (3)cout<< "Leaf Node"<< endl; 【参考答案】 int temp = 0; for (int i = 0; i < M; i++) for (int j = 0; j < N; j++) if (temp < array[i][j]) temp = array[i][j]; return temp; 16 (1)this->num = num; (2)if(!closed) (3)void lock(){ 【参考答案】 (1)is_male(is_male), birth_date(birth_date) (2)return strcmp(name, p.getName()); (3)<<birth_date.getMonth()<< "月" 【参考答案】 for (int i = 0; i < counter; i++) if (element == elem[i]) { for (int j = i; j < counter-1; j++) elem[j] = elem[j+1]; counter--; return; } 17 (1)TVSet(int size) : size(size) { (2)void turnOnOff() (3)cout<<"规格:"<< getSize()<<"英寸" 【参考答案】 (1)x1(root), x2(root), num_of_roots(1) (2)cout<< "无实根" ; break; (3)a(a), b(b), c(c) (4)return Quadratic(a - x.a, b - x.b, c - x.c); 【参考答案】 for (int i = 0; i < counter; i++) for (int j = counter -1; j > i; j--) if (elem[i] > elem[j]) { int temp = elem[i]; elem[i] = elem[j]; elem[j] = temp; } 18【参考答案】 (1)int Foo::y_= 42; (2)Foo f('a'); (3)cout<< "X = "<< f.getX()<< endl; 【参考答案】 (1)point.getX() + width, point.getY() + height (2)radius * radius (3)center.getX() - radius, center.getY() - radius (4)2 * radius; 【参考答案】 int length = strlen(str); for (int i = 0, j = length -1; i < j; i++, j--) { char temp = str[i]; str[i] = str[j]; str[j] = temp; } 【参考答案】 int length = strlen(str); for (int i = 0, j = length -1; i < j; i++, j--) { char temp = str[i]; str[i] = str[j]; str[j] = temp; } 19【参考答案】 (1)this->type = type; (2)delete [] name; (3)strcpy(this->name,s.name); 【参考答案】 (1)virtual int area(void) = 0; (2)area() (3)length * height (4)CPolygon 【参考答案】 size = other.size; v = new int[size]; for (int i = 0; i < size; i++) setArray(i,other.v[i]); 20 (1):x(x), y(y) {}或this->x=x,this->y=y; (2)void show() const { cout<< '('<< x<< ','<< y<< ')'; } (3): p1(pt1), p2(pt2) {}或{p1=pt1;p2=p2} 【参考答案】 (1)top(-1) {} (2)data[top--] (3)top(NULL) (4)p->next = top; 【参考答案】 for (int i = 0; i <=set.GetEnd(); i++) if (IsMemberOf(set.GetElement(i))) a[size++] = set.GetElement(i); 21 (1)const char * theBrand()const{ return brand;} //返回电扇品牌 (2)void turnOff(){ intensity = 0; } //关电扇 (3)if (inten >=1 && inten <= 3) intensity = inten; 【参考答案】 (1)strcpy(brand, the_brand); (2)number = new char[strlen(the_number) + 1]; (3)theBrand() (4)const { return "卡车"; } //返回汽车类别 【参考答案】 int min = x.a < x.b ? x.a : x.b; for (int i = 2; i <= min; i++) if (x.a%i == 0 && x.b%i == 0) return i; return -1; 22 (1):base(the_base), bonus(the_bonus), tax(the_tax) (2)~Salary(){ delete []staff_id; } (3)cout<<"实发工资:"<<pay.getNetPay()<<endl; 【参考答案】 (1)strcpy(this->office, office); (2)return office (3)dept(my_dept) { (4)dept.changeOfficeTo("311"); 【参考答案】 if (income <= 2000) return tax payable; if (taxable > lower limits[i]){ tax payable += (taxable - lower limits[i])*rates[i]; taxable = lower limits[i]; } 23 (1)ABC() : a(0), b(0), c(0) {} (2)int s1 = x.Sum() + y.Sum(); (3)int s2 = s1 + w->Sum(); 【参考答案】 (1)public Base (2)Base::sum() (3)Derived:: (4)Base(m1, m2) 【参考答案】 for (int i = 0, j = m-1; i < j; i++, j--) { Type temp = a[i]; a[i] = a[j]; a[j] = temp; } 24【参考答案】 (1)strcpy(student_id,the_id); (2)const char *getID()const{ return student_id; } //返回学号 (3)int Score::getFinal() const { 【参考答案】 (1)strcpy(classroom, room); (2)return classroom; (3)my_class(the_class) (4)cla.changeRoomTo("311"); 【参考答案】 for (int i = 1; i < num of terms; i++) { int j = i-1; double x value = x; while(j > 0) { x value *= x; j--; } value += coef[i]*x value; } 25【参考答案】 (1)void Clock::print() const (2)set(++total_sec); (3)return *this; 【参考答案】 (1)char[strlen(str) + 1]; (2)Mammal(str) (3)return output[MOUSE]; (4)Elephant 【参考答案】 sListItem* temp = new sListItem; temp->data = c; temp->next = h; h = temp; 26【参考答案】 (1)public: (2)SetDate(d,m,y); (3)cout<< m_nYear<< "-"<< m_nMonth<< "-"<< m_nDay; 【参考答案】 (1)name_(name), dept_(dept) (2)return dept_; (3)Employee(name, dept), level_(level) (4)Employee::print(); 【参考答案】 (1)cout<< firstname<< " "<< surname (2)head[i] = start[i] (3)return new Name2(s); else return new Name1(s) 27【参考答案】 (1)public: (2)for(int i=0; i<n; i++) a[i]=aa[i]; (3)for(int i=0; i<6; i++) sum+=x.Geta(i); 【参考答案】 (1)!InSet(*s) (2)setdata[num++] = *s (3)c == setdata[i] (4)return true 【参考答案】 MiniComplex sum; sum.imagPart= this->imagPart + otherComplex.imagPart; sum.realPart = this->realPart + otherComplex.realPart 28 (1)delete [] array; (2)cout<< array[i]<< ' '; (3)MyClass obj(10); 【参考答案】 (1) a[num] = e; (2) Array(s) (3) a[j] = a[j - 1]; (4) a[i] = e; 【参考答案】 (1) MyVector::MyVector (2) i.x - j.x, i.y - j.y (3) v1 + v2 29 (1)MyClass(int i = 0):value(i) (2)int MyClass::count = 0; (3)obj2.Print(); 【参考答案】 (1)++q; ++s; (2)(*p = *s) != 0【参考答案】 (1)rad(r) (2)2*c.radius() (3)MyCircle a 30【参考答案】 (1)strcpy(this->name,name); (2)PetType getType() const {return type; } (3)return "an unkown animal"; 【参考答案】 (1)item < setdata[i] (2)setdata[size + i - j] = setdata[size+i-j-1] (3)setdata[size] = item 【参考答案】 (1)point1(p1), point2(p2) (2)length()const (3)point2.getY() - point1.getY() 31 (1)MyClass(const MyClass & copy) { p = new char; *p = *(copy.p); } (2)~MyClass() {delete p; } (3)return *this; 【参考答案】 (1)new int [size] (2)_p[index] = value (3)return _p[index] (4)index >_size 【参考答案】 void doc::count() { for (int i = 0; i < length; ++i) { if(str[i])>='a'&&str[i]<='z') counter[str[i]-'a']+'+; if(str[i])>'A'&&str[i]<='Z') couner[str[i]-'A']+'+; } for (int index = 0; index < 26; ++index) cout<< (char)(index + 65)<< " or "<< (char)(index + 97) << " 出现的次数是:"<< counter[index]<< endl; } 32 (1)MyClass(int x) : flag(x) {} (2)void MyClass::Judge() (3)break; 【参考答案】 (1)int num = 0 (2)*str;(3)str++; 【参考答案】 (1) strcpy(idcardno,id card no) (2) Person(id card no,p name,birth date,is male) (3) Staff Zhangsan("123456789012345","张三",Date(1979,5,10),false,"人事部",1234.56) 33 (1)protected: (2)msg = new char[strlen(str) + 1]; (3)~Base() { delete [] msg; } 【参考答案】 (1)q->link = head (2)p = new node (3)Insert(p) 【参考答案】 for (int i = 0; i < size-1; i++) { int temp = v[i]; v[i] = v[i+1]; v[i+1] = temp; } 34 (1)~MyClass() (2)int value; (3)void MyClass::Print() const 【参考答案】 (1)virtual const char* toString()const = 0 (2)HexNumber(int k) : Number(k) {} (3)cout<< number.toString() (4) show(HexNumber(11)) 【参考答案】 MiniString( const char *s = " ") { length = strlen(s); sPtr = new char[length+1]; strcpy(sPtr, s); } MiniString() { delete [] sPtr; } 35 (1)Circle(int r) : radius(r) {} (2)void Circle::Display() (3)c.Display(); 【参考答案】 (1)x = y (2)Sort(a0, n0) (3)swap(a[j], a[j-1]) (4)break 【参考答案】 MiniString& operator+=(const MiniString& s) { char *pt = new char [length+1]; strcpy(pt, sPtr); int blength = length; length += s.length; delete []sPtr; sPtr = new char[length+1]; strcpy(sPtr,pt); delete []pt; for (int i = 0; i < length; ++i) sPtr[blength+i] = s.sPtr[i]; return *this; } 36 (1)void Judge(MyClass &obj) (2)(ptr+i)->Set (i + 1); (3)delete [] ptr; 【参考答案】 (1)strlen(s) + 1 (2)delete []m_str (3)m_str[n-i-1] (4)m_str[n-i-1] = tmp 【参考答案】 MiniString& operator+ (const MiniString& s) { char *pt = new char [length+1]; strcpy(pt, sPtr); int blength = length; length += s.length; delete []sPtr; sPtr = new char[length+1]; strcpy(sPtr,pt); delete []pt; for (int i = 0; i < length; ++i) sPtr[blength+i] = s.sPtr[i]; return *this; } 37 (1)Rectangle(double x1, double y1, double x2, double y2){ (2)void show(Rectangle r){ (3)cout<< r.getX1()<< " , "<< r.getY1()<< "),down right=("<< r.getX2()<< " , "<< r.getY2(); 【参考答案】 (1)const Point& p (2)distanceTo(p2) (3)Point(down_right.x, upper_left.y) (4)width() * height()【参考答案】 strcpy(name, name); address = new char[strlen( add) + 1]; strcpy(address, add); 38【参考答案】 (1)this->value = value; (2)~MyClass() (3)int MyClass::count = 0; 【参考答案】 (1)virtual void draw() const =0; (2)const Point& pt (3)double x_, y_; (4)x_<< ','<< y_【参考答案】 for(int i = 0; i < M; i++) for(int j = 0; j < i; j++) { int temp = array[i][j]; array[i][j] = array[j][i]; array[j][i] = temp; } 39【参考答案】 (1)char *Name; (2)StudentInfo(char *name, int age, int ID, int courseNum, float record); (3)~StudentInfo() { delete [] Name; } 【参考答案】 (1)virtual (2)virtual (3)itsLength(len), itsWidth(width) (4)Shape* sp; 【参考答案】 n = r.n; p = new int[n]; for (int index = 0; index < n; index++) p[index] = r.p[index]; 40【参考答案】 (1)Door(int n) : num(n), closed(true), locked(true) {} (2)void open(){ // 开门 (3)if(!closed){ 【参考答案】 (1)name (2)n = p.birth_date.getMonth() - birth_date.getMonth() (3)(is_male ? "男" : "女" ) (4)ps[m] 【参考答案】 for (int i = counter-1; i >= 0; i--) if (elem[i] < 0) { for (int j = i; j < counter-1; j++) elem[j] = elem[j+1]; counter--; } 41 (1){ volume = 18; } (2)channel = chan; (3)void setVolumeTo(int vol){ 【参考答案】 (1)x1(root1), x2(root2), num_of_roots(2) (2)switch( num_of_roots (3)a(x.a), b(x.b), c(x.c) (4)return Root() 【参考答案】 int n = 0; n = p.birth date.getYear() - birth date.getYear(); if (n != 0) return n; n = p.birth date.getMonth() - birth date.getMonth(); if (n != 0) return n; return p.birth date.getDay() - birth date.getDay(); 42 (1)if ((++seconds) == 60) (2)return *this; (3)show(++sw); 【参考答案】 (1)Person() (2)virtual void (3): Person(s), gpa(g) (4)Person* p 【参考答案】 if (s == NULL) return true; int len = strlen(s); if (len > size) return false; for (int i = 0; i < len; i++) if ( str[i] != s[i]) return false; return true; 43【参考答案】 (1)Point(int x = 0, int y = 1) (2)void move(int xOff, int yOff) (3)p->print(); 【参考答案】 (1)int[s]; (2)delete []a; (3)a[num] (4)return a[i]; 【参考答案】 if (str == NULL) return 0; int counter = 1; int length = strlen(str); for (int i = 0; i < length; i++) if (isspace(str[i])) counter++; return counter; 44 (1)bool isOn()const{ return intensity==1;} //返回电源开关状态 (2)void turnOff(){ intensity=0;} //关电扇 (3)intensity = inten; 【参考答案】 (1)num_pages(pages) { (2)writer = new char[strlen(the_writer) + 1]; (3)Book(the_title, pages, the_writer) { (4)a_book.theCourse(); 【参考答案】 for (int i = 0; i <= end; i++) { a[i] = element[i]; size++; } for (int k = 0; k <= set.GetEnd(); k++) if (!IsMemberOf(set.GetElement(k))) a[size++] = set.GetElement(k); 45 (1)title = new char[strlen(theTitle) + 1]; (2)bool isOpen()const{ return cur_page != 0;} //书打开时返回true,否则返回false (3)cur_page = 0; 【参考答案】 (1)brand = new char[strlen(the_brand) + 1]; (2)strcpy(number, the_number); (3)category() (4)AutoMobile::show(); 【参考答案】 int s size = strlen(s); for (int i = 0; i < s size; i++) if (str[size - s size + i] != s[i]) return false; return true; 46【参考答案】 (1)return MyClass::v2; (2)int MyClass::v2 = 42; (3)int v1 = obj.getValue()【参考答案】 (1)next(n), data(d) { } (2)top->next; (3)top++ (4)top->data; 【参考答案】 if (end < set.GetEnd()) return false; for (int i = 0; i <= set.GetEnd(); i++) if (!IsMemberOf(set.GetElement(i))) return false; return true; 47【参考答案】 (1)int val; (2)MyClass(int x) : data(x) {} (3){ cout<< "The value of member object is "<< data.GetData()<< endl; } 【参考答案】 (1)arr[i] = sqr%10; (2)k *= 10; (3)n*n == rqs 【参考答案】 Matrix m; for (int i = 0; i < M; i++) for (int j = 0; j < N; j++) m.setElement(i, j, (m1.getElement(i,j) + m2.getElement(i,j))); return m; 【考点分析】 48【参考答案】 (1)MyClass() { value = 0; } (2)void setValue(int val) (3)int value; 【参考答案】 (1)virtual void (2)virtual void (3)vehicle(max_speed, weight), SeatNum(seat_num) {} (4)public bicycle, public motorcar 【参考答案】 for (int i = 0; i < size; i++) for (int j = i+1; j < size; j++) if (data[i] > data[j]) swap(i, j); 49 【参考答案】 (1)char *Name; (2)StudentInfo(char *name, int age, int ID, int courseNum, float record); (3)void StudentInfo::show() const 【参考答案】 (1):x(xValue), y(yValue)
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服