文档库 最新最全的文档下载
当前位置:文档库 › 太原理工大学java实验报告2016

太原理工大学java实验报告2016

太原理工大学java实验报告2016
太原理工大学java实验报告2016

太原理工大学java实验报告2016

本科实验报告

课程名称:Java语言程序设计实验项目:Java实验

实验地点:致远楼

专业班级:软件学号:201500 学生姓名:

指导教师:

2017年1月

实验1 Java语言基础

1.实验目的

(1)通过实验,掌握Java语言程序设计的基本方法。

(2)学会Java语言中标示符的命名、运算符和表达式的应用。

(3)熟练地掌握Java程序流程控制语句的应用。

2.实验内容

(1)编写应用程序,计算100(含100)以内所有偶数的和。package first;

public class f1 {

public static void main(String s[])

{

int sum=0;

for(int i=0;i<=100;i=i+2) sum=sum+i;

System.out.println("和为"+sum);

}

}

(2)编写一个程序,求1-100间的素数。

package test1;

public class f3 {

public static void main(String[] args) {

// TODO Auto-generated method stub

System.out.println("100内的素数为:");

loop: for (int i = 2; i < 100; i++)

{

for (int j = 2; j < i; j++)

{

if (i % j == 0)

{

continue loop;

}

}

System.out.print(" " + i);

}

}

}

(3)使用for循环语句,编写程序输出以下图案。

☆☆☆

☆☆☆☆☆

☆☆☆☆☆☆☆

☆☆☆☆☆

☆☆☆

package test1;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

for (int i = 1; i <= 4; i++) {

for (int k = 0; k <= 4 - i; k++) {

System.out.print(" ");

}

for (int j = 1; j <= 2 * i - 1; j++) {

System.out.print("☆");

}

System.out.println();

}

for (int i = 3; i > 0; i--) {

for (int k = 0; k <=4-i; k++) {

System.out.print(" ");

}

for (int j = 1; j <= 2 * i - 1; j++) {

System.out.print("☆");

}

System.out.println();}

}

}

3.实验预习

(1)复习本章所学内容。

(2)写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。

4.实验结论

实验过程中,注意记录以下内容:

(1)遇到的问题及解决办法。

在编写星星程序时,不会它的算法,通过百度,然后自己试运行,得出了最后的结果。另外,在程序中遇到问题,积极的问了同学,解决了我的问题。(2)实验体会。

我觉得在编写程序时,要细心并且要有耐心,认真的写每一个程序,就一定会有收获。

实验2 数组和字符串编程

1.实验目的

(1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。

(2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。

2.实验内容

(1)编写一个程序,在控制台输入10个数,按大小顺序输出。package test1;

import java.util.Arrays;

import java.util.Scanner;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

int [] num=new int[10];

@SuppressWarnings("resource")

Scanner input =new Scanner(System.in);

System.out.println("请输入数字:");

for(int i=0;i<10;i++){

num[i]=input.nextInt();

}

Arrays.sort(num);

System.out.println("从小到大输出:");

for(int index=0;index

System.out.println(num[index]);

}

}

}

(2)求一个3*3矩阵对角元素之和。

package test1;

import java.util.Arrays;

import java.util.Scanner;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

@SuppressWarnings("resource")

Scanner in = new Scanner(System.in);

System.out.println("请输入一个3*3矩阵:");

int sum=0;

int[][] a=new int[3][3];

for(int i=0;i<3;i++)

{

for(int j=0;j<3;j++)

{

a[i][j]=in.nextInt();

if(i==j)

sum+=a[i][j];

}

System.out.print("\n");

}

System.out.println("对角线和为"+sum);

}

}

(3)输入一段字符串,统计其中有多少个单词。(单词用空格隔开)package test1;

import java.util.Scanner;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

@SuppressWarnings("resource")

Scanner input = new Scanner(System.in);

System.out.print("请输入:");

String sentence = input.nextLine(); // 将输入的句子转化为单词数组

String[] words = sentence.split(" "); // 单词数组的长度就是单词数

System.out.println("共有 " + words.length + " 个单词.");

}

}

3.实验预习

(1)将本章所学内容要点进行整理,并认真体会例题中的编程要领。

(2)写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。

4.实验结论

实验过程中,注意记录以下内容:

(1) 遇到的问题及解决办法。

在编写排序算法时,采用了冒泡排序,对于冒泡排序,产生了一些错误,通过查阅书籍进行改正,最后得到了正确结果。

(2) 实验体会

在编写程序时要认真细心,并且要认真了解它的过程,明白它的算法。

实验3 Java面向对象程序设计

1.实验目的

掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。

2.实验内容

(1)创建一个复数类complex,以附属进行数学运算、复数具有如下格式:RealPart+ImaginaryRart*I ,其中,I为-1的平方根。

要求如下:

①利用浮点变量表示此类的私有数据。提供两个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。

②提供两复数加、减、乘的运算方法。

按格式(a,b)打印复数。其中a为实部,b为虚部。

package test1;

import java.util.Scanner;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

Complex a=new Complex(1,7);

Complex b=new Complex(7,5);

System.out.println(a.toString()+"和"+b.toString()+"相加的结果为

"+https://www.wendangku.net/doc/917557374.html,plexAdd(b).toString());

System.out.println(a.toString()+"差"+b.toString()+"相减的结果为

"+https://www.wendangku.net/doc/917557374.html,plexJian(b).toString());

}

}

