文档库 最新最全的文档下载
当前位置:文档库 › 多态性习题

多态性习题

多态性习题
多态性习题

第8章-多态性

一、选择题

1.在下列运算符中,不能重载的是( )。

(a) + (b) * (c)- (d) /

2.下列关于运算符重载的描述中,( )是正确的。

(a) 可以改变参与运算的操作数个数(b) 可以改变运算符原来的优先级

(c) 可以改变运算符原来的结合性(d) 可以改变原运算符的功能

3.下列函数中,不能说明为虚函数的是( )。

(a) 私有成员函数(b) 公有成员函数(c) 构造函数(d) 析构函数

4.在派生类中,重载一个虚函数时,要求函数名、参数的个数、参数的类型、参数的顺序和函数的返回值( )。

(a) 相同(b) 不同(c) 相容(d) 部分相同

5.虚析构函数的作用是()。

(a) 虚基类必须定义虚析构函数(b) 类对象作用域结束时释放资源

(c) delete动态对象时释放资源(d) 无意义

6.下面函数原型中,( )声明了fun为纯虚函数。

(a) void fun()=0; (b) virtual void fun()=0;

(c) virtual void fun(); (d) virtual void fun(){ };

7.若一个类中含有纯虚函数,则该类称为( )。

(a) 基类(b) 纯基类(c) 抽象类(d) 派生类

8.假设 Aclass为抽象类,下列正确的说明语句是( )。

(a) Aclass fun( int ) ; (b) Aclass * p ;

(c) int fun( Aclass ) ; (d) Aclass Obj ;

9.下面描述中,正确的是( )。

(a) 虚函数是没有实现的函数(b) 纯虚函数是返回值等于0的函数

(c) 抽象类是只有纯虚函数的类(d) 抽象类指针可以指向不同的派生类

二、阅读下列程序,写出执行结果

1.

#include

using namespace std;

class T

{ public :

T() { a = 0; b = 0; c = 0; }

T( int i, int j, int k )

{ a = i; b =j; c = k; }

void get( int &i, int &j, int &k )

{ i = a; j = b; k = c; }

T operator* ( T obj );

private:

int a , b , c;

};

T T::operator* ( T obj )

{ T tempobj;

tempobj.a = a * obj.a;

tempobj.b = b * obj.b;

tempobj.c = c * obj.c;

return tempobj;

}

int main()

{ T obj1( 1,2,3 ), obj2( 5,5,5 ), obj3;

int a , b , c;

obj3 = obj1 * obj2;

obj3.get( a, b, c );

cout<<"( obj1*obj2 ): "

<<"a = "<

<<"a = "<

private:

int x , y ;

};

int main()

{ Vector v1( 1, 2 ), v2( 3, 4 ), v3 ;

cout << "v1 = " ;

v1.display() ;

cout << "v2 = " ;

v2.display() ;

v3 = v1 + v2 ;

cout << "v3 = v1 + v2 = " ;

v3.display() ;

}

3.

【解答】

5

5

4.

#include

using namespace std;

class Base

{ public:

virtual void getxy( int i,int j = 0 ) { x = i; y = j; } virtual void fun() = 0 ;

protected:

int x , y;

} ;

class A : public Base

