实验二 类和对象的使用_参考答案

合集下载

实验报告(二)

实验报告(二)

北京信息科技大学信息管理学院实验报告课程名称java程序设计实验项目实验二类和对象实验仪器PC、jdk、jcreator专业_______ _________班级/学号________ ___学生姓名_______ __________实验日期实验地点成绩_______________________指导教师_____李春强_____________return p;}int getPower(int q){return q;}}Lab2_2:public class TV {void play(){System.out.println("正在播放动物世界");}}public class Family {TV homeTV;void buyTV(TV tv){tv=this.homeTV;System.out.println("购买一台电视");}}public class MainClass {public static void main(String args[]){ TV haierTV=new TV();Family zhangsanFamily =new Family();zhangsanFamily.buyTV(haierTV);haierTV.play();}}Lab2_3:public class Land {public static void main(String args[]){ Village.WaterAmount=200;System.out.println("水井中有水"+Village.WaterAmount+"升");Village v1=new Village();Village v2=new Village();int m=50;System.out.println("v1从水井中取水"+m+"升");v1.WaterAmount-=m;System.out.println("v2发现水井中有水"+Village.WaterAmount+"升");System.out.println("v2从水井中取水"+m+"升");v2.WaterAmount-=m;System.out.println("v1发现水井中有水"+Village.WaterAmount+"升");}}public class Village {public static int WaterAmount;}Lab2_4:import wukong.xiyou.*;public class SunRise{public static void main(String args[]){SquraEquation sq=new SquraEquation();sq.getRoot(100);System.out.println("此数的平方根为"+"sq.getRoot()");}}package java.wukong.xiyou;public class SquraEquation{public double getRoot(double num){ return Math.sqrt(num);}}1.实验名称、实验目的、实验内容、实验要求由教师确定,实验前由教师事先填好,然后作为实验报告模版供学生使用;2.实验准备由学生在实验或上机之前填写,教师应该在实验前检查;3.实验过程由学生记录实验的过程,包括操作过程、遇到哪些问题以及如何解决等;4.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等;5.源程序、代码、具体语句等,若表格空间不足时可作为附录另外附页。

Java实验

Java实验

实验一熟悉Java开发环境(验证性2学时)一、实验目的与要求:1 掌握Java Application程序的开发过程并编写第一个Java Application程序*2 掌握Java Applet程序的开发过程并编写第一个Java Applet程序。

*3 练习简单的HTML文件配合Java Applet使用。

4 熟悉jdk的使用二、实验内容:1 编写一个Java Application程序,在屏幕上显示”This is my first java program!”.*2 编写第一个Java Applet 程序,在屏幕上显示”This is my first Java Applet!”三、实验步骤:1、jdk的使用jdk开发工具包可以从网站下载,jdk不是集成编译环境,须手动运用命令行程序进行编译和解释执行1)编辑.java文件可以在记事本或其他纯文本编辑器中编辑,保存时把文件扩展名定为.java即可,当然要注意文件名命名的要求2)编译生成.class文件进入dos系统进行编译(如图1.1所示),格式如javac MyFirstApplication.java,要注意图1.1进入命令行看javac.exe的路径并且MyFirstApplication.java文件路径和javac.exe路径一样。

编译成功后就能在浏览器中看见多了一个MyFirsApplication.class或更多的.class文件。

如图1.2所示图1.2使用jdk编译MyFirstApplication.java文件3)解释执行Application程序:同样是在dos系统下解释执行,格式如java MyFirstApplication,注意.class后缀别加,如图1.3所示。

图1.3解释执行MyFirstApplication.class程序* applet程序进入dos系统进行编译,格式如javac MyFirstApplet.java,要注意看javac.exe的路径并且MyFirstApplet.java文件路径和javac.exe路径一样。

实验二 Java类编程实验

实验二  Java类编程实验

实验二Java类编程实验实验目的1.掌握Java类的基本定义和使用方法2.熟悉Java语言的基本语法和运行原理3.掌握Java的基本数据类型、表达式和程序控制结构4.熟悉Eclipse开发环境的基本使用方法实验内容1. 对象的创建和使用使用集成开发环境编写一个圆环类Ring的Java程序。

圆环类有3个数据成员,分别是内半径innerRadius,外半径outerRadius和颜色color,这些属性通过get和set方法进行封装。

另外,圆环类中的getArea方法可以返回其面积。

把程序中的代码补充完整,并查看结果。

