首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。该工程中包含一个程序文件main.cpp,其中有类Quadritic、类Root及主函数main的定义。一个Quadritic对象表示一个aχ2+bχ+c的一元二次多项式。一个Roo
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。该工程中包含一个程序文件main.cpp,其中有类Quadritic、类Root及主函数main的定义。一个Quadritic对象表示一个aχ2+bχ+c的一元二次多项式。一个Roo
admin
2019-05-29
51
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。该工程中包含一个程序文件main.cpp,其中有类Quadritic、类Root及主函数main的定义。一个Quadritic对象表示一个aχ
2
+bχ+c的一元二次多项式。一个Root对象用于表示方程aχ
2
+bχ+c=0的一组根,它的数据成员hum_of_roots有3种可能的值,即0、1和2,分别表示根的3种情况:无实根、有两个相同的实根和有两个不同的实根。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为(注:输出中的X^表示χ
2
):
3X^2+4X+5=0.0 无实根
4.5X^2+6X+2=0.0 有两个相同的实根:-0.666667和-0.666667
1.5X^2+2X-3=0.0 有两个不同的实根:0.896805和-2.23014
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“****found****”。
#1nclude<lostream>
#include<iomanip>
#include<cmath>
using namespace std;
class Root { //一元二次方程的根
public:
const double x1; //第一个根
const double x2; //第二个根
const int num_of_roots;//不同根的数量:0、1或2
//创建一个“无实根”的Root对象
Root():x1(0.0),x2(0.0),num_of_roots(0){}
//创建一个“有两个相同的实根”的Root对象
Root(double root)
//**********found**********
:_______{}
//创建一个“有两个不同的实根”的Root对象
Root(double root1,doubleroot2):x1(root1),x2(root2),num of roots(2){)
void show()const{ //显示根的信息
cout<<"\t\t";
switch(num_of_roots){
case 0:
//**********found**********
case 1:
cout<<"有两个相同的实根:"<<x1<<"和"<<x2;break;
default:
cout<<"有两个不同的实根:"<<x1<<"和"<<x2;break;
}
}
};
class Quadratic { //二次多项式
public:
const double a,b,c;//分别表示二次项、一次项和常数项等3个系数
Quadratic(double a,double b,double c)
//构造函数
//**********found**********
:_______{}
Quadratic(Quadratic&x) //
复制构造函数
:a(x.a),b(x.b),c(x.c){}
Quadratic add(Quadratic x)
const{
//求两个多项式的和
return Quadratic(a+x.a,b+x.b,c+x.c);
}
Quadratic sub (Quadratic x)const{
//求两个多项式的差
//**********found**********
}
double value(double X)const{
//求二次多项式的值
return a*x*x+b*x+c;
}
Root root()const{//求一元二次方程的根
double delta=b*b-4*a*c;//计算判别式
if(delta<0.0)return Root();
if(delta==0.0)
return Root(-b/(2*a));
double sq=sqrt(delta);
return Root((-b+sq)/(2*a),(-b-sq)/(2*a));
}
void show()const{ //显示多项式
cout<<end1<<a<<"X^2"<<showpos<<b<<"X"<<C<<noshowpos;
}
void showFunction(){
//显示一元二次方程
show();
cout<<"=0.0";
}
};
int main(){
Quadratic q1(3.0,4.0,5.0),q2(4.5,6.0,2.0),q3(q2.sub(q1));
q1.showFunction();
q1.root().show();
q2.showFunction();
q2.root().show();
q3.showFunction();
q3.root().show();
cout<<end1;
return 0;
}
选项
答案
(1)x1(root),x2(root),Bum_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);
解析
(1)主要考查考生对构造函数的掌握,题目要求创建一个“有两个相同的实根”的Root对象。说明两个根x1和)x2相等,根的数量为1,因此可以得出语句:xl(root),x2(root),num_of_roots(1){}。
(2)主要考查考生对switch语句的掌握,在语句switch(num_of_roots){中,num_of_roots代表根的数量,当为0时,表示没有根,因此输出无实根,注意要在句尾加break。
(3)主要考查考生对构造函数的掌握,本题使用成员初始化列表来构造函数。
(4)主要考查考生对成员函数的掌握,题目要求求两个多项式的差。两个多项式的差就是各个次方的系数相减,因此得出语句:return Quadratic(a-x.a.b-x.b,c-x.e);。
转载请注明原文地址:https://kaotiyun.com/show/h68p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
构造函数构造函数的主要作用是对数据成员初始化,系统为成员分配内存时,保留这些存储单元的原状。
A、 B、 C、 D、 B此题考查的是虚函数的概念。在成员函数的声明前面加上virtual关键字,即可把函数声明为虚函数。虚函数可以是另一个函数的友元函数而不能是静态成员函数。
A、 B、 C、 D、 BPoint&operator++(){x++;return*this;}是在成员函数运算符重载单目运算符(前缀方式),Pointoperator++(int){Poin
A、 B、 C、 D、 A本题考查数据库系统的基本概念和知识。数据的逻辑结构是数据间关系的描述,它只抽象地反映数据元素之间的逻辑关系,而不管其在计算机中的存储方式。数据的存储结构又叫物理结构,是逻辑结构在计算
面向对象程序设计主要经历了结构化设计和面向对象的程序设计阶段,面向对象在现在的程序设计中得到广泛的应用。
A、 B、 C、 D、 A由于线性表采用的是顺序存储方式,用存储单元的邻接性体现线性表元素间的一维顺序关系,因此对线性表进行插入和删除运算时,可能需要移动大量的结点,以保持这种物理和逻辑的一致性。对于选项A)
参照完整性关系模型的完整性规则是对关系的某种约束条件,它允许定义三类数据约束,分别是:实体完整性、参照完整性及自定义完整性,其中前两种完整性约束由关系数据库系统自动支持。
下列关于栈的叙述中,正确的选项是()。
下列选项中不全是c++语言关键字的是
下列符号中可以用作C++标识符的是()。
随机试题
党的十九大对我国发展新的历史方位作出的重大政治判断是()
常见的表格排版差错包括()等。
某一研发公司又很多个同期在研的项目,这些项目需要公司不同专业职能的人员共同配合完成,在这种情况下,该公司适合采用哪种组织结构模式()
枳术丸原方要求枳实、白术“同为细末,荷叶裹烧饭为丸”,意在()(1999年第50题)
对有稳定收益的项目,农民可以将依法批准的建设用地使用权入股。()
期货公司取得金融期货结算业务资格之日起6个月内,未取得期货交易所结算会员资格的,金融期货结算业务资格自动失效。()
甲公司为增值税一般纳税人,适用的增值税税率为17%。2014年有关销售商品业务资料如下:(1)1月1日,向A公司销售商品一批,增值税专用发票上注明价格为100万元,增值税额为17万元。商品已发出,款项已收到。销售合同规定,该批商品销售价格的20%属于商品售
在我国,政府谋大局,管“国计”;群众视眼前,重“民生”。
社会保障:是指国家和社会根据一定的法律和条件,通过国民收入的再分配,对社会成员的基本生活权利给予物质保障的一系列社会安全制度。根据上述定义,下列不属于社会保障的是:
A、Topreventdisasters.B、Tomobilizeurgentaids.C、Topredictearthquakes.D、Toexplorevulnerableareas.C
最新回复
(
0
)