{ public:

void fun()

{ cout<<"x = "<

obj3 = obj1 + obj2;

cout << obj3.gets() << endl;

}

(2)使用友员函数

#include

#include

using namespace std;

class s

{ public:

s(){ *str= '\0'; }

s( char *pstr )

{ strcpy( str,pstr );

}

char *gets()

{ return str;

}

friend s operator+( s obj1,s obj2 );

private:

char str[100];

};

s operator+( s obj1,s obj2 )

{ s tempobj;

strcat( tempobj.str,obj1.str );

strcat( tempobj.str,obj2.str );

return tempobj;

}

int main()

{ s obj1( "Visual" ),obj2( " C++" ),obj3;

obj3 = obj1 + obj2;

cout << obj3.gets() << endl;

}

2.使用虚函数编写程序求球体和圆柱体的体积及表面积。由于球体和圆柱体都可以看做由圆继承而

来,所以可以把圆类Circle作为基类。在Circle类中定义一个数据成员radius和两个虚函数area和volume。由Circle类派生Sphere类和Column类。在派生类中对虚函数area和volume重新定义,分别求球体和圆柱体的体积及表面积。

【解答】

#include

using namespace std;

const double PI=3.14159265;

class circle

{ public:

circle(double r) { radius = r; }

virtual double area() { return 0.0; }

virtual double volume() { return 0.0; }

protected:

double radius;

};

class sphere:public circle

{ public:

sphere( double r ):circle( r ){ }

double area()

{ return 4.0 * PI * radius * radius; }

double volume()

{ return 4.0 * PI * radius * radius * radius / 3.0; }

};

class column:public circle

{ public:

column( double r,double h ):circle( r ) { height = h; }

double area()

{ return 2.0 * PI * radius * ( height + radius ); }

double volume()

{ return PI * radius * radius * height; }

private:

double height;

};

int main()

{ circle *p;

sphere sobj(2);

p = &sobj;

cout << "球体:" << endl;

cout << "体积 = " << p->volume() << endl;

cout << "表面积 = " << p->area() << endl;

column cobj( 3,5 );

p = &cobj;

cout << "圆柱体:" << endl;

cout << "体积 = " << p->volume() << endl;

cout << "表面积 = " << p->area() << endl;

}

3.某学校对教师每月工资的计算规定如下:固定工资+课时补贴。教授的固定工资为5000元,每个课时补贴50元。副教授的固定工资为3000元,每个课时补贴30元。讲师的固定工资为2000元,每个课时补贴20元。定义教师抽象类,派生不同职称的教师类,编写程序求若干个教师的月工资。

【解答】

#include

using namespace std;

class teacher

{ public:

teacher( char tname[],int time )

{ strcpy( name,tname );

coursetime = time;

}

virtual int pay() = 0;

virtual void print() = 0;

char *getname()

{ return name; }

int getcoursetime()

{ return coursetime; }

protected:

char name[30];

int coursetime;

};

class professor:public teacher

{ public:

professor( char pname[],int time ):teacher( pname,time ){ }

int pay()

{ return 5000+coursetime*50; }

void print()

{ cout<<"教授:"<

};

class associateprofessor:public teacher

{ public:

associateprofessor( char pname[],int time ):teacher( pname,time ){ }

int pay()

{ return 3000 + coursetime * 30; }

void print()

{ cout << "副教授:" << getname(); }

};

class lecturer:public teacher

{ public:

lecturer( char pname[],int time ):teacher( pname,time ){ }

int pay()

{ return 2000 + coursetime * 20; }

void print()

{ cout << "讲师:" << getname();}

};

int main()

{ professor pobj( "李小平",32 );

pobj.print();

cout << '\t' << "工资:" << pobj.pay() << endl; associateprofessor apobj( "王芳芳",56 );

apobj.print();

cout << '\t' << "工资:" << apobj.pay() << endl; lecturer lobj( "何大建",72 );

lobj.print();

cout << '\t' << "工资:" << lobj.pay() << endl; }

第八章 群体遗传学(答案)

第八章群体遗传学(答案) 一、选择题 (一)单项选择题 *1. 基因库是: A.一个体的全部遗传信息B.一孟德尔群体的全部遗传信息C.所有生物个体的全部遗传信息D.所有同种生物个体的全部遗传信息E.一细胞内的全部遗传信息 2. 一个有性生殖群体所含的全部遗传信息称为: A.基因组B.基因文库C.基因库D.基因频率 E.基因型频率 *3. 一个遗传不平衡的群体随机交配()代后可达到遗传平衡。 A.1代B.2代C.2代以上D.无数代E.以上都不对 4. 在10000人组成的群体中,M型血有3600人,N型血有l600人.MN型血有4800人,该群体是: A.非遗传平衡群体B.遗传平衡群体C.χ2检验后,才能判定 D.无法判定 E. 以上都不对 *5.遗传平衡定律适合: A.常染色体上的一对等位基因B.常染色体上的复等位基因C.X-连锁基因D.A+B E.A+B+C *6.不影响遗传平衡的因素是: A.群体的大小B.群体中个体的寿命C.群体中个体的大规模迁移 D.群体中选择性交配E.选择 7.已知群体中基因型BB、Bb和bb的频率分别为40%,50%和10%,b基因的频率为:A.0.65 B.0.45 C.0.35 D.0.30 E.0.25 8.先天性聋哑(AR)的群体发病率为0.0004,该群体中携带者的频率是: A.0.01 B.0.02 C.0.0002 D.0.04 E.0.1 9. PTC味盲为常染色体隐性性状,我国汉族人群中PTC味盲者占9%,相对味盲基因的显性基因频率是: A.0.09 B.0.49 C.0.42 D.0.7 E.0.3 *10.下列哪项不会改变群体的基因频率: A.群体变为很小B.群体内随机交配C.选择放松 D.选择系数增加E.突变率的降低 11. 最终决定一个体适合度的是: A.健康状况B.寿命C.性别D.生殖能力E.生存能力 12. 随着医疗技术的进步,某种遗传病患者经治疗,可以和正常人一样存活并生育子女,若干年后,该疾病的变化是: A.无变化 B.发病率降低 C.发病率升高D.突变率升高E.发病率下降到零 13. 选择放松使显性致病基因和隐性致病基因频率: A.同样的速度增加 B. 同样的速度降低 C. 显性致病基因频率增加快,隐性致病基因频率增加慢D.显性致病基因频率降低快,隐性基因频率降低慢 E. 二者那不变 14. 近亲婚配后代常染色体隐性遗传病的发病风险提高的倍数与致病基因频率q的关系是: A. q越大,提高的倍数越多 B. q越小,提高的倍数越多C.提高的倍数与q无关D.无论q的大小,提高的倍数都一样E.以上都不对 *15.遗传平衡群体保持不变的是: A.基因频率B.基因型频率C.群体的大小D.群体的适合范围E.A十B *16.一对夫妇表型正常,妻子的弟弟是白化病(AR)患者。假定白化病在人群中的发病率为1/10000,这对夫妇生下白化病患儿的概率是: A.1/4 B.1/100 C.1/200 D.1/300 E.1/400 17.下列处于遗传平衡状态的群体是: A.AA:0.20;Aa:0.60;aa:0.20 B.AA:0.25;Aa:0.50;aa:0.25 C.AA:0.30;Aa:0.50;aa:0.20 D.AA:0.50;Aa:0;aa:0.50 E.AA:0.75;Aa:0.25;aa:0

JAVA复习题 有答案

复习题 一、选择题 1、下列Java标志符中合法的是:() A H3_sum B -name C student# D 9_Hello123 2.Java源文件和编译后的文件扩展名分别为() A. .class和.java B. .java和.class C. .class和.class D. .java和.java 3.对于同一消息,对象可以产生不同的行为,这称为类的什么特性?()A)继承性B)封装性C)多态性D)抽象性 4、用来引入包语句的关键词是:() A)import B)abstract C)package D)extends 5.对于小程序,当离开包含Applet的主页后又再返回时将调用()方法。A)start( ) B)init( ) C)destroy( ) D)stop( ) 6.下列对Java中的继承描述错误的说法是() A.子类只能有一个父类 B.子类可作为另一个子类的父类 C.子类可以访问父类的私有属性 D.子类继承父类的方法访问权限保持不变 7.哪种循环在条件表达式被计算之前至少执行循环体语句一次?( ) A)do-while循环B)for循环C)while循环D)以上都不是 8.定义数组String[] a={"ab","abc","abcd","abcde"},数组中a[1]指的是()。 A.ab B.abc C.abcde D.数组越界 9.如果希望组件从左往右,从上到下自动布局界面,应使用哪种布局?()A)没有B)BorderLayout C)FlowLayout D)GridLayout 10.下列说法正确的是() A. 最终类在特殊情况下可以有子类 B. 抽象类只能有一个子类 C. 多态可以通过方法重写和方法重载实现 D. 抽象类不可以声明成员变量和成员方法,只能声明抽象方法 11.下列语句中访问类的方法正确的是:() A)https://www.wendangku.net/doc/c94922362.html, B)https://www.wendangku.net/doc/c94922362.html,( ) C)book->name D)book_name 12.下列选项中哪个是类Pen的构造方法() A)public void Pen() {} B)public static Pen() {} C)public Pen() {} D)public static void Pen() {} 13.单击菜单触发的事件是?() A. ActionEvent B.ItemEvent C.MouseEvent D. KeyEvent 14.关于try/catch/finally结构的异常捕获和处理,说法错误的是()A)try部分是必须的B)catch部分也是必须的 C)可以有多个catch部分D)finally部分也是必须的

实验6 多态性(一)

福建农林大学实验报告 实验6 多态性(一) 一、实验目的和要求 (1)掌握虚函数的定义与使用方法,进一步理解多态性的概念和分类。 (2)了解纯虚函数和抽象类的使用方法。 二、实验内容和原理 1、分析并调试下列程序,回答以下问题:(1)指出抽象类(2)指出虚函数,并说明它的作用(3)每个类的作用是什么?整个程序的作用是什么? 2、使用虚函数编写程序求球体、圆柱体和圆锥的体积,由于球体、圆柱体和圆锥都可以看做由圆继 承而来,所以可以定义圆类作为基类。在圆类中定义数据成员半径和一个求体积的虚函数。由圆类 派生出球体类、圆柱体类和圆锥类,在派生类中对圆类中的虚函数重新定义。编写一个外部函数求 各类形状的总体积。最后在main()函数中构造若干形状,并求它们的体积和。

三、实验环境 1. 硬件:PC机; 2. 软件:Windows操作系统、Visual C++ 6.0 四、算法描述及实验步骤 1、算法描述及步骤如下: (1)根据题目要求编写好程序代码并在VC环境下输入源程序。 (2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。 (3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之。本题改正后的代码如下: #include const double PI=3.1415; class Shap { public:virtual double Area()=0; }; class Triangle:public Shap { public:Triangle(double h,double w) { H=h; W=w; } double Area() { return 0.5*H*W; } private:double H,W; }; class Circle:public Shap { public:Circle(double r) { R=r; } double Area() { return PI*R*R; } private:double R; }; double Total(Shap*s[],int n) { double sum=0; for(int i=0;i

第八章 主要组织相容性复合体

第八章主要组织相容性复合体 学时:2 目的要求: 1.掌握:主要组织相容性复合体的概念,基因构成。HLA分子的分布,结构和功能。 2.熟悉:HLA分子表的影响因素,HLA多态性的遗传基础,HLA在医学上的意义。 3.了解:非经典HLA分子,HLA分型。 教学内容: 1.MHC的概念和基因构成:小鼠H-2复合体和人类HLA复合体。 2.HLA-I类和II类分子的分布、结构和功能。非经典HLA分子的功能。HLA分子表达的影响因子。 3.HLA多态性的遗传基础。 4.HLA在医学上的意义-与器官移植,免疫应答及疾病的关系。 [本章主要内容] 一、概述 20世纪初,不同种系小鼠间皮肤移植可以诱发移植排斥反应,对移植物的排斥反应是受体对移植细胞表面抗原的免疫应答,即供、受者组织抗原的相似程度(组织相容的程度)决定了移植物的存活。 组织相容性抗原(histocompatibility antigen):通过移植鉴定的与组织移植排斥反应有关的抗原。 主要组织相容性抗原系统(major histocompatibility antigen system, MHS):能引起较强移植排斥反应的组织细胞抗原。 主要组织相容性复合体(major histocompatibility complex, MHC):编码主要组织相容性抗原的基因群。 人类白细胞抗原(human leukocyte antigen, HLA):指人的主要组织相容性抗原系统。由于首先在人外周血白细胞表面发现,故称人类白细胞抗原。编码该抗原的基因称为HLA复合体,即人类的MHC。 H-2复合体:指小鼠的MHC,编码小鼠的主要组织相容性抗原,即H-2系统。 MHC通常指基因;MHC分子或主要组织相容性抗原指MHC基因编码的产物。对于某一动物,MHC可同时代表基因和抗原,如H-2可用于指基因和编码的分子。 不同动物的MHC的名称不同。 二、MHC的基因构成 (一)小鼠H-2复合体 定位于第17号染色体,包括K、I、S、D/L等基因。根据各基因编码分子不同分成三类:I类基因:包含K、D、L位点基因,编码I类分子的重链; Ⅱ类基因:包括I位点基因,可分为I-A和I-E亚区,编码Ⅱ类分子。Ir基因(免疫应答基因,immune response gene):位于I区,Ia抗原(I区相关抗原,I region associated antigen):Ir基因编码产物。 Ⅲ类基因:为S区基因,编码补体C4、C2、B因子及肿瘤坏死因子(TNF-α、TNF-β)等分子。 (二)人类HLA复合体 定位于第6号染色体短臂(6p21,3)。分成三类基因区: I类基因:位于HLA基因复合体远离着丝点的一端,包括经典基因HLA-B、C、A基因位点和非典型基因HLA-E、F、G位点等。

c练习题带答案

c练习题带答案集团标准化工作小组 #Q8QGGQT-GX8G08Q8-

一、选择题 1.C++语言属于( C )。 A)自然语言 B)机器语言 C)面向对象语言 D)汇编语言2.下面选项中不属于面向对象程序设计特征的是(C) 。 A)继承性 B)多态性 C)相似性 D)封装性 3.可用作C++语言用户标识符的一组标识符是( B )。 A) void define +WORD B) a3_b3 _123 YN C) for -abc Case D) 2a DO sizeof 4.假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素 a[2][1]的值为(A)。 A) 0 B) 4 C) 8 D) 6 5.下列情况中,哪一种情况不会调用拷贝构造函数( B ) A)用派生类的对象去初始化基类对象时 B)将类的一个对象赋值给该类的另一个对象时 C)函数的形参是类的对象,调用函数进行形参和实参结合时 D)函数的返回值是类的对象,函数执行返回调用者时 6.以下哪一关键字可用于重载函数的区分(C) A)extern B)static C)const D)virtual 7.下列有关数组的叙述中,正确的是( B ) A)C++中数组的存储方式为列优先存储 B)数组名可以作为实参赋值给指针类型的形参 C)数组下标索引从1开始,至数组长度n结束 D)数组指针的语法形式为:类型名 *数组名[下标表达式]; 8.下列有关继承和派生的叙述中,正确的是( C ) A)派生类不能访问通过私有继承的基类的保护成员 B)多继承的虚基类不能够实例化 C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数 D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现 9.实现运行时多态的机制是( A ) A)虚函数B)重载函数C)静态函数D)模版函数 10.若有下面的函数调用: fun(a+b, 3, max(n-1, b)); 其中实参的个数是( A) A)3 B)4 C)5 D)6 11.下列关于this指针的说法正确的是( B)