public class Ring {private double innerRadius;private double outerRadius;private String color;public Ring(double iRadius, double oRadius, String c) { //初始化数据成员}//用get和set方法封装数据成员public double getArea() {}public static void main(String[] args) {Ring ring = new Ring(5,8,"red");System.out.println("圆环的内半径: " +ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜色: " + ring.color);System.out.println("圆环的面积: " + ring.getArea() + "\n");ring.setInnerRadius(4);//设置圆环ring的外半径为6ring.setColor("blue");System.out.println("圆环的内半径: " + ring.getInnerRadius( ));System.out.println("圆环的外半径: " + ring.getOuterRadius( ));System.out.println("圆环的颜色: " + ring.color);System.out.println("圆环的面积: " + ring.getArea());}}思考:1)将程序中的语句Ring ring = new Ring(5,8,"red"); 改成Ring ring = newRing();修改后编译运行,此时有错误发生吗?分析错误的原因。

面向对象程序设计 郑州大学网考资料及答案

面向对象程序设计 郑州大学网考资料及答案

面向对象程序设计郑州大学网考资料及答案一、考试资料面向对象程序设计是计算机科学中的一种重要方法,它以对象为基础,将数据和操作封装在对象中,通过对象之间的关系和交互来实现程序的功能。

以下是一些关于面向对象程序设计的考试资料:1、对象的概念和分类:对象是面向对象程序设计的核心概念,可以分为类对象和实例对象。

类对象是类的实例,实例对象是类的具体表现。

2、封装性:面向对象程序设计中的封装性是指将数据和操作封装在对象中,通过访问控制机制来限制外部对内部数据的访问。

3、继承性:继承性是指子类可以继承父类的属性和方法,同时还可以添加自己特有的属性和方法,实现代码的重用和扩展。

4、多态性:多态性是指同一消息可以被不同的对象接收并执行不同的操作,使得程序具有更好的灵活性和可扩展性。

5、抽象性:抽象性是指通过抽象类和接口来定义对象的通用属性和方法,具体的实现细节由子类来完成,从而实现对象的抽象和分离。

6、常用面向对象编程语言:Java、C++、Python等语言都是支持面向对象编程的常用语言,其语法和特性各不相同,但都遵循面向对象的基本思想。

7、常用设计模式:设计模式是解决常见问题的经验总结,包括单例模式、工厂模式、观察者模式等,可以帮助开发者更好地设计和实现程序。

二、考试答案以下是一些关于面向对象程序设计的考试答案:1、什么是对象?答:对象是现实世界中事物的抽象,是属性及其方法的集合。

2、什么是封装性?答:封装性是指将数据和操作封装在对象中,通过访问控制机制来限制外部对内部数据的访问。

它有助于保护对象内部数据不被外部随意修改,同时提供了安全性和稳定性。

3、什么是继承性?答:继承性是指子类可以继承父类的属性和方法,同时还可以添加自己特有的属性和方法,实现代码的重用和扩展。

它有助于减少代码冗余,提高代码的可维护性和可扩展性。

4、什么是多态性?答:多态性是指同一消息可以被不同的对象接收并执行不同的操作,使得程序具有更好的灵活性和可扩展性。

实验二-类与对象(二)

实验二-类与对象(二)

实验二-类与对象(二)实验三类与对象(2)【实验类型】验证性实验【实验课时】2学时【实验目的】(1)掌握对象数组定义与使用方法。

(2)理解对象指针的概念,学会用指针引用对象。

(3)了解this指针的工作方式。

(4)掌握静态数据成员和静态成员函数的基本使用方法。

(5)理解友元与友元函数的作用,掌握其使用方法。

【实验环境】硬件:计算机软件:Microsoft Visual C++ 6.0【实验内容】1、按要求阅读、修攺、调试和运行以下程序。

(1)实验内容① 定义一个类Stock,记录一支股票交易的基本信息,信息包括交易日序号(表示本月的第几个交易日,用整数表示)、当日最高价、当日最低价、当日开盘价和当日收盘价。

尽量发挥想象力,为该类设计成员函数。

② 在主函数中建立两个股票对象,分别存储该股票昨天和今天两天的信息,以当日收盘价计算该股票今天的涨幅。

③ 使用股票类Stock,定义一个对象数组存放连续5个交易日的股票信息。

编写一个主函数,计算两个Stock对象(前后两日)的当日收盘价计算当日涨幅。

用指针引用对象数组中的两个对象。

在主函数中调用该函数计算从第2个交易日开始每天的当日涨幅。

④ 在Stock类中定义一个静态数据成员,记录当前Stock对象的数量。

⑤ 设计一个成员函数Assign_stock为对象赋值,其中的形式参数是对另一个Stock对象的引用,使用this指针避免对自己的赋值,在主函数中显示用Assign_stock赋值的对象。

⑥ 定义一个友元函数计算Stock对象的当日开盘价是否高于当日收盘价。

若是,返回真,否则,返回假。

(2)实验程序及运行结果(参考)①以当日收盘价计算该股票今天的涨幅#include <iostream.h>class Stock{public:Stock(int n,double ma,double mi,double b,double e);void Set_Stock(int n,double ma,double mi,double b,double e);double Get_End();void Show_Stock();private:int Number;double Max,Min,Begin,End;};Stock::Stock(int n,double ma,double mi,double b,double e){ Number=n;Max=ma;Min=mi;Begin=b;End=e;}void Stock::Set_Stock(int n,double ma,double mi,double b,double e){ Number=n;Max=ma;Min=mi;Begin=b;End=e;}double Stock::Get_End(){ return End;}void Stock::Show_Stock(){ cout<<Number<<"\t";cout<<Max<<"\t";cout<<Min<<"\t";cout<<Begin<<"\t";cout<<End<<endl;}void main(){ Stocks1(1,4.18,4.00,4.05,4.09);Stocks2(2,4.41,4.03,4.04,4.40);cout<<"\n"<<(s2.Get_End()-s1.Get_E nd())/s1.Get_End()*100<<"%"<<endl;}②定义一个对象数组存放连续5个交易日的股票信息#include <iostream.h>const int N=2;class Stock{public:Stock(int n,double ma,double mi,double b,double e);Stock(); //增加无输入值的构造函数void Set_Stock(int n,double ma,double mi,double b,double e);void Set_Stock();double Get_End();void Show_Stock();private:int Number;double Max,Min,Begin,End;};Stock::Stock(int n,double ma,double mi,double b,double e){ Number=n;Max=ma;Min=mi;Begin=b;End=e;}Stock::Stock() //无输入值时,将其都清零{ Number=0;Max=0;Min=0;Begin=0;End=0;}void Stock::Set_Stock(int n,double ma,double mi,double b,double e){ Number=n;Max=ma;Min=mi;Begin=b;End=e;}double Stock::Get_End(){ return End;}void Stock::Show_Stock(){ cout<<Number<<"\t";cout<<Max<<"\t";cout<<Min<<"\t";cout<<Begin<<"\t";cout<<End<<endl;}void Stock::Set_Stock(){ cout<<"Number:";cin>>Number;cout<<"Max:";cin>>Max;cout<<"Min:";cin>>Min;cout<<"Begin:";cin>>Begin;cout<<"End:";cin>>End;}void main(){ int i;Stock s1[5],*p;for (i=0,p=s1;i<N;i++,p++)p->Set_Stock();for (i=0,p=s1;i<N;i++,p++)p->Show_Stock();for(i=1,p=s1+1;i<N;i++,p++) cout<<"\n"<<(p->Get_End()-(p-1)->Get_End())/(p-1)->Get_End()*100<<"%"<<en dl;}③定义一个静态数据成员,记录当前Stock 对象的数量#include <iostream.h>const int N=2;class Stock{public:Stock() {}Stock(int n,double ma,double mi,double b,double e);void Set_Stock(int n,double ma,double mi,double b,double e);void Set_Stock();double Get_End();void Show_Stock();int Get_N_count();private:static intN_count; //静态数据成员int Number;double Max,Min,Begin,End;};intStock::N_count=0; //此处定义时不需要加上staticStock::Stock() //无输入值时,将其都清零{N_count++;Number=0;Max=0;Min=0;Begin=0;End=0;}Stock::Stock(int n,double ma,double mi,double b,double e){ N_count++;Number=n;Max=ma;Min=mi;Begin=b;End=e;}void Stock::Set_Stock(int n,double ma,double mi,double b,double e){Number=n;Max=ma;Min=mi;Begin=b;End=e;}double Stock::Get_End() { return End;}void Stock::Show_Stock() { cout<<Number<<"\t";cout<<Max<<"\t";cout<<Min<<"\t";cout<<Begin<<"\t";cout<<End<<endl;} void Stock::Set_Stock() {cout<<"Number:";cin>>Number;cout<<"Max:";cin>>Max;cout<<"Min:";cin>>Min;cout<<"Begin:";cin>>Begin;cout<<"End:";cin>>End;}int Stock::Get_N_count(){ return N_count;}void main(){ int i;Stock s1[5];Stock *p;for (i=0,p=s1;i<N;i++,p++)p->Set_Stock();for (i=0,p=s1;i<N;i++,p++)p->Show_Stock();for(i=1,p=s1+1;i<N;i++,p++) cout<<"\n"<<(p->Get_End()-(p-1)->Get_E nd())/(p-1)->Get_End()*100<<" %";cout<<"\n"<<p->Get_N_count()<< endl;}④设计一个成员函数Assign_stock为对象赋值,其中的形式参数是对另一个Stock对象的引用#include <iostream.h>const int N=2;class Stock{public:Stock() {}Stock(int n,double ma,double mi,double b,double e);void Set_Stock(int n,double ma,double mi,double b,double e);void Set_Stock();void Assign_Stock(Stock& p);void Show_Stock();private:static int N_count;long Number;double Max,Min,Begin,End;};int Stock::N_count=0;Stock::Stock() //无输入值时,将其都清零{N_count++;Number=0;Max=0;Min=0;Begin=0;End=0;}Stock::Stock(int n,double ma,double mi,double b,double e){ N_count++;Number=n;Max=ma;Min=mi;Begin=b;End=e;}void Stock::Set_Stock(int n,double ma,double mi,double b,double e){ N_count++;Number=n;Max=ma;Min=mi;Begin=b;End=e;}void Stock::Assign_Stock(Stock& p){ if (this!=&p){Number=p. Number;Max=p.Max;Min=p.Min;Begin=p.Begin;End=p.End;}}void Stock::Show_Stock() { cout<<Number<<"\t";cout<<Max<<"\t";cout<<Min<<"\t";cout<<Begin<<"\t";cout<<End<<endl;} void Stock::Set_Stock() {cout<<"Number:";cin>>Number;cout<<"Max:";cin>>Max;cout<<"Min:";cin>>Min;cout<<"Begin:";cin>>Begin;cout<<"End:";cin>>End;}void main(){Stock s1(4,7.88,7.48,7.56,7.68);Stock s2;s2.Assign_Stock(s1);s2.Show_Stock();}⑤定义一个友元函数计算Stock对象的当日开盘价是否高于当日收盘价。

Java实验报告-2-类和对象

Java实验报告-2-类和对象
// TODO 自动生成的方法存根
class Fushu
{
private double a; //实部
private double b;//虚部
public Fushu(double x,double y)
{
a=x;
b=y;
}
public void addfushu(double x,double y)
"b="+10.4+"+"+11.2+"*i"+"\n"+
"a+b="+a.geta()+"+"+a.getb()+"*i"+"\n"+
"a-b="+b.geta()+b.getb()+"*i");
}
}
实验结果
小结
通过本次实验,我对java里面类和对象的定义和使用有了一定的认识和熟悉。
说明:如果完成了一次实验的多个实验题目,可以在实验报告中复制该表,填写其他实验题目的报告。
{
return this.b;
}
}
Fushu a = new Fushu(12.9,9.7);
a.addfushu(10.4, 11.2);
Fushu b = new Fushu(12.9,9.7);
b.plusfushu(10.4, 11.2);
JOptionPane.showMessageDialog(null,"a="+12.9+"+"+9.7+"*i"+"\n"+

《面向对象程序设计》实验指导书 (1-6个实验,含参考代码)要点

《面向对象程序设计》实验指导书 (1-6个实验,含参考代码)要点

面向对象程序设计实验指导书(适用:电子信息11级)彭召意陶立新编写计算机与通信学院2014.9目录实验一 C++基础的应用 (1)实验二类和对象的应用 (3)实验三类的构造函数、析构函数的应用 (4)实验四友员和运算符重载 (5)实验五类的继承与派生 (6)实验六类的多态性与虚函数 (7)附录:各实验的程序代码 (8)实验一 C++基础的应用(实验课时:2 实验性质:设计)实验名称: C++基础的应用实验目的: (1)进一步学习VC++6.0开发环境及程序调试方法。

(2)练习C++函数的定义及使用;(3)练习C++数组的定义及使用;(4)练习C++指针的定义及使用;(5)练习C++结构体的定义及使用;(6)练习多文件的程序的编译和运行方法;实验设备:(1)硬件:个人微机(配置不低于:CPU为P4,主频1.6G,内存256MB,硬盘40GB);(2)软件:操作系统为WindowsXP(或2000、server2003等),工具软件为Visual C++6.0。

实验内容: (1)熟悉Visual C++6.0编译系统的常用功能,特别是debug调试功能;(2)编程1:编写一个程序c1.cpp,用来求2个或3个整数的最大数。

要求:用重载函数的方法来求最大数;函数原型:int max( int a, int b) 和int max( int a, int b,int c)。

(3)编程2:编写一个程序c2.cpp,求:a!+ b! + c!的值。

要求:使用递归函数。

主程序和函数分开到两个源程序文件中,分别进行编译后,再运行;(4)编程3:有一个3*4的矩阵,要求编程求出其中值最大的那个元素的值,以及其所在的行号和列号;(5)编程4:建立一个动态链表并进行输出和删除管理。

链表的每个节点为学生信息,包括:学号,姓名,性别,下一学生信息的指针。

程序的工作:(a)建立三个学生信息的节点,然后顺序输出该三个学生信息;(b)删除中间的节点,再顺序输出学生信息。

国开电大软件工程形考作业3参考答案

国开电大软件工程形考作业3参考答案

答案见后几页
形考作业3:基于UML的大学图书馆图书信息管理系统设计实验
一、实验内容说明
对实验2的面向对象分析结果进行系统概要设计和详细设计。

设计系统构架,勾画出整个系统的总体结构,这项工作由全组成员参加,包括主要子系统及其接口,主要的设计类和中间件等系统软件。

设计时要考虑系统的可维护性,以简单为第一原则——简单的类、简单的接口、简单的协议、简单的描述。

使用UML的配置图描述系统的物理拓扑结构以及在此结构上分布的软件元素。

用类图和顺序图对主要用例:借书、还书、处罚进行设计,并对其中的类进行详细说明,包括属性设计和方法设计。

二、实验目的
(1)通过本实验使学生掌握UML建模语言的常用图形,面向对象的设计方法和过程。

特别是熟悉包图、顺序图、配置图和类图的应用。

(2)以小组形式完成本实验,锻炼同学之间的协作和沟通能力、自我学习和管理能力。

(3)学生在实验过程中熟练掌握常用的CASE工具。

三、实验学时
8学时
四、实验步骤
(1)根据实验2画出的系统用例图和需求规格说明书规划系统的物理结构。

(2)组长和小组成员共同协商一份设计规范:设计用的图形符号、字体、大小规范,界面设计规范,用语规范等。

(3)对借书用例、还书用例、处罚用例进行用例设计和类设计。

(4)对借书用例、还书用例、处罚用例使用顺序图设计类之间的消息通信。

(5)编写系统设计规格说明书。

五、实验要求。

Java程序设计实验报告2010

Java程序设计实验报告2010
{ int a,b;
public void setab(inti, int j)
{ a=i; b=j; }
public void printab()
{ int sum=a+b;
System.out.println(“a+b=”+sum);
}
}
//B.java
packagepkg1.pkg2;
public class B
{ Exam3_6 d1=new Exam3_6();
System.out.print(”The current date is(year/month/day):”);
d1.outDate();
System.out.println( );
System.out.print(”Its tomorrow date is(year/month/day):”);
{ A x=new A();
A y=new A();
x.setab(5);
y.setab(10);
System.out.println(“x.a=”+x.geta()+”,y.a=”+y.geta());
x.setb(-5);
y.setb(-10);
System.out.println(“x.b=”+x.getb()+”,y.b=”+y.getb());
Its tomorrow is (year/month/day):2000/1/2
The current date is (year/month/day):2004/1/8
Is tomorrow is (year/month/day):2004/1/9

实验二---类与对象的定义与使用

实验二---类与对象的定义与使用
}
}
void paixuYuwen() //按语文成绩排序;
{
Student str[50],*p,q;
int i,j;
p=stu;
for(p=stu,i=0;i<n;i++)
{ str[i]=*p;
*p++;
}
for(i=0;i<n-1;i++,p++)
{
for(j=0;j<n-1-igt;str[j+1].yuwen)
{
q=str[j];
str[j]=str[j+1];
str[j+1]=q;
}
}
}
for(i=0;i<n;i++)
{
printf("学号:%d姓名:%s数学:%.2f语文:%.2f英语:%.2f总成绩:%.2f平均成绩:%.2f\n",str[i].num,str[i].name,str[i].shuxue,str[i].yuwen,str[i].yingyu,str[i].zongcj,str[i].avg);
}
}
void paixuCJ()
{
int flag;
printf("1->按数学成绩排序\n2->按语文成绩排序\n3->按英语成绩排序\n4->按总成绩排序\n5->按总分\n");
printf("请选择成绩由低到高的排序方式:");
scanf("%d",&flag);
switch(flag){
case 0:paixuShuxue();break;

实验二——精选推荐

实验二——精选推荐

实验⼆实验02:类与对象实验学时:6+(6)实验类型:验证实验要求:必修⼀、实验⽬的类是C++扩展数据类型,可以封装不同类型的数据成员和函数成员,类是⾯向对象程序设计的基础。

本次实验内容包括⾯向对象的基本概念、构造函数与析构函数,从实际问题抽象出类等,通过实验要求:1、理解类和对象的概念;2、了解C++在⾮⾯向对象⽅⾯对C功能的扩充与增强。

3、初步掌握使⽤类和对象编制C++程序。

4、掌握对象数组、对象指针和string类的使⽤⽅法。

5、掌握使⽤对象、对象指针和对象引⽤作为函数参数的⽅法。

6、掌握类对象作为成员的使⽤⽅法。

7、掌握静态数据成员和静态成员函数的使⽤⽅法。

8、理解友元的概念和掌握友元的使⽤⽅法。

⼆、实验内容1、输⼊下列程序。

#includeusing namespace std;class Coordinate{public:Coordinate(int x1,int y1){ x=x1;y=y1; }Coordinate(Coordinate &p);~Coordinate(){ cout<<"Destructor is called\n";}intgetx(){ return x;}intgety(){ return y;}private:intx,y;};Coordinate::Coordinate(Coordinate &p){x=p.x;y=p.y;cout<<"Copy-initialization Constructour is called\n";}int main(){Coordinate p1(3,4);Coordinate p2(p1);Coordinate p3=p2;cout<<"p3=("<return 0;}【运⾏结果截图】:将Coordinator类中带有两个参数的构造函数进⾏修改,在函数体内增添下列语句:cout<<”constructor is called.\n”;【运⾏结果截图】:【运⾏结果分析】:按下列要求进⾏调试:在主函数体内,添加下列语句:Coordinator p4;Coordinator p5(2);调试程序时会出现什么错误?为什么?如何对已有的构造函数进⾏适当修改?【运⾏结果截图】:【解释】:经过以上第(2)步和第(3)步的修改后,结合运⾏结果分析:创建不同的对象时会调⽤不同的构造函数。

实验二_类的静态数据成员和友元

实验二_类的静态数据成员和友元

h(&x);
cout<<"i="<<x.display()<<endl;
return 0;
}
(2)运行结果截图
(3)对程序的分析及注意事项 分析:首先建立一个X类的对象x并且初始化i=1,输出I;然后建立一个Y类对象y,然 后调用y的成员函数g(X*x),使得i=i+1,输出i;然后建立一个Z对象z,调用z的成员函 数f(X*x),是的i=i+5,输出i;最后调用ቤተ መጻሕፍቲ ባይዱ(X*x),使得i=i+10,输出i; 注意事项:在my_x_y_z.h头文件中,cout,endl不可用。 2.3 Boat and Car (1)源代码
《面向对象程序设计》 上机实验报告

实验二 类的静态数据成员和友元




1) 掌握友元函数和友元类设计的方法。
2) 学习静态成员的使用,理解静态成员的特殊用途。 验
3) 掌握友元类的定义。 目
4) 学习友元函数及友元类,理解友元类的作用。

