福建农林大学金山学院计算机科学实验报告
【精品文档】3实验报告Java (6000字)-范文模板 (5页)
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==3实验报告Java (6000字)福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:计算机科学与技术年级: 201X 实验课程:JAVA语言程序设计姓名:学号:实验室号: 1#608计算机号: C1 实验时间: 201X0614 指导教师签字:成绩:实验3一、实验目的1. 掌握声明二维数组变量,创建二维数组对象,使用二维数组解决实际问题。
2. 使用构造方法创建对象,通过对象引用变量访问对象,。
3. 封装数据域以便于类的维护。
二、实验要求1. (7.6)编写两个矩阵相乘的方法。
方法头如下:public static double[][] multiplyMatrix(double[][] a, double[][] b)为了是矩阵a能够和矩阵b相乘,矩阵a的列数必须与矩阵b的行数相同。
假设矩阵c是相乘的结果,而a的列数是n,那么每个元素cij=ai1 * b1j + ai2 * b2j + …+ ain * bnj。
编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示他们的2. (8.1)创建一个名为Rectangle的类表示矩形,这个类包括:? 两个名为width和height的double型数据域,它们分别表示矩形的宽和高。
width和height的默认值都为1。
? 创建默认矩形的无参构造方法:Rectangle()。
? 一个创建width和height为指定值的矩形的构造方法:Rectangle(double width, double height)。
? 一个名为getWidth()的方法返回宽。
? 一个名为getHeight()的方法返回高。
? 一个名为getArea()的方法返回这个矩形的面积。
? 一个名为getPerimeter()的方法返回周长。
计算机网络实验二
福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:计算机科学与技术年级:2013 实验课程:计算机网络姓名:王鑫学号:实验室号:_计算机号:实验时间:指导教师签字:成绩:实验2:路由器常用协议配置一、实验目的和要求1.掌握路由器基本配置原理2.理解路由器路由算法原理3.理解路由器路由配置方法二、实验项目内容1.掌握路由器静态路由配置2.掌握路由器RIP动态路由配置3.路由器OSPF动态路由配置三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Packet tracer 6.0 。
四、实验原理及实验步骤路由器单臂路由配置(选做)实验目标掌握单臂路由器配置方法;通过单臂路由器实现不同VLAN之间互相通信;实验背景某企业有两个主要部门,技术部和销售部,分处于不同的办公室,为了安全和便于管理对两个部门的主机进行了VLAN的划分,技术部和销售部分处于不同的VLAN。
现由于业务的需求需要销售部和技术部的主机能够相互访问,获得相应的资源,两个部门的交换机通过一台路由器进行了连接。
技术原理单臂路由:是为实现VLAN间通信的三层网络设备路由器,它只需要一个以太网,通过创建子接口可以承担所有VLAN的网关,而在不同的VLAN间转发数据。
实验步骤新建packer tracer拓扑图当交换机设置两个Vlan时,逻辑上已经成为两个网络,广播被隔离了。
两个Vlan的网络要通信,必须通过路由器,如果接入路由器的一个物理端口,则必须有两个子接口分别与两个Vlan对应,同时还要求与路由器相连的交换机的端口fa 0/1要设置为trunk,因为这个接口要通过两个Vlan的数据包。
检查设置情况,应该能够正确的看到Vlan和Trunk信息。
计算机的网关分别指向路由器的子接口。
配置子接口,开启路由器物理接口。
默认封装dot1q协议。
配置路由器子接口IP地址。
实验设备PC 2台;Router_2811 1台;Switch_2960 1台路由器静态路由配置实验目标●掌握静态路由的配置方法和技巧;●掌握通过静态路由方式实现网络的连通性;●熟悉广域网线缆的链接方式;实验背景学校有新旧两个校区,每个校区是一个独立的局域网,为了使新旧校区能够正常相互通讯,共享资源。
路由器配置中两种不同的出口方式
路由器配置中两种不同的出口方式篇一:计算机网络实验二福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:计算机科学与技术年级:2013 实验课程:计算机网络姓名:王鑫学号:136709020实验室号:_ 计算机号:实验时间:指导教师签字:成绩:实验2:路由器常用协议配置一、实验目的和要求1.2.3. 掌握路由器基本配置原理理解路由器路由算法原理理解路由器路由配置方法二、实验项目内容1.2.3. 掌握路由器静态路由配置掌握路由器RIP动态路由配置路由器OSPF动态路由配置三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Packet tracer 6.0 。
四、实验原理及实验步骤路由器单臂路由配置(选做)实验目标掌握单臂路由器配置方法;通过单臂路由器实现不同VLAN之间互相通信;实验背景某企业有两个主要部门,技术部和销售部,分处于不同的办公室,为了安全和便于管理对两个部门的主机进行了VLAN的划分,技术部和销售部分处于不同的VLAN。
现由于业务的需求需要销售部和技术部的主机能够相互访问,获得相应的资源,两个部门的交换机通过一台路由器进行了连接。
技术原理单臂路由:是为实现VLAN间通信的三层网络设备路由器,它只需要一个以太网,通过创建子接口可以承担所有VLAN的网关,而在不同的VLAN间转发数据。
实验步骤新建packer tracer拓扑图当交换机设置两个Vlan时,逻辑上已经成为两个网络,广播被隔离了。
两个Vlan的网络要通信,必须通过路由器,如果接入路由器的一个物理端口,则必须有两个子接口分别与两个Vlan对应,同时还要求与路由器相连的交换机的端口fa 0/1要设置为trunk,因为这个接口要通过两个Vlan的数据包。
检查设置情况,应该能够正确的看到Vlan和Trunk信息。
计算机的网关分别指向路由器的子接口。
配置子接口,开启路由器物理接口。
默认封装dot1q协议。
福建农林大学金山学院实验报告
福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:电子科学与技术年级:2009实验课程:C语言程序设计姓名:郭荣生学号:092232006 实验室号:1#605_ 计算机号:G1 实验时间:2010.11.24 指导教师签字:成绩:实验7:函数一、实验目的和要求1.掌握定义函数的方法2.掌握函数实参与形参的对应关系,以及“值传递”的方式3.掌握函数递归调用的方法二、实验内容和原理1. 写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。
2. 编写一个函数,将一个字符串中的元音字母复制到另一个字符串中,然后输出。
3. 用递归调用的方法写一个求n! 的函数,在主函数中输入一个整数,输出该数的阶乘。
4. 函数编写,使其按给出的表达式计算分段函数。
|X|表示X的绝对值(利用 fabs( x )函数求浮点数x的绝对值)。
0.336x+0.015x2+3.541 x < 1fun(x)= 567 1 ≤ x ≤ 31.55(|10-x|+ 0.3) x > 3例如:fun( 0.3 ) = 3.643fun( 1.5 ) = 567.000fun( 5.15 )= 7.982三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Visual C++ 6.0 。
四、算法描述及实验步骤1.输入以下程序进行编译、组建、执行程序,并输入一个数,按Enter键,输出结果:#include <stdio.h>void main(){int prime(int);int n;printf("\ninput an integer: ");scanf("%d",&n);if(prime(n))printf("\n %d is a prime.\n",n);elseprintf("\n %d is not a prime.\n",n);}int prime(int n){int flag =1,i;for(i=2;i<=n/2 && flag==1;i++)if(n%i==0)flag=0;return(flag);}2.输入以下程序进行编译、组建、执行程序,并输入一个字符窜,按Enter键,输出结果。
C语言程序设计 实验报告3 循环结构
二、 实验内容和原理
1. 输入一行字符,分别统计出其中英文大写字母、小写字母、空格、数字和其他字符的个 数。 2. 计算输入的 10 个整数中正数的个数及正数平均值(要求使用 continue)。 3. 输出 3~100 之间所有的素数。 4. 请编程实现输出以下图案。
5. 输出所有的三位“水仙花数”。
合条件时相应表示增加,最后输出。
2、 用 for 语句限制个数,再用迭代方法处理,当 a 符合要求时,sum=sum+a。用 continue 结束本次循环。
3、 用 for 语句循环再用穷举法将 3~100 的数逐个检查,看它能不能被 2 到 sqrt(x) 中任意一整数整除,如果可以 num++。
ቤተ መጻሕፍቲ ባይዱ
数%d\n",letters,LETTERS,space,digit,other); return 0; } 2、#include<stdio.h> int main() {int i,num=0,a; float sum=0; printf("请任意输入是个整数(中间用空格隔开):"); for(i=1;i<=10;i++) {scanf("%d",&a); if(a>=0) {num++; sum+=a; continue; } } printf("正数个数:%d,正数个数总和:%.0f\n",num,sum); printf("正数平均数:%.2f\n",sum/num); return 0; } 3、#include<stdio.h> #include<math.h> int main() {int x,y,num=0; for(x=3;x<=100;x++) {for(y=2;y<=sqrt(x);y++) if(x%y==0) break; if(y>sqrt(x)) {printf("%d ",x); num++; } } printf("3-100 之间的素数有%d 个。\n",num); return 0; } 4、#include<stdio.h> int main() {int i,j,k; for(i=0;i<=4;i++) {for(j=0;j<=3-i;j++) printf(" "); for(k=0;k<=2*i;k++) printf("*"); printf("\n"); }
汇编实验四--DOS功能调用
福建农林大学金山学院实验报告系:专业:计算机科学与技术年级: 08 姓名:学号:实验课程:汇编语言实验室号:_______ 实验设备号:实验时间:指导教师签字:成绩:实验四 DOS功能调用1.实验目的和要求1.学会DOS中关于显示功能调用指令的用法。
2.领会修改显存方法显示字符。
2.实验环境实验的硬件环境是:IBM—PC机及其兼容机实验的软件环境是:操作系统:DOS 2.0以上;调试程序:;文本编程程序:EDIT.EXE、WPS.EXE;宏汇编程序:MASM.EXE(或ASM .EXE);连接装配程序:LINK .EXE;交叉引用程序:CREF.EXE(可有可无)。
3.实验内容及实验数据记录1、输入一个字符,显示出来2、输入一个字符串,显示出来3、buf开始的3个的16位二进制数用十六进制数的形式显示出来(1)理解程序(2)输入程序,汇编,运行(在DOS状态下输入:文件名.EXE),观察结果。
(3)如果要分行显示,程序要如何修改?DATA SEGMENTBUF DW 4F59H, 56A8H, 0FF90HDATA ENDSCODE SEGMENTASSUME CS: CODE, DS: DA TASTART: MOV AX, DA TAMOV DS, AXMOV SI, 0P: MOV BX, BUF[SI]MOV CH, 4L: MOV CL, 4ROL BX, CLMOV DL, BLAND DL, 0FHCMP DL, 10JB NEXTADD DL, 7NEXT: ADD DL, 30HMOV AH, 2INT 21HDEC CHJNZ LINC SIINC SICMP SI, 4JNA PMOV AH, 4CHINT 21HCODE ENDSEND START4、运行下列程序,在屏幕的第1行,会显示一个字符X,理解程序段STACK SEGMENTDB 128 DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AX,STACKMOV SS,AXMOV SP,128MOV AX,0B800HMOV ES,AXMOV AH,0 ;BIOS 10H的0号功能,设置80X25的彩色字符模式 MOV AL,03HINT 10HMOV AH,'X'MOV ES:[160*1+40*2],AHMOV AL,0MOV AH,4CHINT 21HCODE ENDSEND START5、显示*************************6、编写程序,统计字缓冲区中的20个数据的正数、负数、0的个数,并将统计结果以16进制形式显示出来。
操作系统实验一
福建农林大学金山学院实验报告系: 专业: 年级:姓名: 学号: 实验室号 计算机号实验时间: 指导教师签字: 成绩:实验一 Linux基本操作与编程1、实验目的和要求1) 熟悉LINUX操作系统的环境和使用。
2)了解LINUX系统的安装过程。
(注:*表示可选择)3)熟悉LINUX的进程机制。
4)熟悉LINUX环境编程。
2、实验内容和原理(1)完成红旗LINUX系统的登录,启动终端。
(2)创建一个新用户,名为dd1。
要求记录操作步骤或命令序列。
(3)编写能输出“Hello world!”问候语的C程序,并在终端中编译、执行。
要求记录所使用的命令及结果。
(4)编写一个程序:显示信息“Time for Play!”,并能在后台运行一段时间(自定义)后,弹出信息提醒用户。
要求记录所使用的命令及结果。
(5)进程的创建:编制一段程序,使用系统调用fork( )创建两个子进程,这样在此程序运行时,在系统中就有一个父进程和两个自进程在活动。
让每一个进程在屏幕上显示一个字符:父进程显示字符a,子进程分别显示字符 b和字符c。
试观察、记录并分析屏幕上,进程调度的情况。
系统调用函数说明:fork()函数,创建一个新进程。
格式:int fork()其中返回int取值意义如下:0:创建子进程,从子进程返回的id值>0:从父进程返回的子进程id值-1:创建失败3、实验环境(1)硬件:PC机(2)软件:linux 操作系统、虚拟机4、算法描述及实验步骤(1)1. 启动LINUX系统2. 进入登录界面3. 输入用户名,按回车键,输入密码后回车4. 点击主菜单→系统工具→终端(2)点击主菜单→系统设置→用户和群组→输入root口令→添加用户→填写资料→确定(3)1. 打开主菜单→文本编辑器2. 输入代码:main(){printf(“hello world !”);}保存为t.c3. 打开终端,输入命令 gcc t.c 回车,输入 ./a.out回车,显示 “helloworld!”。
农林大学计算机与信息学院实验报告修订稿
修改后的程序:
#include<iostream>
using namespace std;
class Heapclass
{
public:
Heapclass(int x);
Heapclass();
~Heapclass();
private:
int i;
};
Heapclass::Heapclass(int x)
cin>>n;
cout<<"输入学生成绩:";
for(int i(0);i<n;i++)
{
cin>>s;
a[i].scoretotalcount( s);
}
cout<<"班级总分为:";
5调试下列程序,写出输出结果,并分析输出结果。
//sy4_1.cpp
#include<iostream>
using namespace std;
class My
{
public:
My(int aa)
{
A=aa;
B-=aa;
}
static void fun(My m);
private:
int A;
static int B;
2.在该程序中,将TPoint类的带有两个参数的构造函数进行修改,在函数体内增添下述语句:
cout<<”Contructor is called.\n”
(1)写出程序的输出结果,并解释输出结果。
(2)按下列要求进行调试;
在主函数体内,添加下列说明语句:
福建农林大学金山学院实验报告Queue
福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:电子信息工程年级:12实验课程:数据结构姓名:杨友志学号:126710046 实验室号:A605计算机号:I2 实验时间:12.27 指导教师签字:成绩:实验3:队列的实现和使用方法一、实验目的1.掌握队列的概念和队列的链表实现。
2.熟练使用队列的基本操作,如初始化,入队,出队等。
3.会用队列解决简单的实际问题。
二、实验要求1.写出队列的isEmpty,creatQueue,enqueue,dequeue,front等函数。
2.试编写一个算法,建立两个队列,要求从键盘上输入整数,按照下列要求分别进入不同的队列。
(a)若输入的整数大于0,则进入第一个队列。
(b)若输入的整数小于0,则进入第二个队列。
(c)若输入的整数等于0,则输入结束。
(d)分别输出每个队列的内容,观察出队列的元素顺序与入队列的元素的顺序。
三、实验原理1.队列的定义:队列是一种数据结构,可以在队列的一端插入元素而在队列的另一端删除元素。
(1 )允许删除的一端称为队头(Front )。
(2 )允许插入的一端称为队尾(Rear )。
(3 )当队列中没有元素时称为空队列。
(4 )队列亦称作先进先出(First In First Out )的线性表,简称为FIFO 表。
2.队列的修改是依先进先出的原则进行的。
新来的成员总是加入队尾(即不允许"加塞" ),每次离开的成员总是队列头上的(不允许中途离队),即当前" 最老的" 成员离队。
3.enqueue在队尾插入一个元素(入队)。
dequeue删除对头元素(出队)。
front返回队头元素,但不改变队列Q的状态。
四、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、。
五、算法描述及实验步骤参照实验辅导书六、调试过程详细记录程序在调试过程中出现的问题及解决方法七、实验结果记录测试数据及程序执行的结果七、总结对上机实验结果进行分析、上机的心得体会及改进意见。
数据库实验报告 福建农林大学金山学院
(程序设计类课程)实验报告课程名称:数据库系统概论姓名:陈华实系:信息与机电工程系专业:计算机科学与技术年级:2009学号:指导教师:陈长江职称:讲师2010~2011学年第二学期实验项目列表福建农林大学金山学院实验报告专业:计算机科学与技术年级:2009姓名:陈华实学号:实验室号__ 608 计算机号J608S044 实验时间:2011.11.23 指导教师签字:成绩:实验一:数据库的定义实验一、实验目的:1、理解MySQL Server 6.0 服务器的安装过程和方法;2、要求学生熟练掌握和使用SQL、T-SQL、SQL Server Enterpriser ManagerServer 创建数据库、表、索引和修改表结构,并学会使用SQL Server Query Analyzer,接收T-SQL 语句和进行结果分析。
二、实验环境:硬件:PC 机软件:Windows 操作系统、 MySQL Server 6.0 和Navicat for MySQL 9.0三、实验内容和原理:1、安装MySQL 以及相应的GUI 工具2、用SQL 命令,建立学生-课程数据库基本表:学生Student(学号Sno,姓名Sname,年龄Sage,性别Ssex,所在系Sdept);课程Course(课程号Cno,课程名Cname,先行课Cpno,学分Ccredit);选课SC(学号Sno,课程号Cno,成绩Grade);要求:1) 用SQL 命令建库、建表和建立表间联系。
2) 选择合适的数据类型。
3) 定义必要的索引、列级约束和表级约束.四、实验步骤:1、运行Navicat for MySQL,然后进行数据库连接,进入到GUI 界面;2、利用图形界面建立基础表:student 表的的信息::表的course 信息:sc 表的信息:(1)、连接数据库,在localhost 中点击鼠标右键(如图1 所示),点击“新建数据库”,在弹出的窗口中输入数据库名称(如图2 所示),然后单击“确定”,就完成了数据库的建立。
实验六c++
福建农林大学金山学院实验报告系(教研室):信息与机电工程系专业:计算机科学与技术年级:2009实验课程:多态性(一)姓名:学号:092231048 实验室号612计算机号J612S048 实验时间:2015-5-27 指导教师签字:成绩:实验6 多态性(一)一、实验目的和要求(1)掌握虚函数的定义与使用方法,进一步理解多态性的概念和分类。
(2)了解纯虚函数和抽象类的使用方法。
二、实验内容和原理1、分析并调试下列程序,回答以下问题:(1)指出抽象类(2)指出虚函数,并说明它的作用(3)每个类的作用是什么?整个程序的作用是什么?2、使用虚函数编写程序求球体、圆柱体和圆锥的体积,由于球体、圆柱体和圆锥都可以看做由圆继承而来,所以可以定义圆类作为基类。
在圆类中定义数据成员半径和一个求体积的虚函数。
由圆类派生出球体类、圆柱体类和圆锥类,在派生类中对圆类中的虚函数重新定义。
编写一个外部函数求各类形状的总体积。
最后在main()函数中构造若干形状,并求它们的体积和。
三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Visual C++ 6.0四、算法描述及实验步骤1、#include<iostream.h>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<n;i++){sum+=s[i]->Area();}return sum;}int main(){Shap *s[2];s[0]=new Triangle(5.0,4.0);s[1]=new Circle(8.0);double sum=Total(s,2);cout<<"sum="<<sum<<endl;return 0;}(1)抽象类是Shap类。
C#最新NET程序设计实验报告
福建农林大学金山学院实验报告课程名称:.NET程序设计姓名:洪绵绵系:信息与机电工程系专业:计算机科学与技术年级:2008学号:082231029指导教师:林松职称:讲师2010年12月29日实验项目列表福建农林大学金山学院实验报告系:信息与机电工程专业:计算机科学与技术年级:2008级姓名:洪绵绵学号:082231029 实验室号_ 608 计算机号B3实验时间:2010.11.26上午一二节指导教师签字:成绩:实验一数组、类、接口与结构一、实验目的和要求1、了解数组、类、接口和结构的定义、概念。
2、了解结构和类的区别。
3、掌握数组的声明、实例化、初始化和访问。
4、掌握类、接口的声明和使用,结构的声明和调用。
二、实验内容和原理1、屏幕打印10行杨辉三角,逐行输出,用到Console.Write("{0,5}", A[i, j]); 和Console.WriteLine();语句。
2、创建抽象基类Shape和派生类Rectangle, Circle利用多态性实现Area(计算面积)和Show(在屏幕上显示图形名称和面积)抽象方法3、声明一个接口ICDPlayer,包含4个接口方法:Play(),Stop(),NextTrack()和PreviousTrack(),以及一个只读属性CurrentTrack创建类CDPlayer实现该接口,模拟CD的播放、停止、下一音轨、上一音轨的操作。
4、声明一个表示平面坐标系中的点的结构体CoOrds,包含字段x,y,以及带2个参数的构造函数。
分别利用三种不同的方法(默认构造函数、有2个参数的构造函数、先声明结构体变量再对其x,y字段赋值),创建3个平面坐标点变量。
求这3个点所构成的三角形面积。
注意判断3个坐标点是否可以构成三角形。
三、实验环境1、硬件:PC机2、软件:windowsXP、VS2008四、算法描述及实验步骤1、(1) 打开记事本,编写代码。
计算机网络实验2
福建农林大学金山学院实验报告系(教研室):专业:年级:实验课程:姓名:学号:实验室号计算机号实验时间:指导教师签字:成绩:实验二交换机配置实验一、实验目的1. 了解交换机的工作原理2. 熟悉交换机的基本配置3. 掌握虚拟局域网VLAN的配置二、实验环境与设备本实验可以在计算机上利用模拟软件Packet Tracer V5.2进行操作。
三、实验内容1. 交换机的基本配置2.单一交换机的VLAN配置3. 跨交换机的VLAN配置四、实验步骤1. 交换机的基本配置(1)通过交换机的Console 端口管理交换机第一次使用交换机必须利用Console 端口进行配置。
需要的设备有:Switch_2960 一台;PC 一台;Concole 配置线;在Packet Tracer 中创建如下图所示拓扑图。
使用Concole 配置线将PC 机的RS232C 口与交换机的Console 口连接起来。
双击PC 机图标,在弹出的对话框中选择“Desktop”,点击“Terminal”,如图:用户模式 Switch>特权模式 Switch#全局模式 Switch(config)#接口模式 Switch(config-if)#VLAN 模式 Switch(config-vlan)#按ENTER 键后,进行交换机的用户模式Switch>Switch>show version //查看交换机版本信息Switch>enable //进入交换机的特权模式:Switch#Switch#show running-config //查看当前生效的配置信息Switch#configure terminal //进入交换机的全局模式:Switch(config)# Switch(config)# //交换机的全局模式(2)采用Telnet 方式配置交换机在对交换机进行了初次配置后,你希望以后在办公室或出差时也可以对设备进行远程管理,就要在交换机上做适当配置。
C语言程序设计 实验报告2--选择结构
福建农林大学金山学院实验报告系(教研室):专业:年级:实验课程:C语言程序设计姓名:学号:实验室号:计算机号:实验时间:指导教师签字:成绩:实验2:选择结构程序设计一、实验目的和要求1.了解C语言表示逻辑量的方法2.正确使用逻辑运算符和逻辑表达式,掌握if语句和switch语句3.结合程序掌握一些简单算法,并学习调试程序二、实验内容和原理1.有一函数:x2+2x-6(x<0,x≠-3)y = x2-5x+6(0≤x<10,x≠2,x≠3)x2-x-15(x=-3,x=2,x=3,x≧10)写一程序,用scanf函数输入x,输出y值。
2.分别用if语句和switch语句编程实现:给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。
90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。
3.输入4个整数,要求按由小到大顺序输出。
4.有三个整数a,b,c,由键盘输入,输出其中最大的数,请编写程序。
(用两种方法实现)5.输入出租车类型和里程,计算打车的费用。
计算方式为:3公里以内10元;3公里以上0车型每公里1.5元,1车型每公里2元。
三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Visual C++ 6.0,DEV-CPP 。
四、算法描述及实验步骤1、先用scanf函数输入,再用if语句的嵌套来计算该方程。
2、(1)用switch语句时,对输入的数据进行检查,在用score/10将其强制转换得到一个整型。
最后用switch语句执行使其得到一个字符型字母。
(2)用if语句分成各个分数段将符合要求的输出对应的字符。
3、用if语句依次比较的方法排出其大小顺序。
4、(1)先用scanf函数输入,再用if语句的嵌套比较其大小顺序。
(2)带入一个中间数用条件表达式比较其大小顺序。
5、在标题写入条件,3公里以下直接输出。
3公里以上判断车型,再带入相应车型计算车费。
实验五
福建农林大学金山学院实验报告系(教研室):专业:年级:实验课程:姓名:学号:实验室号:计算机号:实验时间:指导教师签字:成绩:实验名称一、实验目的和要求1、掌握重载和类的多态性2、加减运算接收二个类型为“复数”的参数。
3、实验报告给出所有源代码。
二、实验内容和原理1、编写一个名为“复数”的类,包含复数的实部和虚部(数据成员),以及复数之间的基本算术运算:加、减(方法成员),并要求复数加减运算,程序运行中能对给定的复数进行运算,并打印运算的结果。
三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、JDK四、算法描述及实验步骤1、创建“复数”类,定义实部、虚部成员2、定义构造函数接收二个double参数用来初始化数据成员3、定义二个复数运算函数4、定义一个打印方法5、在main()方法中创建复数对象并调用相关方法来验证。
五、调试过程六、实验结果经过讨论,实验结果能够的到预期效果。
七、总结(1)通过练习,了解java源程序的编译,连接的运行,并能熟练使用集成环境的界面和有关菜单。
(2)能够通过编译时出现的出错提示信息,进行初步的纠错。
(3)完成一个程序的一般步骤为设计,录入,编译,如果出错,则修改,然后再编译,编译成功后,看看结果是否正确,如果结果不正确,则再重复以上步骤附录:class complex{double real,imgage;complex(double i,double j){this.real=i;this.imgage=j;}complex plus(complex c){complex r=new complex(0,0);r.real=this.real+c.real;r.imgage=this.imgage+c.imgage;return r;}complex jf(complex c){complex r=new complex(0,0);r.real=this.real-c.real;r.imgage=this.imgage-c.imgage;return r;}complex js(double d){complex r=new complex(0,0);r.real=this.real+d;r.imgage=this.imgage;return r;}public static void main(String a[]){complex c1=new complex(-1,-2);complex c2=new complex(-2,-3);complex c3=new complex(0,0);complex c4=new complex(0,0);complex c5=new complex(0,0);c3=c1.plus(c2);System.out.print(+c3.real);if(c3.imgage>0)System.out.println("+"+c3.imgage+"i");elseif(c3.imgage<0)System.out.println(+c3.imgage+"i");elseSystem.out.println();c4=c1.js(5);System.out.print(+c4.real);if(c4.imgage>0)System.out.println("+"+c4.imgage+"i");elseif(c4.imgage<0)System.out.println(+c4.imgage+"i");elseSystem.out.println();c5=c1.jf(c2);System.out.print(+c5.real);if(c5.imgage>0)System.out.println("+"+c5.imgage+"i");elseif(c5.imgage<0)System.out.println(+c5.imgage+"i");elseSystem.out.println();}}。
数据结构实验五
福建农林大学金山学院实验报告系(教研室):专业:年级:实验课程:数据结构姓名:学号:实验室号:_ _ 计算机号:实验时间:指导教师签字:成绩:实验五:(快速、堆、基数等)排序算法的设计一、实验目的和要求(1) 深刻理解排序的定义和各种排序方法的特点,并能灵活运用。
(2) 掌握常用的排序方法,并掌握用高级语言实现排序算法的方法。
(3) 了解各种方法的排序过程及其依据的原则,并掌握各种排序方法的性能的分析方法。
二、实验内容和原理(1)设计直接插入排序、冒泡排序、快速排序算法。
(2)设计堆排序和基数排序算法。
三、实验环境1. 硬件:PC机;2. 软件:Windows操作系统、Visual C++ 6.0四、算法描述及实验步骤算法描述及步骤如下:(1)在VC环境下输入题目给出的程序代码。
(2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。
(3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之(4)运行程序,输入数据,分析结果。
(5)将调试好的程序保存在自己的用户目录中,文件名自定五、调试过程直接排序冒泡排序快速排序基数排序堆排序六、实验结果直接排序冒泡排序快速排序基数排序堆排序七、总结(1)通过练习,了解C++源程序的编译,连接的运行,并能熟练使用集成环境的界面和有关菜单。
(2)能够通过编译时出现的出错提示信息,进行初步的纠错。
(3)完成一个程序的一般步骤为设计,录入,编译,如果出错,则修改,然后再编译,编译成功后,看看结果是否正确,如果结果不正确,则再重复以上步骤(4)通过练习能,了解直接排序、冒泡排序、快速排序、堆排序和基数排序算法的性质,并通过练习进一步掌握直接排序、冒泡排序、快速排序、堆排序和基数排序算法的应用。
附录:直接排序#include <iostream>using namespace std;int max=100;typedef struct{int key;}recordtype;void intsertsorting(recordtype R[],int n){int i,j;for(i=2;i<=n;i++){R[0]=R[i];j=i-1;while(R[0].key<R[j].key)while(R[0].key<R[j].key){R[j+1]=R[j];j--;}R[j+1]=R[0];}}}int main(){int i,n;recordtype R[100];cout<<"输入要排序的个数";cin>>n;for(i=1;i<=n;i++)cin>>R[i].key;intsertsorting(R,n);for(i=1;i<=n;i++)cout<<R[i].key<<" ";return 0;}冒泡排序#include <iostream>using namespace std;int max=100;typedef struct{int key;}recordtype;void bubblesort(recordtype R[],int n) {int i,j;recordtype temp;for(i=0;i<n;i++)for(j=i;j<n;j++)if(R[j-1].key>R[j].key){temp=R[j-1];R[j-1]=R[j];R[j]=temp;}}{int i,n;recordtype R[100];cout<<"输入要排序的个数";cin>>n;for(i=0;i<n;i++)cin>>R[i].key;bubblesort(R,n-1);for(i=0;i<n;i++)cout<<R[i].key<<" ";return 0;}快速排序#include <iostream>using namespace std;int max=100;typedef struct{int key;}recordtype;int divideareasort(recordtype R[],int s,int t) {int i,j;recordtype temp;i=s;j=t;temp=R[s];do{while ((R[j].key>=temp.key)&&i<j)j--;if(i<j){R[i]=R[j];i++;}while((R[i].key<=temp.key)&&i<j)i++;if(i<j){R[j]=R[i];j--;}}while(i<j);R[i]=temp;return i;}void quicksort(recordtype R[],int s,int t) {int i;if(s<t){i=divideareasort(R,s,t);quicksort(R,s,i-1);quicksort(R,i+1,t);}}int main(){int i,n;recordtype R[100];cout<<"输入要排序的个数";cin>>n;for(i=0;i<n;i++)cin>>R[i].key;quicksort(R,0,n-1);for(i=0;i<n;i++)cout<<R[i].key<<" ";return 0;}基数排序#include <stdio.h>#include <stdlib.h>int main(){int data[20];int temp[10][10]={0};int order[10]={0};int i,j,k,n,lsd,m;k=0;n=1;printf("请输入排序个数:");scanf("%d",&m);for(i=0;i<m;i++)scanf("%d",&data[i]);while (n<=m){for (i=0;i<m;i++){lsd=((data[i]/n)%m);temp[lsd][order[lsd]]=data[i];order[lsd]++;}for (i=0;i<m;i++){if(order[i]!=0)for (j=0;j<order[i];j++){data[k]=temp[i][j];k++;}order[i]=0;}n*=m;k=0;}printf("基数排序后:");for (i=0;i<m;i++)printf("%d ",data[i]);printf("\n");return 0;}堆排序#include<iostream>#define max 100using namespace std;typedef struct{int key;}recordtype;recordtype R[max+1] ;void heapadjust(recordtype R[], int s, int t) {int i ,j;recordtype temp;temp=R[s];i=s;j=2*i;while(j<=t){if((j<t)&&(R[j].key>R[j+1].key))j++;if(temp.key>R[j].key){R[i]=R[j];i=j;j=2*i;}elsej=t+1;}R[i]=temp;}void heapsort(recordtype R[],int n ){int i ;recordtype temp;for(i=n/2;i>=1;i--)heapadjust(R, i, n );for(i=n;i>1;i--){temp=R[1];R[1]=R[i];R[i]=temp;heapadjust(R,1,i-1);}}int main(){int i,n;cout<<"请输入数组的元素个数:" <<endl;cin>>n;for(i=1;i<=n;i++)cin>>R[i].key;heapsort(R,n);cout<<"堆排序后的结果如下: "<<endl;for(i=1;i<=n;i++)cout<<R[i].key<<" ";cout<<endl;return 0;}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
福建农林大学金山学院实验报告
系(教研室):信息与机电工程系专业:计算机科学与技术年级:2011
实验课程:Java语言程序设计姓名:学号:实验室号:
计算机号:实验时间:指导教师签字:成绩:
实验1
一、实验目的
1.熟悉eclipse集成开发环境。
2.掌握使用Scanner类从控制台获取输入
3.使用JOptionPane从输入对话框获取输入,使用JOptionPane在消息对话框中显
示输出结果的方法。
4.使用Math.random()产生随机数。
二、实验要求
1.(
2.7)编写程序,提示用户输入分钟数,然后显示这些分钟代表多少年和多少
天。
为简化问题,假设一年有365天。
下面是一个运行示例:
2.(
3.18)如果某年可以被4整除而不能被100整除,或者可以被400整除,那么
这一年就是闰年。
编写程序,使用输入对话框让用户输入一个年份,然后判断
它是否是闰年,使用消息对话框显示结果。
下面是一个运行示例:
3.(
4.32)开发一个玩彩票的游戏,程序随机的产生一个两位整数的彩票(这两个
整数是两个不同的数),提示用户输入一个两位数,然后按照下面的规则断定
用户是否能赢:
(1)如果用户的输入数匹配彩票的实际顺序,奖金为10000美金。
(2)如果用户输入的所有数字匹配彩票的所有数字,奖金为3000美金。
(3)如果用户输入的一个数字匹配彩票的一个数字,奖金为1000美金。
提示:产生第一个数,使用循环不断产生第二个数,直到它和第一个数不同为
止。
下面是一个运行示例:
三、实验原理
1.熟悉eclipse集成开发环境。
2.掌握使用Scanner类从控制台获取输入
3.使用JOptionPane从输入对话框获取输入,使用JOptionPane在消息对话框中显示输出结果的方法。
4.使用Math.random()产生随机数
四、实验环境
1. 硬件:PC机;
2. 软件:Windows操作系统、。
五、算法描述及实验步骤
六、调试过程
1.3
七、实验结果
1.1
1.2
1.3
七、总结
基本熟悉了eclipse集成开发环境。
而且掌握了使用Scanner类从控制台获取输入;使用JOptionPane从输入对话框获取输入;使用JOptionPane在消息对话框中显示输出结果的方法。
同时明白了如何使用Math.random()产生随机数。