实验八 多态性

实验八多态性 1.填空 (1)关键字operator 引入了重载运算符函数定义。 (2)不能重载的C++运算符是类属关系运算符"."、成员指针运算符".*"、作用域分辨符"::" 、sizeof运算符和三目运算符"?:" 。 (3)通过重载运算符不能修改运算符的操作对象个数、优先级、和结合性。 2、选择题,先选择,然后解释选择的理由: (1) 运算符重载时不需要保持的性质是:(A ) A)操作数类型 B)操作数个数 C)优先级 D)结合性 解释:通过重载运算符不能修改运算符的操作对象个数、优先级、和结合性。但其他的可以改变。 (2) 有如下类定义和变量定义: #include class X { int a; void setX (int x) {a=x;} public: void showX() {cout<<"a="<

(3) 有如下类定义: #include class A { int xx; public: A():xx(0) {cout<<'A';} A(int n):xx(n) {cout<<'B';} }; class B:public A { int yy; public: B():yy(0){cout<

实验8 多态性与虚函数

实验八多态性与虚函数 一、实验目的和要求 1.了解多态的概念; 2.了解虚函数的作用及使用方法; 3.了解静态关联和动态关联的概念和用法; 4.了解纯虚函数和抽象类的概念和用法 二、实验内容和结果 1.阅读下面的程序 1.1请写出程序的执行结果,并在上机时对照理解 class Vehicle {public: void run() const { cout << "run a vehicle. "<

airplane.run(); cout<<"(b) 用指向基类的指针访问成员函数: "<run(); vp=&airplane; vp‐>run(); } 1.2 如果将Vehicle 类的定义修改为虚函数,其余不变,请写出程序的执行结果,并在上机时对照理解 class Vehicle {public: virtual void run() const { cout << "run a vehicle. "<

基因多态性分析

. 人基因多态性分析 一、实验目的 1. 了解基因多态性在阐明人体对疾病、毒物的易感性与耐受性、疾病临床表现的多样性以及对药物治疗的反应性中的重要作用。 2. 了解分析基因多态性的基本原理和研究方法。 二、实验原理 基因多态性(gene polymorphism)是指在一个生物群体中,同时存在两种及以上的变异型或基因型或等位基因,也称为遗传多态性(genetic polymorphism)。人类基因多态性对于阐明人体对疾病的易感性、毒物的耐受性、药物代谢差异及遗传性疾病的分子机制有重大意义;与致病基因连锁的多态性位点可作为遗传病的诊断标记,并为分离克隆致病基因提供依据;病因未知的疾病与候选基因多态性的相关性分析,可用于辅助筛选致病易感基因。 聚合酶链反应-限制性片段长度多态性(polymerase chain reaction—Restriction Fragment Length Polymorphism,PCR-RFLP)分析是一种常用的DNA分子标记。原理是通过PCR扩增获得目的基因。若目的基因存在等位变异(多态性),且变异正好发生在某种限制性内切酶识别位点上,使酶切位点增加或者消失,则酶切结果就会产生大小不同的片段,即片段长度多态性,再利用琼脂糖凝胶电泳分离,可呈现出多态性电泳图谱。若将患者与正常的多态性图谱比较,可确定是否变异。应用PCR-RFLP,可检测某一致病基因已知的点突变,进行直接基因诊断,也可以此为遗传标记进行连锁分析进行间接基因诊断。 三、器材与试剂 1. 器材 ⑴离心机。 ⑵DNA扩增仪。 ⑶电泳仪。 ⑷水平电泳槽。 ⑸紫外检测仪。 ⑹移液器。 2. 试剂 . . ⑴口腔拭子DNA抽提试剂盒。 ⑵琼脂糖。 ⑶1×TAE电泳缓冲液:980ml蒸馏水中加入50×TAE母液20ml。 ⑷50×TAE母液:Tris 121g,0.5M EDTA(pH8.0)50ml,冰醋酸28.55ml,定容至500ml。

8.第八章 群体遗传学

(一)选择题(A型选择题) 1.群体中尿黑酸尿症(AR)的杂合子频率为0.004,那么______。 A.随机婚配后代患尿黑酸尿症的风险是0.00002 B.随机婚配后代患尿黑酸尿症的风险是0.00004 C.姑表兄妹婚配后代患尿黑酸尿症的风险是0.008 D.姑表兄妹婚配后代患尿黑酸尿症的风险是0.004 E.舅甥女之间的近婚系数是1/8 2.孟德尔群体是指。 A.生活在一定空间范围内,能相互交配的同种个体 B.生活在一定空间范围内的所有生物个体 C.生活在一定空间范围内能相互交配的所有生物个体 D.生活在一定空间范围内的所有同种生物个体 E.以上都不对 3.基因库是指。 A.一个个体的全部遗传信息 B.一个孟德尔群体的全部遗传信息 C.所有生物个体的全部遗传信息 D.所有同种生物个体的全部遗传信息 E.一个细胞内的全部遗传信息 4.一个遗传不平衡的群体,随即交配多少代后可达到遗传平衡。 A.1代 B.2代 C.2代以上 D.无数代 E.以上都不对 5.一个947人的群体,M血型348人,N血型103人,MN血型496人,则。 A.M血型者占36.7% B.M基因的频率为0.66 C.N基因的频率为0.63 D.MN血型者占55.4% E.N血型者占36.7% 6.______不是影响遗传平衡的因素。 A.群体的大小 B.群体中个体的寿命 C.群体中个体的大规模迁移 D.群体中选择性交配 E.选择 7.Hardy-Weinberg平衡律不含______。 A.在一个大群体中 B.选型婚配 C.没有突变发生 D.没有大规模迁移 E.群体中基因频率和基因型频率在世代传递中保持不变 8.在一个100人的群体中,AA为60%,Aa为20%,aa为20%,那么该群体中______。 A.A基因的频率为0.3 B.a基因的频率为0.7 C.是一个遗传平衡群体 D.是一遗传不平衡群体 E.经过一代后基因频率和基因型频率都会发生变化 9.对于一种相对罕见的X连锁隐性遗传病,其男性发病率为q, ______ 。 A.人群中杂合子频率为2pq B.女性发病率是p2 C.男性患者是女性患者的两倍 D.女性患者是男性患者的两倍 E.女性发病率为q2 10.在遗传平衡的基础上,下列数据不对的是______。 A.对于一种罕见的AD病,几乎所有的受累者均为杂合子 B.对于一种罕见的AR病,杂合携带者的频率约为致病基因频率的2倍 C.对于一种罕见的XD病,男性患者是女性患者的1/2 D.对于一种罕见的XR病,男性患者为女性患者的1/q E.对于一种罕见的Y伴性遗传病,男性患者是女性患者的2倍 11.以AR为例,亲属之间的亲缘系数不对的是______。 A.姨表兄妹为1/8 B.祖孙为1/4 C.舅甥为1/2 D.同胞兄妹为1/2 E.同卵双生子兄妹为1 12.能影响遗传负荷的因素是______。

北大青鸟推荐:Java精选笔试题(含答案解析)

北大青鸟推荐:Java精选笔试题(含答案解析)如果你是计算机专业出生,但是还没有找到工作的话,你就得补补技术了,一些关于面试、笔试的题要多刷一刷。有可能你知道答案,但是由于语言组织能力有所欠缺,所以面试官的印象不是很好,下面分享一些Java精选的鄙视题,希望对面试这者有帮助。 1,volatile关键字是否能保证线程安全?() 答案:否 volatile关键字用在多线程同步中,可保证读取的可见性,JVM只是保证从主内存加载到线程工作内存的值是最新的读取值,而非cache中。但多个线程对volatile的写操作,无法保证线程安全。 假如线程1,线程2 在进行read,load 操作中,发现主内存中count的值都是5,那么都会加载这个最新的值,在线程1对count进行修改之后,会write到主内存中,主内存中的count变量就会变为6;线程2由于已经进行read,load操作,在进行运算之后,也会更新主内存count的变量值为6;导致两个线程及时volatile关键字修改之后,还是会存在并发的情况。 2,下面哪个流类属于面向字符的输入流( ) A、BufferedWriter B、FileInputStream C、ObjectInputStream D、InputStreamReader 答案:D Java的IO操作中有面向字节(Byte)和面向字符(Character)两种方式。

面向字节的操作为以8位为单位对二进制的数据进行操作,对数据不进行转换,这些类都是InputStream和OutputStream的子类。 面向字符的操作为以字符为单位对数据进行操作,在读的时候将二进制数据转为字符,在写的时候将字符转为二进制数据,这些类都是Reader和Writer的子类。 3,Java能不能不通过构造函数创建对象() A、能 B、不能 答案:A Java创建对象的几种方式: (1) 用new语句创建对象,这是最常见的创建对象的方法。 (2) 运用反射手段,调用https://www.wendangku.net/doc/c94922362.html,ng.Class或者https://www.wendangku.net/doc/c94922362.html,ng.reflect.Constructor类的newInstance()实例方法。 (3) 调用对象的clone()方法。 (4) 运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。 (1)和(2)都会明确的显式的调用构造函数;(3)是在内存上对已有对象的影印,所以不会调用构造函数;(4)是从文件中还原类的对象,也不会调用构造函数。 4,下列哪个叙述是正确的() A.子类继承父类的构造方法。 B.abstract类的子类必须是非abstract类。 C.子类继承的方法只能操作子类继承和隐藏的成员变量。 D.子类重写或新增的方法也能直接操作被子类隐藏的成员变量。 答案:C 子类是不继承父类的构造方法的,而是必须调用其父类的构造方法。

实验三多态性实验报告

浙江理工大学信息学院 实验指导书 实验名称:类的多态性的实现学时安排:3 实验类别:设计性实验实验要求:1人1组 学号:姓名:  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 一、实验目的 1.理解重载运算符的意义。 2.掌握使用成员函数、友员函数重载运算符的特点。 3.掌握重载运算符函数的调用方法。 4.掌握动态联编的概念。 5.掌握虚函数和纯虚函数的使用方法。 二、实验原理介绍 设计性实验 具体原理请见实验内容和步骤 实现对抽象类的继承,通过operator函数调用的形式,实现运算符的重载 三、实验设备介绍 软件需求: windows或linux下的c++编译器 硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。 四、实验内容 某公司的员工有经理Manager、技术人员Technicist和营销人员SalsePerson,他们的薪金计算方法如下: 经理按月计酬,方法是:基本工资+奖金;技术人员按月计酬,方法是:基本工资;营销人员按月计酬,方法是:基本工资+销售利润*5%。 每类人员都有职工编号、姓名、性别、入职时间、职位、基本工资等数据;各类人员

使用统一接口get_pay()计算各类人员的月薪,重载<<运算符实现员工信息的输出。其次,设计一个统计并输出该公司员工当月薪金情况的报表类Report,该类提供insert接口向Report类的容器中添加员工信息,并提供print接口用于展示以职位为单位的每个员工的职工编号、姓名、性别、入职时间以及当月该员工的薪酬,并统计出该职位员工薪酬的最高值和最低值。为了提供更方便的查找功能,请为Report类重载[]运算符,下标值为职位,能根据职位信息查找出所有符合该职位的员工。在主函数中对实现的类进行测试,首先,创建各类人员对象,通过Report类的insert接口向报表中添加这些人员信息,然后通过Report类的print接口输出当月员工薪酬情况报表。存储员工对象的容器请选用合适的STL容器。 五程序清单 ormat("ddd")<<"\t"; cout<<(*it)->getbasicmoney()<<"\t"<<"\t"; cout<<(*it)->getpay(month) << endl; } } void Report::insert(Employee* p) { (p); } Report::~Report(){ list::iterator it; for(it = (); it != (); it ++){ delete *it; } } double Technicist::getpay(int m){ return basicmoney; } double SalesPerson::getpay(int m){ return basicmoney + sales[m] * ;

特发性卵巢早衰患者AMH,AMHR—Ⅱ基因多态性分析

特发性卵巢早衰患者AMH,AMHR—Ⅱ基因多态性分析 目的探讨特发性卵巢早衰与AMH,AMHR-Ⅱ的基因多态性。方法选择2015年6月~2017年3月在我院诊断的特发性卵巢早衰患者50例为POF组。另选择健康体检者100例为对照组。PCR方法测定两组AMH,AMHR-Ⅱ基因多态性。结果POF组AMH基因突变位点基因型及等位基因频率与对照组比较差异无统计学意义(P>0.05)。POF组AMHR-Ⅱ c.49+10T>G 基因位点GG基因型比例显著高于对照组,G等位基因频率显著高于对照组,c.622-2C>T基因位点TT基因型比例显著高于对照组,T等位基因频率显著高于对照组,c.622-24C>A 基因位点AA基因型比例显著高于对照组,A等位基因频率显著高于对照组,c.1038G>T基因位点TT基因型比例显著高于对照组,T等位基因频率显著高于对照组,差异均有统计学意义(P<0.05)。结论AMHR-Ⅱ基因多态性可能是特发性卵巢早衰的重要的发病机制。 [Abstract] Objective To discuss polymorphism analysis of AMH,AMHR-Ⅱgene in patients with idiopathic premature ovarian failure. Methods 50 cases with idiopathic premature ovarian failure from Jun 2015 to Mar 2017 were selected as POF group. And 100 cases for physical examination were selected as control group. Polymorphismof AMH,AMHR- II gene of two groups was detected by PCR. Results Genotype and allele frequency of AMH gene mutation sites of POF group showed no significant difference with the control group(P>0.05). The proportion of GG genotype in AMHR- loci II,c.49+10T>G of POF group was higher than that of the control group,and G allele frequency was higher than that of the control group;The proportion ofTTgenotype inc.622-2C>Tof POF group was higher than that of the control group,and Tallele frequency was higher than that of the control group;The proportion ofAAgenotype inc.622-24C>Aof POF group was higher than that of the control group,and Aallele frequency was higher than that of the control group;The proportion ofTTgenotype inc.1038G>Tof POF group was higher than that of the control group,and Tallele frequency was higher than that of the control group;The difference showed significant difference(P<0.05). Conclusion Polymorphism of AMHR-Ⅱgene may be an important pathogenesis of idiopathic premature ovarian failure. [Key words] Idiopathic premature ovarian failure;AMH;AMHR-Ⅱ;Gene polymorphism 特發性卵巢早衰是指無精确原因的,自身免疫抗体正常的,染色体核型正常的女性在40周岁之前出现的性器官萎缩、持续性闭经,伴有卵泡雌激素、黄体生成素升高,雌激素下降的一种综合征[1-2]。我国卵巢早衰的发病率相对较高,而其中有80%为特发性卵巢早衰,患者主要表现为月经紊乱,血管 舒缩功能不稳定,容易出汗、潮热、情绪波动等。目前特发性卵巢早衰的发病机制还不十分明确,可能与遗传、自身免疫因素、感染、代谢异常、环境等有

第八章练习题

第八章 2χ检验 练 习 题 一、单项选择题 1. 利用2χ检验公式不适合解决的实际问题是 A. 比较两种药物的有效率 B. 检验某种疾病与基因多态性的关系 C. 两组有序试验结果的药物疗效 D. 药物三种不同剂量显效率有无差别 E. 两组病情“轻、中、重”的构成比例 2.欲比较两组阳性反应率, 在样本量非常小的情况下(如1210,10n n <<), 应采用 A. 四格表2χ检验 B. 校正四格表2χ检验 C. Fisher 确切概率法 D. 配对2χ检验 E. 校正配对2χ检验 3.进行四组样本率比较的2χ检验,如22 0.01,3χχ>,可认为 A. 四组样本率均不相同 B. 四组总体率均不相同 C. 四组样本率相差较大 D. 至少有两组样本率不相同 E. 至少有两组总体率不相同 4. 从甲、乙两文中,查到同类研究的两个率比较的2χ检验,甲文22 0.01,1χχ>,乙文22 0.05,1χχ>,可认为 A. 两文结果有矛盾 B. 两文结果完全相同 C. 甲文结果更为可信 D. 乙文结果更为可信 E. 甲文说明总体的差异较大 5. 两组有效率比较检验功效的相关因素是 A. 检验水准和样本率 B. 总体率差别和样本含量 C. 样本含量和样本率 D. 总体率差别和理论频数 E. 容许误差和检验水准 答案:C C E C B 二、计算与分析 1.某神经内科医师观察291例脑梗塞病人,其中102例病人用西医疗法,其它189 例病人采用西医疗法加中医疗法,观察一年后,单纯用西医疗法组的病人死亡13例,采用中西医疗法组的病人死亡9例,请分析两组病人的死亡率差异是否有统计学意义

Java接口多态实验(修正版带实验答案)

实验9:接口、多态性 一、实验目的与要求 1、多态性的概念、技术基础 2、构造方法的调用顺序 3、总结接口的应用 二、内容概要 1、多态性概念 是指不同类型的对象可以响应相同的消息。从相同的基类派生出来的多个类型可被当作同一种类型对待,可对这些不同的类型进行同样的处理,由于多态性,这些不同派生类对象响应同一方法时的行为是有所差别的。 例如 ●Cat行为是吃鱼,Dog行为是吃骨头 ●所有的Object类的对象都响应toString()方法 2、多态性的技术基础 ●向上塑型技术:一个父类的引用变量可以指向不同的子类对象 ●动态绑定技术:运行时根据父类引用变量所指对象的实际类型执行相应的子类方法,从 而实现多态性 3、多态性的好处 应用程序不必为每一个派生类(子类)编写功能调用,只要对基类(特别是抽象基类)或接口处理即可,“以不变应万变”,大大提高程序的可复用性。 例如:下面代码Waiter类中的callPersonEat方法参数是Person 类型,所以利用向上塑性技术可以给其传参数China和USA类型。而该方法体p.eat(); ,利用动态邦定技术运行时候根据p引用的具体对象调用创建对象时所属类的eat方法 interface Person{ public void eat(); } class China implements Person{ public void eat(){ System.out.println("chinese use chopsticks"); } } class USA implements Person{ public void eat(){ System.out.println("usa use forks"); } } class Waiter{ static void callPersonEat(Person p){ p.eat(); //实例方法调用,动态绑定 } public static void main(String a[]){

基因多态性分析

人基因多态性分析 一、实验目的 1. 了解基因多态性在阐明人体对疾病、毒物的易感性与耐受性、疾病临床表现的多样性以及对药物治疗的反应性中的重要作用。 2. 了解分析基因多态性的基本原理和研究方法。 二、实验原理 基因多态性(gene polymorphism)是指在一个生物群体中,同时存在两种及以上的变异型或基因型或等位基因,也称为遗传多态性(genetic polymorphism)。人类基因多态性对于阐明人体对疾病的易感性、毒物的耐受性、药物代谢差异及遗传性疾病的分子机制有重大意义;与致病基因连锁的多态性位点可作为遗传病的诊断标记,并为分离克隆致病基因提供依据;病因未知的疾病与候选基因多态性的相关性分析,可用于辅助筛选致病易感基因。 聚合酶链反应-限制性片段长度多态性(polymerase chain reaction—Restriction Fragment Length Polymorphism,PCR-RFLP)分析是一种常用的DNA分子标记。原理是通过PCR扩增获得目的基因。若目的基因存在等位变异(多态性),且变异正好发生在某种限制性内切酶识别位点上,使酶切位点增加或者消失,则酶切结果就会产生大小不同的片段,即片段长度多态性,再利用琼脂糖凝胶电泳分离,可呈现出多态性电泳图谱。若将患者与正常的多态性图谱比较,可确定是否变异。应用PCR-RFLP,可检测某一致病基因已知的点突变,进行直接基因诊断,也可以此为遗传标记进行连锁分析进行间接基因诊断。 三、器材与试剂 1. 器材 ⑴离心机。 ⑵DNA扩增仪。 ⑶电泳仪。 ⑷水平电泳槽。 ⑸紫外检测仪。 ⑹移液器。 2. 试剂

C++试题及答案 (五)

C++程序设计模拟试卷(五) 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中 只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无 分。 1. 静态成员函数没有() A. 返回值 B. this指针 C. 指针参数 D. 返回类型 答案:B 解析:静态成员函数是普通的函数前加入static,它具有函数的所有的特征:返回类型、 形参,所以使用静态成员函数,指针可以作为形参,也具有返回值。静态成员是类具有的 属性,不是对象的特征,而this表示的是隐藏的对象的指针,因此静态成员函数没有this 指针。静态成员函数当在类外定义时,要注意不能使用static关键字作为前缀。由于静态成员函数在类中只有一个拷贝(副本),因此它访问对象的成员时要受到一些限制:静态成员函数可以直接访问类中说明的静态成员,但不能直接访问类中说明的非静态成员;若要访问非静态成员时,必须通过参数传递的方式得到相应的对象,再通过对象来访问。 2. 在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管 理操作的函数是() A. 友元函数 B. 虚函数 C. 构造函数 D. 析构函数 答案:C 解析:定义构造函数作用就是初始化对象,而析构函数释放对象空间。虚函数用于完成多 态性,友元增加访问方便性。 3. 所有在函数中定义的变量,都是() A. 全局变量 B. 局部变量 C. 静态变量 D. 寄存器变量 答案:B 解析:变量存储类可分为两类:全局变量和局部变量。 (1)全局变量:在函数外部定义的变量称为全局变量,其作用域为:从定义变量的位置开始 到源程序结束。全局变量增加了函数之间数据联系的渠道,全局变量作用域内的函数,均可使用、修改该全局变量的值,但是使用全局变量降低了程序的可理解性,软件工程学提倡尽量避免使用全局变量。 (2)局部变量:在函数内部定义的变量称为局部变量,其作用域为:从定义变量的位置开始 到函数结束。局部变量包含自动变量(auto)静态变量(static)以及函数参数。 auto变量意味着变量的存储空间的分配与释放是自动进行的。说明符auto可以省略。函数中 的局部变量存放在栈空间。在函数开始运行时,局部变量被分配内存单元,函数结束时,局部变量释放内存单元。因此,任两个函数中的局部变量可以同名,因其占有不同的内存单元而不影响使用。这有利于实现软件开发的模块化。 static变量是定义在函数体内的变量,存放在静态存储区,不用栈空间存储,其值并不随存 储空间的释放而消失。 4. 假定AB为一个类,则执行“AB a(2), b[3],*p[4];”语句时调用该类构造函数的次数 为() A. 3 B. 4 C. 5 D. 9 答案:B 解析: a(2)调用1次带参数的构造函数,b[3]调用3次无参数的构造函数,指针没有给它 分配空间,没有调用构造函数。所以共调用构造函数的次数为4。 5. 如果表达式++a中的“++”是作为成员函数重载的运算符,若采用运算符函数调用格式,则可表示为() A. a.operator++(1) B. operator++(a) C. operator++(a,1) D. a.operator++() 答案:D 解析:运算符的重载,前缀先让变量变化。调用++a,等价为a.operator++(),注意无参 的形式。后缀的话a++,等价于a.operator(0),带形参,形参名可省。 6. 已知f1和f2是同一类的两个成员函数,但f1不能直接调用f2,这说明() A. f1和f2都是静态函数 B. f1不是静态函数,f2是静态函数 C. f1是静态函数,f2不是静态函数

c++多态性与虚函数习题

作业题 一、写出下列程序运行结果 1.#include using namespace std; class A { public: virtual void func( ) {cout<<”func in class A”< using namespace std; class A{ public: virtual ~A( ){ cout<<”A::~A( ) called “<

}; void fun(A *a) { delete a; } int main( ) { A *a=new B(10); fun(a); } 二、程序设计题 1有一个交通工具类vehicle,将它作为基类派生小车类car、卡车类truck和轮船类boat,定义这些类并定义一个虚函数用来显示各类信息。 5.2定义一个shape抽象类,派生出Rectangle类和Circle类,计算各派生类对象的面积Area( )。 5.5某学校对教师每月工资的计算公式如下:固定工资+课时补贴。教授的固定工资为5000元,每个课时补贴50元;副教授的固定工资为3000元,每个课时补贴30元;讲师的固定工资为2000元,每个课时补贴20元。给出教师抽象类及主函数,补充编写程序求若干教师的月工资。 #include using namespace std; class Teacher{ protected: double salary; int workhours; public: Teacher(int wh=0){workhours=wh;} virtual void cal_salary()=0; void print(){cout<cal_salary(); prof.print(); Vice_Prof vice_prof(250); pt=&vice_prof; pt->cal_salary(); vice_prof.print(); Lecture lecture(100); pt=&lecture; pt->cal_salary(); lecture.print (); return 0; }

相关文档