5) 掌握友元函数和友元类设计的方法。
1)定义一个 Cat 类,拥有静态数据成员 HowManyCats,记录 Cat 的 实


~cat(){HowManyCats--;}

static void GetHowMany()


{cout<<"Object HowManyCats:"<<HowManyCats<<endl;}

个 private:


static int HowManyCats;

预防医学实验报告答案(3篇)

预防医学实验报告答案(3篇)

第1篇实验名称:预防医学实验实验日期: 2023年11月15日实验目的:1. 理解预防医学的基本概念和原则。

2. 掌握疾病分布的基本方法。

3. 学习流行病学调查的基本技能。

4. 提高数据分析能力。

实验内容:本次实验主要分为三个部分:疾病分布调查、流行病学调查方法学习以及数据分析。

一、疾病分布调查1. 调查对象:选择某社区1000名居民作为调查对象。

2. 调查方法:- 问卷调查:设计调查问卷,收集居民的年龄、性别、职业、生活习惯、健康状况等信息。

- 临床检查:对调查对象进行临床检查,了解其身体指标,如血压、血糖、血脂等。

3. 调查结果:- 年龄分布: 20-30岁年龄组患病率最高,为15%。

- 性别分布:男性患病率为18%,女性患病率为12%。

- 职业分布:从事体力劳动者患病率为20%,从事脑力劳动者患病率为10%。