class Complex{

int realPart;

int imaginPart;

public Complex(){

realPart=0;

imaginPart=0;}

public Complex(int r,int i){

realPart=r;

imaginPart=i;}

public Complex complexAdd(Complex b){

return new Complex(realPart+b.realPart,imaginPart+b.imaginPart );}

public Complex complexJian(Complex b){

return new

Complex(realPart-b.realPart,imaginPart-b.imaginPart );}

public String toString(){

String sr= "("+realPart + "," +imaginPart + ")";

return sr;}

}

(2)创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。

package test1;

import java.util.Scanner;

public class f11 {

public static void main(String[] args) {

// TODO Auto-generated method stub

double balance = 0;

double deposit = 0;

double withdraw = 0;

for (;;) {

System.out.println("请输入数字:\t1.存 \t2.取\t3.查询\n");

@SuppressWarnings("resource")

Scanner input = new Scanner(System.in);

String num = input.next();

double s1 = 0, s2= 0 ;

if (num.equals("1")) {

System.out.println("输入存入金额:");

deposit = input.nextDouble();

System.out.println("存钱数目为:" + deposit);

s1 += deposit;

}

if (num.equals("2")) {

System.out.println("输入取钱金额:");

withdraw = input.nextDouble();

System.out.println("取走金额为:" + withdraw);

s2 += withdraw;

}

if (true | num.equals("3")) {

balance += s1 - s2;

System.out.println("账户余额为:" + balance);

}

}

}

}

(3)编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。

package shiyan3;

public class question3 {

public Integer maxNum(int a, int b) {

if(a>b){

return a;

}else{

return b;

}

}

public Integer minNum(int a, int b) {

if(a>b){

return b;

}else{

return a;

}

}

public static void main(String []args){

int a=6,b=2,c=10;

question3 s=new question3();

int temp=s.maxNum(a, b);

int temp1=s.maxNum(temp, c);

System.out.println("The MaxNum is"+temp1);

int temp2=s.minNum(a, b);

int temp3=s.minNum(temp2, c);

System.out.println("The MinNum is"+temp3);

}

}

(2)编程实现以下简单超市管理,具体要求如下:

①实现描述超市的类SuperMacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;

package sssu;

import java.util.ArrayList;

import java.util.List;

/**

* 1、实现描述超市的的类Suppermacket类,

* 记录系统中现有商品(Goods类),

* 定义增加商品的函数Append,

* 删除商品的函数Delete,

* 查询商品的函数Query,

* 并显示查询结果;

*

*/