- 生活习惯:吸烟者患病率为25%,饮酒者患病率为20%。

二、流行病学调查方法学习1. 病例对照研究:- 研究目的:探讨某种疾病与暴露因素之间的关系。

- 研究方法:选择一定数量的病例和对照,比较两组人群的暴露史。

- 结果分析:通过统计学方法分析暴露因素与疾病之间的关联性。

2. 队列研究:- 研究目的:观察暴露因素与疾病之间的关系。

- 研究方法:选择一定数量的暴露和非暴露人群,随访一段时间,观察疾病的发生情况。

- 结果分析:通过统计学方法分析暴露因素与疾病之间的关联性。

三、数据分析1. 描述性统计分析:- 年龄分布:使用频率分布表和直方图展示。

- 性别分布:使用饼图展示。

- 职业分布:使用条形图展示。

- 生活习惯:使用条形图展示。

2. 推论性统计分析:- 年龄与患病率的关系:使用卡方检验分析。

- 性别与患病率的关系:使用卡方检验分析。

- 职业与患病率的关系:使用卡方检验分析。

- 生活习惯与患病率的关系:使用卡方检验分析。

实验结果:1. 疾病分布调查:本次调查结果显示,20-30岁年龄组患病率最高,男性患病率高于女性,从事体力劳动者患病率高于从事脑力劳动者,吸烟和饮酒是导致患病的重要因素。

c++程序设计实验报告(参考答案)

c++程序设计实验报告(参考答案)

实验要求:对大纲中列出的四个实验要求:1.以面向对象的程序设计思想编程。

2.熟悉面向对象程序设计语言VC++编程环境。

3.在计算机上快速完成程序编写、调试、运行。

分别写出实验报告(三页以上),要求详尽描述根据实验内容要求,自己设计的上机编程源程序和结果,包括关键性截图。

完成实验报告和上交源程序。

备注:1.《计算机应用技术》(专)、《计算机应用基础》(专)、高级语言程序设计(一)(专)要求学生进行上机操作,保留上机操作原程序,每门课程每个学生形成一个文件夹,文件夹以学生准考证号+姓名命名,最后试点院校汇总,刻录光盘上交主考院校;2.《口语》(专)、《口译与听力》(本)要求考生进行现场练习,由试点院校教师录制相关材料,每门课程每个学生形成一个文件夹,文件夹以学生准考证号+姓名命名,最后试点院校汇总,刻录光盘上交主考院校;A45.按照系统成绩单的顺序将上报的学习过程评价成绩材料排序并打捆;6.实践课程考核评估记录表》也需按照成绩单顺序排序,单独上报;7.有平时作业或测试试卷等可放入本人上报的材料中一并打捆上交。