public class SuperMarket {

private List goodsList = new ArrayList();

/**

* 增加商品的

* @param goods

* @return

*/

public String append(Goods goods)

{

goodsList.add(goods);

return"添加成功";

}

/**

* 删除商品

*/

public String delete(String name)

{String flag = null;

if(name == null){

flag = "删除商品["+name+"]不存在 ";

}

else

{

for (int i = 0; i < goodsList.size(); i++) {

Goods goods = goodsList.get(i);

if (goods.getName().equals(name))

{

goodsList.remove(i);

flag = "删除商品["+name+"]成功";

break;

}

}

return flag;

}

/**

* 销售

* @param goods

* @return

*/

public String sale(Goods goods)

{

String flag = "销售商品["+goods.getName()+"]失败";

if (goods!=null)

{

for (int i = 0; i < goodsList.size(); i++)

{

Goods goods_2 = goodsList.get(i);

if (goods_2.getName().equals(goods.getName()))

{

if (goods.getNumber()>goods_2.getNumber())

{

flag+=" 原因:库存不足";

}

else if ((goods_2.getPrice()*goods.getNumber()) > goods.getPrice()) {

flag+=" 原因:余额不足";

}

else

{

goods_2.setNumber(goods_2.getNumber()-goods.getNumber());

flag = "销售商品["+goods.getName()+"]成功";

}

break;

}

}

}

return flag;

} /**

* 查询商品

* @return

*/

public List getGoodsList()

{

return goodsList;

public void setGoodsList(List goodsList)

{

this.goodsList = goodsList;

}

}

②定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。

package sssu;

/**

* 具有商品名称Name,

* 商品价格Price,

* 商品数量number等属性,

* 操作Sale(销售商品,余额不足时给予提示)、

* Add(商品上架操作)

* 和ShowMe(显示商品信息)。

*/

public class Goods

{

private String name;

private float price;

private int number;

private String Producer;

public String getName()

{

return name;

}

public void setName(String name)

{

https://www.wendangku.net/doc/917557374.html, = name;

}

public float getPrice()

{

return price;

}

public void setPrice(float price)

{

this.price = price;

}

public int getNumber()

{

return number;

}

public void setNumber(int number)

{

this.number = number;

}

public void Producer(String i)

{

this.Producer = i;

}

public String Producer() {

// TODO Auto-generated method stub

return Producer;

}

}

③ main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作

提示:①超市货架可以使用商品数组,数组大小100表明存放100个商品。

②注意实现商品查询的多态性,要求可以根据商品的名称或产地或价格查询商品的数量。

package sssu;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

/**

* 1、实现描述超市的的类Suppermacket类,记录系统中现有商品(Goods类),定义增加商品的函数Append,

* 删除商品的函数Delete,查询商品的函数Query,并显示查询结果;

* 2、定义商品类Goods,具有商品名称Name,商品价格Price,商品数量number等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。 * 3、编写包含main方法的测试类,测试以上所要求的各种功能,即可以根据菜单命令增加、删除和查询商品,以及商品销售和商品上架的操作。

*/

public class Test {

public static void main(String[] args)

{

SuperMarket market = new SuperMarket();

@SuppressWarnings("unused")

String[] label ={ "商品名称", "商品价格", "商品数量" }; int type=-1 ;

do

{

System.out.println("=================");

System.out.println("请选择操作类型");

System.out.println("1 添加商品");

System.out.println("2 删除商品");

System.out.println("3 查询商品");

System.out.println("4 销售商品");

System.out.println("0 退出系统");

System.out.println("=================");

int i = 0;

do

{

try

{

type = Integer.parseInt(readString());

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

}

while (i != 0);

switch (type)

{

case 1:

Goods goods = new Goods();

System.out.println("请输入商品名称");

goods.setName(readString());

do

{

try

{

System.out.println("请输入商品价格");

goods.setPrice(Integer.parseInt(readString()));

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

}

while (i != 0);

do

{

try

{

System.out.println("请输入商品数量");

goods.setNumber(Integer.parseInt(readString()));

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

}while (i != 0);

do

{

try

{

System.out.println("请输入商品产地");

goods.Producer(readString());

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

} while (i != 0);

System.out.println(market.append(goods));

break;

case 2:

System.out.println("请输入要删除商品的名称");

String name = readString();

System.out.println(market.delete(name));

break;

case 3:

System.out.println("商品名称\t商品价格\t商品数量");

for (int j = 0; j < market.getGoodsList().size(); j++)

{

Goods g = market.getGoodsList().get(j);

System.out.println(g.getName() + "\t" + g.getPrice() + "\t" + g.getNumber());

}

break;

case 4:

Goods goods_sals = new Goods();

System.out.println("请输入销售商品名称");

goods_sals.setName(readString());

do

{

try

{

System.out.println("请输入销售商品价格");

goods_sals.setPrice(Integer.parseInt(readString()));

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

}

while (i != 0);

do

{

try

{

System.out.println("请输入销售商品数量");

goods_sals.setNumber(Integer.parseInt(readString()));

i = 0;

}

catch (Exception e)

{

i = 1;

System.err.println("输入有误");

}

}

while (i != 0);

System.out.println(market.sale(goods_sals));

break;

default:

System.out.println("退出");

break;

}

}

while (type != 0);

}

/**** @param prompt* @return */

private static String readString()

{

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

String str = null;

try

{

str = br.readLine();

}

catch (IOException e)

{

e.printStackTrace();

}

return str;

}

}

南昌大学WEB实验报告

实验报告 实验课程:《 WEB编程》 学生姓名: 学号: 专业班级: 2010年 12 月 20 日

目录 ●实验一 .............................................. ●实验二 ............................................. ●实验三 ............................................. ●实验四 ............................................. ●实验五 ............................................. ●实验六 ............................................. ●实验七 ..............................................

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合■设计□创新实验日期:2010年9月15 日实验成绩:实验一 Web编程环境 一、实验目的 1.搭建Web编程环境,能正确安装配置java运行环境、WEB服务器和数据库服务器 2.熟悉WEB编程集成环境MYEclipse. 3.熟练掌握WEB工程的创建、发布、运行流程。 二、实验内容 1.安装并配置java运行环境JDK和JRE 2.安装Web服务器tomcat, 配置Tomcat服务器 3.安装并配置数据库MySQL. 4.安装MyEclispe,熟悉各项菜单项 5.为MyEclispe集成配置JDK和Tomcat 6.创建、发布、运行一个WEB工程。 三、实验仪器及耗材 计算机,JDK,TOMCAT, MySQL, MyEclipse等软件。 四、实验步骤 1、安装并配置JDK和JRE 2、设置好classpath和path路径 3、安装Tomcat5.5 4、设置Tomcat的配置属性 5、安装并配置MySQL数据库 6、安装MySqL Administrator工具 7、安装MyEclipse 8、新建并配置一个工程,运行发布一个新的工程。 五、实验结果 1、JDK、JRE安装结果:

太原理工大学计算机网络实验报告

本科实验报告 课程名称:计算机网络B 实验地点:行勉楼 专业班级:学号 学生姓名: 指导教师: 实验成绩: 2016年 6 月 14 日

实验3 VLAN基本配置 一、实验目的 掌握交换机上创建VLAN、分配静态VLAN成员的方法。 二、实验任务 1、配置两个VLAN:VLAN 2和VLAN 3并为其分配静态成员。 2、测试VLAN分配结果。 三、实验设备 Cisco交换机一台,工作站PC四台,直连网线四条,控制台电缆一条。 四、拓扑结构 五、实验结果 PC0到PC1 想通 PC0到PC2 不通,不在相同VLAN PC2到PC3 不通,网段不同。 Switch#sh run Building configuration... Current configuration : 1127 bytes ! version 12.1 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Switch ! ! spanning-tree mode pvst ! interface FastEthernet0/1

! interface FastEthernet0/2 switchport access vlan 2 ! interface FastEthernet0/3 switchport access vlan 2 ! interface FastEthernet0/4 switchport access vlan 2 ! interface FastEthernet0/5 switchport access vlan 3 ! interface FastEthernet0/6 switchport access vlan 3 ! interface FastEthernet0/7 switchport access vlan 3 ! 六、实验心得 输入容易出现错误。重复输入次数多。

太原理工大学软件工程《数据结构实验报告4-查找》

本科实验报告 课程名称:数据结构B 实验项目:查找 实验地点:行勉楼C214 专业班级:软件XXX班学号:2014XXXX 学生姓名:xxxxx 指导教师:牛之贤张润梁 2016年 1 月 1 日

void insertBST(BiTree *bt, BiTree s) { if (*bt == NULL) *bt = s; else if (s->data.key<(*bt)->data.key) insertBST(&((*bt)->lchild), s); else if (s->data.key>(*bt)->data.key) insertBST(&((*bt)->rchild), s); } main() { char ch; KeyType key; BiTree bt, s; int i = 0; printf("请输入元素:\n"); scanf("%d", &key); bt = NULL; while (key != -1) { s = (BiTree)malloc(sizeof(BiTNode)); (s->data).key = key; s->lchild = s->rchild = NULL; insertBST(&bt, s); scanf("%d", &key); } do { printf("输入你想要查找的元素:"); scanf("%d", &key); s = searchBST(bt, key); if (s != NULL) printf("成功! 这个等价元素是 %d.\n", s->data.key); else printf("没有找到!\n"); printf("是否继续查找?(y/n):"); scanf("%c", &ch); ch = getchar(); } while (ch == 'y' || ch == 'Y'); getchar(); } 4.2#include int b_search(int *p, int l, int r, int key); int main() { int a[10] = { 1,2,3,4,5,6,7,8,9,10 }; int i, p, k; for (i = 0; i < 10; i++) { printf("a[%d]=%d\n", i, a[i]); } for (i = 0; i<2; i++) {

中南大学通信电子线路实验报告

中南大学 《通信电子线路》实验报告 学院信息科学与工程学院 题目调制与解调实验 学号 专业班级 姓名 指导教师

实验一振幅调制器 一、实验目的: 1.掌握用集成模拟乘法器实现全载波调幅和抑止载波双边带调幅的方法。 2.研究已调波与调制信号及载波信号的关系。 3.掌握调幅系数测量与计算的方法。 4.通过实验对比全载波调幅和抑止载波双边带调幅的波形。 二、实验内容: 1.调测模拟乘法器MC1496正常工作时的静态值。 2.实现全载波调幅,改变调幅度,观察波形变化并计算调幅度。 3.实现抑止载波的双边带调幅波。 三、基本原理 幅度调制就是载波的振幅(包络)受调制信号的控制作周期性的变化。变化的周期与调制信号周期相同。即振幅变化与调制信号的振幅成正比。通常称高频信号为载波信号。本实验中载波是由晶体振荡产生的10MHZ高频信号。1KHZ的低频信号为调制信号。振幅调制器即为产生调幅信号的装置。 在本实验中采用集成模拟乘法器MC1496来完成调幅作用,图2-1为1496芯片内部电路图,它是一个四象限模拟乘法器的基本电路,电路采用了两组差动对由V1-V4组成,以反极性方式相连接,而且两组差分对的恒流源又组成一对差分电路,即V5与V6,因此恒流源的控制电压可正可负,以此实现了四象限工作。D、V7、V8为差动放大器V5与V6的恒流源。进行调幅时,载波信号加在V1-V4的输入端,即引脚的⑧、⑩之间;调制信号加在差动放大器V5、V6的输入端,即引脚的①、④之间,②、③脚外接1KΩ电位器,以扩大调制信号动态范围,已调制信号取自双差动放大器的两集电极(即引出脚⑹、⑿之间)输出。

图2-1 MC1496内部电路图 用1496集成电路构成的调幅器电路图如图2-2所示,图中VR8用来调节引出脚①、④之间的平衡,VR7用来调节⑤脚的偏置。器件采用双电源供电方式(+12V,-9V),电阻R29、R30、R31、R32、R52为器件提供静态偏置电压,保证器件内部的各个晶体管工作在放大状态。 四、实验结果 1. ZD.OUT波形: 2. TZXH波形:

南昌大学《编译原理》实验报告(用Java编写)

实验报告 学院:信息工程学院系计算机系 专业班级:计算机科学与技术 学生姓名:学号: 任课教师:

目录 实验1 词法分析程序的设计 (3) 实验2 语法分析程序的设计 (9) 实验3 逆波兰式的翻译和计算 (17)

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合■设计□创新实验日期:实验成绩: 实验1 词法分析程序的设计 一、实验项目名称 词法分析程序的设计 二、实验目的 掌握计算机语言的词法分析程序的开发方法。 三、实验基本原理 编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法分析程序。 1、根据以下的正规式,编制正规文法,画出状态图; 标识符<字母>(<字母>|<数字字符>)* 十进制整数0 | ((1|2|3|4|5|6|7|8|9)(0|1|2|3|4|5|6|7|8|9)*) 八进制整数0(1|2|3|4|5|6|7)(0|1|2|3|4|5|6|7)* 十六进制整数0x(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)(0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)* 运算符和界符+ - * / > < = ( ) ; 关键字if then else while do 2、根据状态图,设计词法分析函数int scan( ),完成以下功能: 1)从文本文件中读入测试源代码,根据状态转换图,分析出一个单词, 2)以二元式形式输出单词<单词种类,单词属性> 其中单词种类用整数表示: 0:标识符 1:十进制整数 2:八进制整数 3:十六进制整数 运算符和界符,关键字采用一字一符,不编码 其中单词属性表示如下: 标识符,整数由于采用一类一符,属性用单词表示 运算符和界符,关键字采用一字一符,属性为空 3、编写测试程序,反复调用函数scan( ),输出单词种别和属性。

太原理工大学计算机网络实验报告

本科实验报告 课程名称:计算机网络B 实验地点:行勉楼 专业班级:学号 学生姓名: 指导教师: 实验成绩: 2016年 6 月14 日

实验3 VLAN基本配置 一、实验目的 掌握交换机上创建VLAN、分配静态VLAN成员的方法。 二、实验任务 1、配置两个VLAN:VLAN 2和VLAN 3并为其分配静态成员。 2、测试VLAN分配结果。 三、实验设备 Cisco交换机一台,工作站PC四台,直连网线四条,控制台电缆一条。 四、拓扑结构 五、实验结果 PC0到PC1 想通 PC0到PC2 不通,不在相同VLAN PC2到PC3 不通,网段不同。 Switch#sh run Building configuration... Current configuration : 1127 bytes ! version 12.1 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Switch ! ! spanning-tree mode pvst ! interface FastEthernet0/1

! interface FastEthernet0/2 switchport access vlan 2 ! interface FastEthernet0/3 switchport access vlan 2 ! interface FastEthernet0/4 switchport access vlan 2 ! interface FastEthernet0/5 switchport access vlan 3 ! interface FastEthernet0/6 switchport access vlan 3 ! interface FastEthernet0/7 switchport access vlan 3 ! 六、实验心得 输入容易出现错误。重复输入次数多。

操作系统实验报告-中南大学

操作系统原理试验报告 班级: 学号: 姓名:

实验一:CPU调度 一、实验内容 选择一个调度算法,实现处理机调度。 二、实验目的 多道系统中,当就绪进程数大于处理机数时,须按照某种策略决定哪些进程优先占用处理机。本实验模拟实现处理机调度,以加深了解处理机调度的工作。 三、实验题目 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 四、实验要求 PCB内容: 进程名/PID; 要求运行时间(单位时间); 优先权; 状态: PCB指针; 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度 4、最好采用图形界面; 5、可随时增加进程; 6、规定道数,设置后备队列和挂起状态。若内存中进程少于规定道数,可自动从后备 队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能用于将指定挂起进程解挂入就绪队列。 7、每次调度后,显示各进程状态。 实验二:内存管理 一、实验内容 主存储器空间的分配和回收 二、实验目的 帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 三、实验题目 在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。

四、实验要求 1、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目内容:起址、长度、状态(未分/空表目) 2、结合实验一,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,PCB指针} 3、采用最先适应算法分配主存空间; 4、进程完成后,回收主存,并与相邻空闲分区合并 .1、Vo类说明(数据存储结构) 进程控制块PCB的结构: Public class PCB{ //进程控制块PCB,代表一个进程 //进程名,作为进程的标识; private String name; //要求运行时间,假设进程运行的单位时间数; private int time; //赋予进程的优先权,调度时总是选取优先数小的进程先执行; private int priority; //状态,假设有“就绪”状态(ready)、“运行”状态(running)、 //“后备”状态(waiting)、“挂起”状态(handup) private String state; //进程存放在table中的位置 private int start; //进程的大小 private int length; //进程是否进入内存,1为进入,0为未进入 private int isIn; //进程在内存中的起始位置 private int base; //进程的大小 private int limit; //一些get和set方法以及构造器省略… };

WEB编程实验报告---南昌大学

实验报告 实验课程:JA V A WEB编程技术 学生姓名: 学号: 专业班级:物流101班 2013年 06 月 12 日 目录

实验一WEB编程环境......................... 错误!未定义书签。实验二HTML和CSS编程技术 (7) 实验三JA V ASCRIPT编程技术 (10) 实验四SERVLET编程技术 (13) 实验五JSP编程技术 (16) 实验六JA V ABEAN编程技术 (21) 实验七基于MVC模式构建系统 (25) 南昌大学实验报告 学生姓名:学号:专业班级:物流101班

实验类型:□验证□综合■设计□创新实验日期:实验成绩: 一、实验项目一Web编程环境 二、实验目的 第1章搭建Web编程环境,能正确安装配置java运行环境、WEB服务器和数据库服务器 第2章熟悉WEB编程集成环境MYEclipse. 第3章熟练掌握WEB工程的创建、发布、运行流程。 三、实验内容 1.安装并配置java运行环境JDK和JRE 2.安装Web服务器tomcat, 配置Tomcat服务器 3.安装并配置数据库MySQL. 4.安装MyEclispe,熟悉各项菜单项 5.为MyEclispe集成配置JDK和Tomcat 6.创建、发布、运行一个WEB工程。 四、实验仪器及耗材 计算机,JDK,TOMCA T, MySQL, MyEclipse等软件。 五、实验步骤 1.先安装jdk1.6,选择自定义安装,安装到C:\JDK 2.配置环境变量,class:.;C:\JDK\bin , classpath:.;C:\JDK\lib ,java_home: C:\JDK 安装tomcat,安装在C:\ Tomcat 下,配置tomcat_home环境变量,CATALINA_HOME: C: \Tomcat,CATALINA_BASE: C: \Tomcat,TOMCAT_HOME: C:\Tomcat 然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet.jar 追加到classpath中去,修改后的classpath如下: classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\c ommon\lib\servlet.jar;

太原理工大学web实验报告资料

本科实验报告 课程名称:Web开发实用技术基础 实验项目:HTML语言 网页程序设计Javascript Request与Response对象的应用 Application与Session对象的应用 实验地点:实验室211 专业班级:学号: 学生姓名: 指导教师: 2015年11月5日

学院名称学号实验成绩 学生姓名专业班级实验日期 课程名称Web开发实用技术基础实验题目HTML语言 一.实验目的和要求 1.掌握常用的HTML语言标记; 2.利用文本编辑器建立HTML文档,制作简单网页。 3.独立完成实验。 4.书写实验报告书。 二.实验内容 1.在文本编辑器“记事本”中输入如下的HTML代码程序,以文件名sy1.html保存,并在浏览器中运行。(请仔细阅读下列程序语句,理解每条语句的作用) 源程序清单如下: Example

welcome to you


A simple HTML document

Welcome to the world of HTML This is a simple HTML document.It is to give you an outline of how to write HTML file and how the markup tags work in the HTML file Following is three chapters
Following is items of the chapter two

太原理工大学多媒体实验报告

本科实验报告 课程名称:多媒体技术与应用 实验项目:《多媒体技术与应用》课程实验实验地点:思贤楼1108 专业班级:学号:201200 学生姓名: 指导教师:廖丽娟 2015年12月6日

太原理工大学学生实验报告

4)Rm格式 Rm是RealMedia文件的简称。 Real Networks公司所制定的音频视频压缩规范称为RealMedia,是目前在Internet上相当流行的跨平台的客户/服务器结构多媒体应用标准,它采用音频/视频流和同步回放技术来实现在Intranet上全带宽地提供最优质的多媒体,同时也能够在Internet上以28.8Kbps的传输速率提供立体声和连续视频。 4.硬件准备 目前,多媒体计算机中的音频处理工作主要借助声卡,从对声音信息的采集、编辑加工,直到声音媒体文件的回放这一整个过程都离不开声卡。声卡在计算机系统中的主要作用是声音文件的处理、音调的控制、语音处理和提供MIDI接口功能等。 进行录制音频信号所需的硬件除了声卡,还有麦克风、音箱以及外界的音源信号设备(如CD唱机、录音机等),把麦克风、音箱、外界音源信号设备与声卡正确连接完成硬件准备工作。 【实验步骤】 1.准备一段语音文件,本次实验使用机器猫的一段无音乐文件,文件名为机器猫.wav使用声音编辑软件(如Cool Edit)导入该语音素材: 2.使用“另存为”命令分别以A/mu-Law Wave、Microsoft ADPCM、PM3格式进行保存。将各种格式的语音文件的声音参数(如采样频率、量化精度、压缩算法、压缩前后的数据量等)以表格的形式记录: 采样频率量化精度压缩前压缩后压缩率A/mu-Law 44.1K/hz 8位 1.56 MB 218K 13% Wave Microsoft 44.1K/hz 4位 1.56 MB 402K 25% ADPCM PM344.1K/hz 1.56 MB 799K 50% 3.使用声音编辑软件(如Cool Edit)对语音进行降低噪声处理的方法:首先,导入要处理的波形文件,在单轨编辑区内,点击波形水平放大按钮将波形水平放大,找出一段适合用来作噪声的采样波形,选中采样波形,单击鼠标右键,在弹出的菜单中

中南大学系统仿真实验报告

实验一MATLAB 中矩阵与多项式的基本运算 实验任务 1. 了解MATLAB命令窗口和程序文件的调用。 2 ?熟悉如下MATLAB的基本运算: ①矩阵的产生、数据的输入、相关元素的显示; ②矩阵的加法、乘法、左除、右除; ③特殊矩阵:单位矩阵、“ 1 ”矩阵、“0”矩阵、对角阵、随机矩阵的产生和运算; ④多项式的运算:多项式求根、多项式之间的乘除。 基本命令训练 1、>> eye(2) ans = 1 0 0 1 >> eye(4) ans = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 2、>> ones(2) 1 1 ans =

1 1 >> ones(4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 >> ones(2,2) ans = 1 1 1 1 >> ones(2,3) ans = 1 1 1 1 1 1 >> ones(4,3) ans = 1 1 1 1 1 1 1 1 1 1 1 1 3、>> zeros(2) ans =

0 0 0 0 >> zeros(4) ans = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >> zeros(2,2) ans = 0 0 0 0 >> zeros(2,3) ans = 0 0 0 0 0 0 >> zeros(3,2) ans = 0 0 0 0 00 4、随机阵>> rand(2,3) ans = 0.2785 0.9575 0.1576 0.5469 0.9649 0.9706 >> rand(2,3)

java实训总结

实习报告 学生姓名:陈育伟 学号:20096361 专业班级:信息与计算科学1班 实习单位:高博教育 实习时间:2012-7-1——2012-7-14 2012年 7 月 14 日

一、实习目的 通过对java语言、JavaWeb、Oracle数据库应用设计及SQL语言的复习和锻炼,并且通过使用MyEclipse 开发平台设计库存管理系统项目,以达到充分熟悉开发平台及其应用设计。同时掌握并实践软件项目设计规范及其开发流程:需求分析、概要设计、详细设计、代码编写、系统测试及软件手册编写,以便提前适应软件公司开发流程、环境和工作要求进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。学习SQL的基础知识及正确的运用方法,和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用已学知识Java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。 二、实习主要流程 1、公司管理规则,程序员素质,程序员编码规范; 2、需求开发与管理; 3、面向对象分析与设计,面向对象编程的特性; 4、javaSE、javaWeb 、页面设计-JSP页面; 5、数据库设计、SQL应用; 6、软件需求分析与设计; 7、项目实战 三、实习内容 Oracle数据库 数据库是数据的结构化集合。计算机是处理大量数据的理想工具,因此,数据库管理系统在计算方面扮演着关键的中心角色,或是作为独立的实用工具,或是作为其他应用程序的组成部分。 Oracle服务器还有一套实用的特性集合,这些特性是通过与我们用户的密切合作而开发的。在我们的基准测试主页上,给出了Oracle服务器和其他数据库管理器的比较结

2014太原理工大学C++实验报告

本科实验报告 课程名称:C++面向对象程序设计 实验项目:C++语言编程 实验地点:明向校区 专业班级:软件1431 学号:201400XXXX 学生姓名:白建兴 指导教师:崔晓红 2015年5月10日

1.运行例题程序: #include using namespace std; void fn1(int z=5); int x=1,y=2; int main() { cout<<"Begin. . ."<>p[i]; if(p[i]>0) plus++; else if(p[i]!=0) minus++; } cout<<"正数的个数:"<

中南大学 计算机体系结构实验报告

计算机体系结构课程设计 学院:信息科学与工程学院 专业班级: 指导老师: 学号: 姓名:

目录 实验1 对指令操作码进行霍夫曼编码 (3) 一、实验目的 (3) 二、实验内容 (3) 三、设计思路 (4) 四、关键代码 (4) 五、实验截图 (5) 六、源代码 (5) 实验2 使用LRU 方法更新Cache (8) 一、实验目的 (8) 二、实验内容 (8) 三、设计思路 (9) 四、程序截图 (9) 五、实验代码 (9) 实验总结 (16) 参考文献 (16)

实验1 对指令操作码进行霍夫曼编码一、实验目的 了解和掌握指令编码的基本要求和基本原理 二、实验内容 1. 使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对指令码的长度进行评价。与扩展操作码和等长编码进行比较。 2. 问题描述以及问题分析 举例说明此问题,例如: 下表所示: 对此组指令进行 HUFFMAN 编码正如下图所示: 最后得到的HUFFMAN 编码如下表所示:

最短编码长度为: H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95. 要对指令的操作码进行 HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行 HUFFAM 编码。此过程的难点构造 HUFFMAN 树,进行 HUFFAM 编 码只要对你所生成的 HUFFMAN 树进行中序遍历即可完成编码工作。 三、设计思路 观察上图,不难看出构造 HUFFMAN 树所要做的工作:1、先对各指令操作码的出现概率进行排序,构造一个有序链表。2、再取出两个最小的概率节点相加,生成一个生的节点加入到链表中,同时从两表中删除此两个节点。3、在对链表进行排序,链表是否只有一个节点,是则 HUFFAN 树构造完毕,否则继续做 2 的操作。为此设计一个工作链表(链表的元素时类,此类的功能相当结构。)、HUFFMAN 树节点、HUFFMAN 编码表节点。 四、关键代码 哈夫曼树重点在于如何排列权值大小不同的结点的顺序 private int leafNum; //叶子结点个数 private HaffmanNode[] hnodes; //哈夫曼树的结点数组 public HaffManCode(double[] weight) //构造指定权值集合的哈夫曼树 { int n = weight.length; //n个叶子结点 this.leafNum = n; this.hnodes = new HaffmanNode[2*n-1]; //n个叶子结点的哈夫曼树共有2n-1个结点 for(int i=0; i

南昌大学JAVA期末复习题及答案

一、填空题 1.对象之间可能存在的关系有三种:_包含_、_继承__和_关联_。2.面向对象的软件开发过程大体可分为 __面对对象分析、__面对对象设计_和_面对对象测试__三个阶段。 3. Java 语言中实现多态的方法有 __继承__、_方法重载_ 和_成员覆盖__。 4. Java 语言具有可移植性、高性能、健壮性、安全性和独立于体系结构的__跨平台_特点。 5. JAVA语言规定object类是JAVA 程序中所有类的父类,当前类的构造方法用this()表示,直接父类的构造方法用super()表示。 6.如果一个Java Applet 源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet 必须是Applet类的子类并且存储该源程序文件的文件名为MyApplet.java。 7.如果一个Java Applet 程序文件中定义有3 个类,则使用Sun 公司的JDK 编译器javac.exe编译该源程序文件将产生3个文件名与类名相同而扩展名为.class的字节码文件。 8.在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用2 字节内存空间,这样,无论是中文字符还是英文字符,都是占用2字节内存空间。 10. Applet 是能够嵌入到HTML格式的文件中,并能够在浏览器中运行的Java。

11.在Java 中,线程的模型就是一个CPU、程序代码和数据的封装体。 12.键盘键入字符串并在计算机屏幕上显示,这时的数据源是键盘。13. JAVA语言是第一个语言本身就支持线程的编程语言,其对线程的支持主要通过 https://www.wendangku.net/doc/917557374.html,ng.Thread类和https://www.wendangku.net/doc/917557374.html,ng.Runnable接口来实现。14.设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。 int s = 0 ; for ( int i = 0 ; i < MyIntArray.length ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println( s ); 15. JVM 是Java Virtual Machine的缩写; AWT 是abstrac window toolkit的缩写。 16.单重继承是指只有一个父类的继承;多重继承是指有一个以上父类的继承;Java 语言出于安全、可靠的考虑,仅支持单重继承;但Java 语言可通过接口来实现多重继承。 17. Java 中构成图形用户界面的元素和成分可分为 _容器_、_控制组件_和___用户自定义________________等三类。 18.一个线程的完整生命周期包括如下 5 种状态 _新生_、__就绪_、_运行_、_阻塞_和_死亡_。

南昌大学JavaWeb实验报告

实验一Java Web开发环境配置 学生姓名:学号:专业班级: 实验类型:□验证□综合□设计□创新实验日期: 2018.04.11 实验成绩:一、实验目的 1.掌握设置JDK环境。 2.掌握设置Tomcat环境。 3.安装、掌握Eclipse,MyEclipse 或IntellijIDEA软件,为学习 JSP和进行 JSP的实验做好准备工作。 4.编写JSP 程序并运行JSP页面。 二、实验要求 1.安装并设置 Java SDK 软件包。 2.安装并设置Tomcat软件包。 3.安装并设置 Eclipse软件、MyEclipse或IntellijIDEA软件。 4.编写一个简单的JSP,并在浏览器中浏览。 5.创建一个Web项目,并进行部署运行。 三、实验步骤 (一) JDK安装与配置 (二) Tomcat安装与配置 (三) IDE(Eclipse、MyEclipse、或IntelliJ IDEA)的安装与配置 (四)在IDE中建立一个jsp (五)部署JSP工程文件 (六)启动Tomcat服务器 (七)浏览JSP 四、实验数据 (一)JDK安装与配置 首先去oracle官方网站下载jdk的压缩包,根据自己的系统类型选择合适的版本即可.我的系统是Linux,于是选择Linux x64版本的下载即可.

下载后,将压缩包解压,下面是我解压的路径,以及压缩包中的内容 然后就是进行环境变量的配置,将jdk关键组件添加到环境变量.我使用的是zsh,在/home/.zshrc配置文件中添加下面三行即可: 验证是否安装成功: (二)Tomcat安装与配置 首先去apache的官网下载适合自己系统的tomcat版本,进行解压即可. 在bin目录下有一些可执行脚本,运行startup.sh,就可以成功开启tomcat服务器.

太原理工大学数值计算方法实验报告

本科实验报告 课程名称:计算机数值方法 实验项目:方程求根、线性方程组的直接解法、线性方程组的迭代解法、代数插值和最小二乘拟合多项式 实验地点:行勉楼 专业班级:******** 学号:********* 学生:******** 指导教师:誌,冬华 2016年4 月8 日

y = x*x*x + 4 * x*x - 10; return y; } float Calculate(float a,float b) { c = (a + b) / 2; n++; if (GetY(c) == 0 || ((b - a) / 2) < 0.000005) { cout << c <<"为方程的解"<< endl; return 0; } if (GetY(a)*GetY(c) < 0) { return Calculate(a,c); } if (GetY(c)*GetY(b)< 0) { return Calculate(c,b); } } }; int main() { cout << "方程组为:f(x)=x^3+4x^2-10=0" << endl; float a, b; Text text; text.Getab(); a = text.a; b = text.b; text.Calculate(a, b); return 0; } 2.割线法: // 方程求根(割线法).cpp : 定义控制台应用程序的入口点。// #include "stdafx.h" #include"iostream"

心得体会 使用不同的方法,可以不同程度的求得方程的解,通过二分法计算的程序实现更加了解二分法的特点,二分法过程简单,程序容易实现,但该方法收敛比较慢一般用于求根的初始近似值,不同的方法速度不同。面对一个复杂的问题,要学会简化处理步骤,分步骤一点一点的循序处理,只有这样,才能高效的解决一个复杂问题。

太原理工大学单片机实验报告

实验一双字节加法 一实验目的 (1)熟悉并掌握MCS-51指令系统和程序设计方法。 (2)掌握双字节加法的程序算法。 二实验设备 计算机 操作系统:Windows 98/2000/XP 应用软件:WAVE 6000或其他。 三实验内容 编写一个双字节加法程序并调试,设9930H存在R1R0中,6083H存在R2R3中,计算R1R0+R3R2,最后结果保存在R5R4中。 四实验原理 两数低位相加后保留进位位,高位数相加时,将低位的进位加上。 五实验程序流程图 开始 30H→R0,A9H→R1 B3H→R2,50H→R3 低位数相加 (R0)+(R2)→A,Cy A→R4 高位数带进位相加 (R1)+(R3)+(Cy) →A,Cy;A→R5 结束

七实验源程序 ORG 0 LJMP MAIN ORG 30H MAIN: MOV 30H,#25H MOV 31H,#13H MOV 32H,#14H MOV 33H,#35H MOV A,30H ADDC A,32H DA A MOV 40H,A MOV A,31H ADD A,33H DA A MOV 41H,A SJMP $ 八实验结果与分析 (40H)中的结果为39;(41H)中的结果为48.与计算结果相同说明实验正确。九实验心得与总结 通过实验增强了我们分析问题和解决问题的能力,以实践证实理论,从实践中加深对理论知识的理解和掌握。

实验二数据排序程序 一实验目的 (1)熟悉并掌握MCS-51指令系统和程序设计方法。 (2)掌握排序程序算法。 (3)掌握用循环程序实现数据排序的方法。 二实验设备 计算机 操作系统:Windows 98/2000/XP 应用软件:WAVE 6000或其他。 三实验内容 编写一个通用排序子程序并调试,其功能为将RAM的40H~4FH单元16个字节无符号二进制整数按从小到大顺序排序,将排序后的数据存放在50H~5FH缓冲区中。 四实验原理 从40H单元的第一个数开始依次和相邻单元的另一个数比较,如果顺序正确,则不作任何操作;如果顺序错误,则将这两个数位置对换。这样,在完成第一遍n-1次比较后,最小的数到了最后,所以第二遍比较只需要比较n-2次,最多作n-1遍比较就可完成排序。在比较中设立一个标志位flag清零,在循环结束时,若flag=1说明排序未完成,进入外循环;若flag=0,说明排序完成,程序结束。 五实验程序流程图

相关文档 最新文档
item content