交实验报告时间:10月8日假期后第一天上课,务必把按照要求书写完成,并装订好的实验报告交给我,一定!一定!切记不要耽误!实验一:简单类与对象一、实验目的1、熟悉VC++的编程环境,掌握VC++ 的调试方法。

2、掌握简单的类与对象的定义。

二、实验内容用类定义,输入半径和高,输出圆柱体的底面积和体积。

三、实验要求1、硬件设备:奔腾Ⅱ及以上计算机,局域网。

2、软件环境:WINDOWS XP、VC++。

3、实验课前预习,课后及时完成实验报告。

4、实验过程及记录按题目格式要求填写在代码清单中。

四、代码清单或实验步骤#include<iostream>using namespace std;const float PI=;class Cylinder{private:f loat radius;f loat high;public:C ylinder(){}C ylinder(float r,float h){r adius=r;h igh=h;}v oid setradius(float r){r adius=r;}v oid sethigh(float h){h igh=h;}f loat bottomarea(){r eturn PI*radius*radius;}f loat volumn(){return bottomarea()*high;}};void main(){float r,h;Cylinder onecylinder;cout<<"请输入半径:";cin>>r;cout<<"请输入高:";cin>>h;(r);(h);cout<<"底面积为:"<<()<<endl;cout<<"体积为:"<<()<<endl;}五、实验中出现的问题及解决的方法1、数据类型的兼容问题程序代码:const float PI=;提示将double类型强制赋给float类型的警告解决方法:const float PI=;六、讨论或体会或改进实验的建议这个实验比较简单,较容易的实现了。

实验室生物安全知到章节答案智慧树2023年海南医学院

实验室生物安全知到章节答案智慧树2023年海南医学院

实验室生物安全知到章节测试答案智慧树2023年最新海南医学院第一章测试1.发生病原微生物被盗、被抢、丢失、泄漏,承运单位、护送人、保藏机构和实验室的设立单位未依照中华人民共和国卫生部《病原微生物实验室生物安全管理条例》的规定报告,造成传染病传播、流行或者其他严重后果的,由实验室的设立单位或者承运单位、保藏机构的上级主管部门对主要负责人、直接负责的主管人员和其他直接责任人员,依法给予撤职、开除的处分;构成犯罪的,依法追究刑事责任。

()参考答案:对2.病原微生物的研究工作必须在生物安全一级(BSL-1)、二级(BSL-2)、三级(BSL-3)和四级(BSL-4)实验室中进行。

()参考答案:对3.在实验室发生事故时,现场人员应迅速组织、指挥,切断事故源,尽量阻止事态蔓延、保护现场;及时有序地疏散学生等人员,对现场已受伤人员作好自助自救、保护人身及财产。

()参考答案:对4.教师应学习研究有关实验室安全的知识,同时在理论教学和实验中对学生进行安全知识教育、教会学生如何正确使用实验设备和实验操作,教会学生在突发事故发生时如何自我保护、相互救援、安全撤离。

()参考答案:对5.早晨、中饭、晚上等几个人员稀少的时间段,要特别注意随手关门,确保实验室财产和个人物品的安全。

()参考答案:对6.及时淘汰老化、性能不稳又具有安全隐患的仪器设备(如冰箱10年以上,烘箱12年以上)。

()参考答案:对7.实验室仪器设备用电或线路发生故障着火时,应立即(),并组织人员用灭火器进行灭火。

()参考答案:切断现场电源8.使用灭火器扑救火灾时要对准火焰的()部位喷射?()参考答案:根部9.《突发公共卫生事件应急条例》是哪一年颁布的?()参考答案:200310.关于实验室接线板的选购,以下错误的是()参考答案:可以选购接触不良的接线板;可以选购电线裸露的接线板;可以选购有破损接线板第二章测试1.实验室必须配备符合本室要求的消防器材,消防器材要放置在明显或便于拿取的位置。

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告实验报告(1)2015.6【实验作者】学号:姓名:班级:教学站:【实验名称】实验一:熟悉C++程序的风格和C++程序的上机全过程【实验目的】1.熟悉C++程序的风格,熟悉实验环境。

2.练习C++程序的输入、修改、编译、连接与运行的全过程。

3.本实验有4个程序【实验内容】1. 习题2.2下面是一个C程序,改写它,使它采用C++风格的I/O语句。

(1)该程序做什么工作?输入两个整数,求两个整数的大于1 的最小公约数[(另外请教下毛老师:如果最小公约数与最小数相等时,我觉得也有可能这个数是两个数的大于1 的最小公约数)即7与14的公约数为1,7按题意的话,要大于1,那么7也是这两个数的最小公约数,但程序不认为它们具有公约数]。

(2)该程序中那几个数是由键盘输入的?那几个数是输出的?那几个数是临时变量?a与b 由键盘输入;d 是输出的;a,b,d,min 都是临时变量。

(3)用C++风格的I/O语句是什么?#include <iostream.h> cout<<与cin>>(4)写出该程序的算法(用流程图表示)框图1:(5)该程序你有否上机编译、连接、运行通过。

有上机编译连接并运行通过,但有些疑问!2. 习题 2.20分析下面程序的输出结果:(1)该程序做什么工作?利用引用函数改变一个变量的值。

(2)该程序有几个函数?其中f函数是什么函数?其功能是什么?一个函数,F函数是一个引用返回值的函数,并且该函数参数也为一个引用,函数功能是送入一个对变量引用,将变量+10后送回。

成为对返回值的引用。

(3)写出该程序的算法(用流程图表示)框图2:(4)该程序你有否上机编译、连接、运行通过。

该程序有上机编译并连接运行通过。

3. 习题2.23 建立一个被称为sroot( )的函数,返回其参数的二次根。

重载sroot( )三次,让它分别返回整数、长整数与双精度数的二次根(为了实际计算二次根,可以使用标准库函数sqrt( ))。

《面向对象程序设计》答案

《面向对象程序设计》答案

实验一熟悉VC++IDE开发环境一、实验目的1、熟悉VC++6.0集成开发环境,熟练掌握VC++6.0项目工作区、各种编辑器、菜单栏和工具栏的使用。

2、掌握如何编辑、编译、连接和运行一个C++程序。

3、通过运行简单的C++程序,初步了解C++源程序的结构和特点。

二、实验要求1、分析下列程序运行的结果。

程序一:#include <iostream.h>int add(int x,int y=8);void main(){ int x=4;cout<<add(x)<<",";cout<<add(x,add(add(x,add(x))))<<endl;}int add(int x,int y){ return x+y;}//12,28程序二:#include <iostream.h>void main(){ int *p,i;i=5;p=&i;i=*p+10;cout<<"i="<<i<<endl;}//i=15程序三:#include <iostream.h>void main(void){ int i=10;int &r=i;r++;cout<<"i="<<i<<", r="<<r<<'\n';i=88;cout<<"i="<<i<<", r="<<r<<'\n';}//i=11,r=11i=88,r=88程序四:#include <iostream.h>int f(int i){ static int k=1;for(;i>0;i--)k +=i;return k;}void main(){ int i;for(i=0;i<5;i++)cout<<f(i)<<" ";}// 1 2 5 11 21程序五:#include <iostream.h>void func();int n=1;void main(){ static int a;int b= -9;cout <<"a:"<<a<<" b:"<<b<<" n:" <<n<<endl;b+=4;func();cout <<"a:"<<a<<" b:"<<b<<" n:"<<n<<endl;n+=10;func();}void func(){ static int a=2; int b=5;a+=2;n+=12;b+=5;cout <<"a:" <<a<<" b:" <<b<<" n:" <<n <<endl;}// a:0 b:-9 n:1a:4 b:10 n:13a:0 b:-5 n:13a:6 b:10 n:35实验二C++对C的扩充一、实验目的1、了解在面向对象程序设计过程中C++对C功能的扩充与增强,并善于在编写程序的过程中应用这些新功能。

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告实验一C++基础1.1实验目的1.了解并熟悉开发环境,学会调试程序;2.熟悉C++中简单的标准输入输出函数的使用方法;3.理解const修饰符的作用并学会应用;4.理解内联函数的优缺点并学会其使用场合;5.理解并学会函数重载;6.理解并熟练掌握使用new和delete来分配内存;7.理解并熟练掌握引用的使用方法。

1.2实验内容1.2.1程序阅读1.理解下面的程序并运行,然后回答问题。

#include<iostream.h>int max_def(int x,int y){return(x>y?x:y);}int max_def(int x,int y,int z){int temp=0;return(temp=(x>y?x:y))>z?temp:z;}double max_def(double x,double y){return(x>y?x:y);}int main(){int x1=0;int x2=0;double d1=0.0;double d2=0.0;x1=max_def(5,6);x2=max_def(2,3,4);d1=max_def(2.1,5.6);d2=max_def(12.3,3.4,7.8);-------------------------------------------------------①cout<<"x1="<<x1<<endl;cout<<"x2="<<x2<<endl;cout<<"d1="<<d1<<endl;cout<<"d2="<<d2<<endl;--------------------------------------------------------②return 1;}问题一:上述程序的输出结果是什么?答:输出结果为问题二:①处调用的是哪个函数?答:①处调用的是double max_def(double x,double y)函数问题三:②处的输出结果为什么是d2=12,而不是d2=12.3?答:因为调用的int max_def(int x,int y,int z)函数返回值为整型。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.定义一个时间类,实现课堂中第五节中的例2.2。
数据成员:时、分、秒
成员函数:输入时间、设置时间、按12小时制显示时间、按24小时制显示时间、增加1小时、减少1小时等功能。
4.定义一个学生类Student,要求如下:
(1)数据成员包括学号、姓名、数学成绩、英语成绩和C++成绩;要求对所输入的成绩的合法性进行判断。
}
system("pause");
system("cls");
}while(ch!=0);
cout<<"\n欢迎您下次再使用本系统!"<<endl;
}
int main()
{
Book b;
Menu(b);
return 0;
}
2、
#include <iostream>
#include <iomanip>
cin>>bookname>>price;
while(1)
{
if(price<0)
{
cout<<"价格输入有误,请重新输入!";
cin>>price;
}
else
break;
}
cin>>number;
while(1)
{
if(number<0)
{
cout<<"数量输入有误,请重新输入!";
cin>>number;
}
else
break;
}
}
void Book::display()//输出书籍信息
{
cout<<setw(10)<<"书名"<<setw(10)<<"价格"<<setw(10)<<"数量"<<endl;
cout<<setw(10)<<bookname;
cout<<setw(10)<<price;
cout<<setw(10)<<number<<endl;
void sub_hour(); //减少一个小时
};
void Time::input()//输入时间
{
cout<<"请输入时、分、秒(采取24小时制):"<<endl;
cin>>hour;
while(1){Fra bibliotekif(hour<0||hour>23)
{
cout<<"时间输入有误,请重新输入!";
cin>>hour;
成员函数包括:设置学生的信息函数;输入学生的信息函数;输出学生的信息函数;计算学生平均成绩的函数。
(2)添加新的数据成员:出生年月日;实现多个学生信息的添加、成绩的修改(一次只能修改一科成绩)等功能。要求单独定义一个日期类,并对所输入的出生年月日的合法性进行判断。
(3)设计一个菜单函数。
******************************************************************
void display(); //浏览
void modify(); //修改歌手相关信息
};
void Singer::input()//报名
{
cout<<"请输入歌手名、年龄、省份和所选曲目:"<<endl;
cin>>name>>age;
while(1)
{
if(age<0||age>70)
{
cout<<"年龄输入有误,请重新输入!";
cout<<setw(10)<<hour%12;
int second; //秒
public:
void input(); //输入时间
void set(int,int,int); //设置时间
void display_12(); //12小时制显示时间
void display_24(); //24小时制显示时间,默认方式
void add_hour(); //增加一个小时
* *
* 1.添加2.设置3.显示4.修改成绩5.计算平均分0.退出*
* *
******************************************************************
请输入相应编号:
四.实验步骤
编写程序+编译+连接+运行+分析结果
五.实验总结
1.编写的程序源代码
#include <string>
using namespace std;
class Singer
{
private:
string name; //歌手名
int age; //年龄
string province; //省份
string song; //曲目
public:
void input(); //报名
case 3: e.modify();break;
case 0:return;
default:cout<<"数据输入不合法,请重新输入!"<<endl;
}
system("pause");
system("cls");
}while(ch!=0);
cout<<"\n欢迎您下次再使用本系统!"<<endl;
void Menu(Singer &e)//菜单
{
system("cls");
int ch,ch2;
do
{
cout<<"*****************************************************"<<endl;
cout<<"* *"<<endl;
cout<<"* 1.报名2.浏览3.修改0.退出*"<<endl;
cout<<"归还成功!"<<endl;
display();
}
//**************************************************************
void Menu(Book &e)//菜单
{
system("cls");
int ch;
do
{
cout<<"************************************************8888888*****"<<endl;
int number; //数量
public:
void input(); //输入书籍信息
void display(); //输出书籍信息
void borrow(); //借书
void restore(); //还书
};
void Book::input()//输入书籍信息
{
cout<<"请输入书名、价格、数量:"<<endl;
实验二类和对象的使用
班级:学号:姓名:成绩:
一.实验目的
1.掌握类和对象的概念、定义和使用方法。
2.掌握不同特性对象成员的访问方法。
二.使用的设备和仪器
计算机+Windows XP +Visual C++6.0
三.实验内容及要求
1.定义一个Book类,在该类定义中包括以下数据成员和成员函数:
数据成员:bookname(书名)、price(价格)、number(存书数量)
cin>>ch;
switch(ch)
{
case 1:e.input();break;
case 2:e.display();break;
case 3: e.borrow();break;
case 4: e.restore();break;
case 0:return;
default: cout<<"数据输入不合法,请重新输入!"<<endl;
成员函数:set()输入图书信息;display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restore()将存书数量加1,并显示当前存书数量。
在主函数中,要求创建某一图书对象,并对该图书进行简单的显示、借阅和归还等管理。
2.定义一个中国好声音歌手类。其中,包括每个歌手的名字、年龄、来自哪个省份、所唱的曲目等。可以实现报名、显示、修改等功能。
}
else
break;
}
cin>>minute;
while(1)
{
if(minute<0||minute>59)
{
cout<<"分钟输入有误,请重新输入!";
cin>>minute;
}
else
break;
相关文档
最新文档