当前位置:文档之家› 实验1 Sniffer 的安装使用(一)

实验1 Sniffer 的安装使用(一)

实验1  Sniffer 的安装使用(一)
实验1  Sniffer 的安装使用(一)

实验1 Sniffer 的安装使用

三、教学目的:

了解并掌握Sniffer Pro的安装,会使用Sniffer Pro捕获数据包,了解并掌握IP、TCP数据包的分析。

四、教学重点难点:

重点为Sniffer Pro的使用。难点为分析IP、TCP数据。

五、课型、教学方法:

实训

六、教学用具:

计算机网络实验室

七、教学过程:(含复习提问、教学内容要点板书提纲、课堂练习、教学进程时间分配、课外作业等)

讲述本次实验的主要操作步骤

学生自己操作

演示

实验步骤

一、安装Sniffer Pro

1、运行程序SnifferPro_4_70_530,安装Sniffer Pro。

2、再运行汉化包。

二、开始与停止捕获过程

捕获数据的机制相对比较简单,所有需要做的就是进行实际的分析,解释要查找什么、分析什么以及分析过程的细节。

1.首先,打开Sniffer Pro程序,选择一个适配器。打开了程序后,会看到图4.1中的屏幕。

图4.1浏览Sniffer Pro程序

2.打开Sniffer Pro程序后,选择Capture(捕获)-Start(开始),或者使用F10键,或者是工具栏上的开始箭头(通过这次实验,大家应该非常了解这个菜单结构了)。因为捕获过程需要几分钟才能完成,这时我们可以先了解如何自定义Sniffer Pro高级与捕获窗口,这样后面就可以节省一点时间。

3.下面,在Sniffer Pro程序中,会看到高级系统被自动调用,如图4.4所示。打开这个窗口后,不会看到任何东西,除非停止捕获过

程才可以查看内容。让捕获过程持续运行一段时间,这时可以自定义高级系统,这样就能实时地看到不断出现的问题。

4.浏览图4.4中的屏幕。高级窗口这时会滚动到窗口左边,只能看到工具栏,而没有任何详细资料。如果要查看详细资料,就要找到高级窗口对话框左上角的箭头,这个箭头在“层次”这个词的右边。单击这个箭头后,会显示出高级功能的另一部分窗口,如图4.3所示。

图4.4 开始捕获过程时调用高级系统

这里有很多内容,不要急于了解所有这些内容。后面学习中再解释所有的Sniffer Pro的高级功能。现在,你只需要了解如何进行基本的捕获过程。在用Sniffer Pro进行任何分析之前,所有的SCP都必须了解使用工具的机制和基本问题。在掌握了“怎样”这个问题后,就可以接着去了解“什么”和“为什么”的问题。

5.可以看到能自定义Sniffer Pro程序用于将来的捕获过程,在下面要对如何使用高级功能进行分析。如果要进一步自定义Sniffe Pro 高级功能,就要在一个视图中显示所有定义对象的详细资料。如果再看一次图4.3,你会发现在高级对话框的最右边有两个卷标:一个是“总结”卷标,另一个是“对象”卷标。在图4.4中,你会看到这两个卷标都消失了,被两个窗口取代。如果要改变视图,只需要将鼠标停在图4.4中圈起的位置,这时箭头的形状会改变,然后可以将这一栏上移,就可以看到Sniffer Pro高级窗口中对象的所有详细资料了。

图4.3 在高级系统中查看更多的细节

图4.4浏览高级系统内的对象卷标

6.已经完全了解如何自定义Sniffer Pro高级窗口后,使浏览更容易。现在,我们可以停止捕获过程。再次进入Capture(捕获)菜单,然后选择Stop(停止)或者按下F10键。还可以使用工具栏,选择黑方框图标来执行同样的功能。

7.停止了捕获过程后,屏幕上不会有任何反应。这时因为没有要求Sniffer Pro显示捕获的内容。还可以按F9键来执行“停止并显示”的功能,或者可以进入Capture(捕获)菜单,选择“停止并显示”。也可以使用工具栏图标来执行同样的功能,这个图标的样子就像带望远镜的黑色的方盒。因为我们先停止了捕获过程,所以也可以在停止后选择Capture(捕获)菜单中的“显示”,按下F5键,或者只使用工具栏中的“望远镜”。在这里,我们使用的是第一种方法,选择了“显示”后,Sniffer Pro高级窗口会迅速地一直最小化,然后就会再次出现高级对话框,如图4.5所示。

图4.5 选择显示后查看高级对话框

8.现在查看对话框(停止捕获过程后),会看到几个非常重要的变化。第一个变化是Sniffer Pro高级窗口中不再增加内容了,可以说是因为停止了捕获过程,所以不再有对象增加了。第二个变化是对话框的标题栏。起初只简单地显示“Expert”(高级)。现在显示的是捕获文件的名字,以及Sniffer Pro在捕获过程中观察到的帧的数目——在图中是374个以太网帧。

尽管还没有保存捕获文件并为它命名,但标题栏仍显示该文件为Snif1,这是系统的默认文件名。如果选择“文件”菜单,并选择“另存为”,会看到Sniffer Pro将文件保存为Snif1.cap。

9.另一个主要变化是对话框最下角增加了一组窗口卷标,包括高级(当前查看的视图)、——、——、————、————和————。10.选择了解码卷标时,屏幕显示如图4.6,会看到Sniffer Pro缓冲器中的所有实际“数据”。这里并不是要决定用这些数据来做什么,但是应该知道已经做了什么。回忆本书前面讨论的内容,现在看到的内容就是(从上至下)——、————和————的内容。

图4.6 查看解码卷标

SCP专业考试中,总结、详细资料和Hex窗格的内容占很大比重。需要了解它们分别是什么,以及在每个窗格中会看到哪些内容。

4.1.4 浏览并分析捕获结果(请同学们完成以下详细步骤)

(1)总结、详细资料与Hex窗格进行监控————————————————————————————————

(2)显示设定选项:————————————————————————————————————————

(3)总结帧数据包

图4.7

保存选中帧:————————————————

选择范围:————————————————

选择标记: ————————————————————————

上一个被选帧:————————————————————

下一个被选帧: ————————————————————

(4)重新查看上图,会发现下一栏是No.,其作用是:——————

右边一栏是状态栏。这一栏表示帧是否被标记。标记是捕获文件中的一个记号。再右边一栏是来源地址,接着是目的地址栏。作用是:——————

4.1.3.详细资料窗格

已经了解了帧的内容,现在让我们来看看从数据的表格视图中可以得到哪些信息。

利用sniffer数据捕获功能捕获数据并进行数据桢解析分析,例如:

图4.8 专家分析系统

(1).如上图所示,你会看到IP文件头的各部分内容。现在把它们与图中的数据相对应来看:(根据自己的Sniffer专家分析系统的分析内容完成以下:)

版本——————————————

?IHL——————————————————

?ToS ToS位可以提供服务质量(QoS)信息————————

————————————————————————

(Sniffer Pro会提供一些必要的信息,这样就不必为它们的意义伤脑筋了。)

?总长度——————————————————————

?ID————————————————————————

?标记——————————————————————

?分段差距————————————————————

? TTL———————————————————————

?协议————————————————————————

?校验和————————————————————

?SA————————————————————

?DA——————————————————

?选项与Padding这里没有任何选项。在文件头中不一定必须

有选项这部分内容。

?数据—————————————————————————

(2)TCP文件头可以分成几个部分。现在可以查看TCP文件头的所有详细内容。在TCP中,需要使用端口序号来识别并建立与上层协议之间的连接。这个文件头会像IP文件头一样被分解来查看各部分内容,现在我们来了其中各项的详细内容:

?来源端口——————————————————

?目的端口————————————————————————

?顺序序号顺序序号(和下一个期望顺序序号)用来进行顺序控制。

?确认号因为已经设定了ACK字节(在下面几行中,确认字节

设定为1),确认号代表——————————————————。

?差距数据差设定为40个字节,可以说明——————。

?标记标记为10。

?U紧急指针(URG)设定为——————。

?A确认字节(ACK)设定为——————。

?P入栈程序(PSH)设定为——————。

?R重新连接(RST)设定为——————。

?S同步顺序号(SYN)设定为——————。

?F释放连接(FIN)设定为————————。

?窗口窗口为————。

?校验和校验和为——————。

?选项+Padding————————。

数据————————————。

这些信息会使我们更有兴趣深入了解这些内容,我们甚至还没有得到全部的负载内容。Sniffer Pro是一种非常有价值的工具,可以用它来深入挖掘数据的详细资料,就像我们正在做的一样。我们还只是在查看一个数据帧而已!即使你不能全部理解这些内容(关于协议代码的信息总量非常多),至少可以进行捕获过程,然后研究一些网络或者RFC中的信息,这样会发现正在解析的协议中的更多内容。直到现在,还只是在告诉你如何使用Sniffer Pro分析窗格(总结、详细资料和Hex)来读取捕获的数据。

实验1认识数据库

实验一认识本课程的主要实验环境 ——SQL SERVER 2000(2005) 一、实验目的: 1.初步了解数据库、数据库管理系统的概念。 2.重点认识和了解一个具体的数据库管理系统——SQL SERVER 2000(2005) 3.知道SQL SERVER 2000(2005)这个数据库管理软件都由哪些组件组成?这些组件都分别管理哪些方面的工作? 4.对数据库里面包含的对象(表、视图、存储过程、触发器等)有个基本了解,为后面进一步学习打下基础。 二、实验内容: 1.什么是数据库?什么是数据库管理系统?目前市场上常见的数据库管理系统都有哪些?数据库是长期存储在计算机内、有组织的、可共享的大量数据的集合。 答:数据库管理系统是指再计算机中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。 SYBASE ,DB2 ,ORACLE ,MySQL ,ACCESS ,VF ,Foxpro ,MS SQL Server ,Informix ,PostgreSQL 2.SQL SERVER 2000(2005)是哪个公司的产品?它有什么特点? 答:微软,Microsoft SQL Server 2000 能提供超大型系统所需的数据库服务。大型服务器可能有成千上万的用户同时连接到SQL Server 2000 实例。SQL Server 2000 为这些环境提供了全面的保护,具有防止问题发生的安全措施,例如,可以防止多个用户试图同时更新相同的数据。SQL Server 2000 还在多个用户之间有效地分配可用资源,比如内存、网络带宽和磁盘I/O。 超大型Internet 站点可将其数据分开存放在多台服务器上,从而使处理负荷分散到多台计算机上,使站点能为成千上万的并发用户提供服务。 可以在一台计算机上运行多个SQL Server 2000 实例。例如,一个为其它许多组织提供数据库服务的组织可为每个客户组织单独运行一个SQL Server 2000 实例,而全部实例可集中在一台计算机上。这样,既隔开了每个客户组织的数据,同时又使服务组织只需管理一台服务器计算机从而减少了费用。 SQL Server 2000 应用程序可在装有SQL Server 2000 的计算机上运行。该应用程序通过Windows 进程间通讯(IPC) 组件(例如共享内存)而非通过网络连接到SQL Server 2000。这使SQL Server 2000 得以应用于应用程序必须在本地存储数据的小型系统中。 大型Web 站点和企业级数据处理系统通常会生成大量的数据库处理,超出了一台计算机的支持能力。在这些大型系统中,数据库服务由组成数据库服务层的一组数据库服务器提供。SQL Server 2000 不支持采用平衡负荷的聚集形式建立数据库服务层,但支持跨自主服务器组分存数据的机制。尽管每个服务器需分开管理,但组内的各个服务器可共同分担数据库处理负荷。共享同一工作负荷的一组自主服务器称为服务器联合体。

C语言指针实验报告

C语言程序设计实验报告 1实验目的 (1)掌握指针的概念,会定义和使用指针变量; (2)能正确使用变量的指针和指向变量的指针变量; (3)能正确使用数组的指针和指向数组的指针变量; (4)能正确使用字符串的指针和指向字符串的指针变量; 2实验内容 将一个任意整数插入到已排序的整形数组中,插入后,数组中的数仍然保持有序;要求: (1)整形数组直接由赋值的方式初始化,要插入的整数有scanf()函数数入;(2)算法实现过程采用指针进行处理; (3)输入原始数据以及插入整数后的数据,并加以说明;

3算法描述流程图

4源程序 #include main() { int a[100],m,i,*p,n,w; printf("请输入要输入的数组的元素个数:\n"); scanf("%d",&n); printf("请输入已排好序的数组:\n"); for(i=0;i=w;i--) { a[i+1]=a[i]; } a[i+1]=m; for(i=0;i<=n;i++) { printf("%-4d",a[i]); } printf("\n"); } 5测试数据 “1,3,5,7,9,11,13,15,17,19······10” 6运行结果 7出现问题及解决方法 在编写过程中,

for(i=n-1;a[i]>=w;i--) { a[i+1]=a[i]; } a[i+1]=m; 这一步没有注意a[i++]=m和a[i+1]=m中i++和i+1不同,a[i++]=m是先将的值赋给a[i],然后在执行自增;而在实验过程中忽略了这一点,造成了不必要的麻烦; 8实验心得 通过这次指针实验掌握了指针的概念,会定义和使用指针变量,并且能利用指针来简单化一些问题,给以后的编程带来了很大的便利;

数据库系统概论实验1——认识DBMS(Sql Server2005)

数据库系统概论 实验一认识DBMS——SQL Server 2005 (2课时) 实验目的: ?了解SQL Server 2005数据库管理系统 ?熟悉SQL Server 2005的主要管理工具 ?熟悉使用Management Studio创建数据库、数据表和插入数据的方法 ?了解交互式查询的方法 实验方法: 教师讲解并演示,学生跟做并练习 实验内容: 一、了解SQL Server 2005数据库管理系统 SQL Server是一个全面的、集成的、端到端的数据解决方案,为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。 二、熟悉SQL Server 2005的主要管理工具 1.SQL Server 2005 目前有6个版本,实验室安装的是Express Edition(个人版)。若要实现对数据库的各种可视化操作,需下载SQL Server Management Studio Express进行。 Management Studio Express是一种基于图形界面的简单高效的SQL Server 2005 Express管理工具,是SQL Server 2005的控制和操作中心,服务器的登录、注册、连接,以及对数据库的操作都可在其中进行。 2.服务器的启动和关闭 这两项操作不能通过Management Studio实现,需由配置工具里的SQL Server Configuration Manager进行。 1)使用Configuration Manager启动和关闭服务器。 2)分别使用Configuration Manager和控制面板设置在开机后自动启动服务。

湖南工业大学单片机实验报告 1认识实验

实验一、认识实验 实验一(一):存储器读写 一、实验目的 1、掌握寄存器、存储器读写等汇编指令; 2、掌握编程软件编辑、编译、调试等基本操作; 3、学习简单程序的基本调试方法。 二、实验设备 PC机、Keil 软件、Proteus软件。 三、实验内容 将70H-7FH16个字节单元的数据复制到片外存储器2000H开始的地址单元中,程序清单如下:ORG 0000H SJMP START ORG 0030H START:MOV 70H,#00H MOV 71H,#01H MOV 72H,#02H MOV 73H,#03H MOV 74H,#04H MOV 75H,#05H MOV 76H,#06H MOV 77H,#07H MOV 78H,#08H MOV 79H,#09H MOV 7AH,#0AH MOV 7BH,#0BH MOV 7CH,#0CH MOV 7DH,#0DH MOV 7EH,#0EH MOV 7FH,#0FH MOV R1,#10H MOV R0,#70H MOV DPTR,#2000H LOOP:MOV A,@R0

MOVX @DPTR,A INC R0 INC DPTR DJNZ R1,LOOP END 四、上机操作及调试步骤 1、启动PC机,打开Keil4软件,如图(1) 图(1) 2、建立Keil工程文件,如图(2) 图(2) 3、建立一个exe1工程文件(工程文件名任意取),不需要扩展名。选择工程存放路径,点击“保存”按钮。如图(3) 图(3)

4、选择芯片,51单片机在Atmel下,找到A T89C51,选中点击OK; 图(4) 5、因为使用汇编语言,下面弹出窗口选否; 图(5) 6、建立工程如图 图(6) 7、为工程添加文件,也就是汇编代码,点击新建按钮(或File->new),弹出Text1文本文件。新建.ASM文件如图

实验练习使用多用电表教学设计

高三级物理科选修3-1第二章《恒定电流》

4.应对策略:3+x高考物理学科考试说明中没有把电表的改装列入考试范围,因此对多用电表测量电压和电流重在掌握使用和读数,为了让学生更好的掌握测电阻的使用步骤,在测电阻前先介绍多用电表中的欧姆挡的原理。 五、教学策略选择与设计(教学资源、教学手段和主要教学方法) 教学媒体: 多媒体设备、多用电表(50型)、导线、电池、电键、滑动变阻器、电阻箱 教学方法: 探究式教学实验教学讨论教学 六、教学过程(要与备课组“20+20”课堂教学建模相一致) 教学环节教师活动 时 间 学生活动 时 间 设计意图 及资源准 备 (一)引入新课 1、通过前面的电学实验同学们掌握了电 压表和电流表的使用,有哪一种仪器既能测电 压又能测电流的呢? 2、多用电表除了能测电压和电流还能有 哪些功能? 3、本节课我们就一起了解多用电表并探 究多用电表的使用 1 分 钟 多用电表在生活中 也略有所闻,学生自然 就会想到多用电表 1 分 钟 与 教 师 活 动 同 步 进 行 资源 准备:摆放 在实验台 上的多用 电表等器 材及多媒 体展示; 设计 意图:激发 学生的求 知欲望 (二)进行新课 1、介绍多用电表的外形并对关键部件 多媒体展示多用电表并引导学生观察欧 姆表、交直流电压电流表、交流2.5V电压表 表盘的特点 4 分 钟 (1)观察多用电表 的外形,认识选择开关 的测量项目及量程;在 《导与练》P108例1图 甲1标上相应的部件名 称; (2)交流与讨论: 欧姆表、交直流电压电 流表、交流2.5V电压表 表盘各有什么特点?学 生代表发言; (3)检查多用电表 5 分 钟 与 教 师 活 动 交 替 进 行 资源 准备:多媒 体展示多 用电表的 外形; 设计 意图:(1)、 让学生了 解多用电 表的功能 和各刻度 线的特点, 为量程的

指针实验

实验名称:指针使用 实验目的:熟悉指针的正确用法。 相关知识:1.指针的定义;2.指针的引用; 实验内容: (1) 调试下面程序,指出错误原因。 main ( ) { int x=10,y=5,*px,*py; px=py; px=&x; py=&y; printf(“*px=%d,*py=%d”,*px,*py); } (2)调试下面程序。 #include main ( ) { float a; float *pa; scanf(“%f”,&a); printf(“1.%f\n”,a); pa=&a; scanf(“%f”,pa); printf(“2.%f\n”,a); } 在上述程序中,添加如下语句。 printf(“%x”,&a); printf(“%x”,pa); printf(“%x”,pa+1); ①记录这3条语句的输出值。其中“%x”表明输出的数值用十六进制数表示。 ②计算float类型所占空间的大小。 ③运算符sizeof可以计算出某一类型或变量所占存储空间的大小。请在上述程序中加入语句:printf(“%ld”,sizeof(float));将该语句的输出结果与步骤②的结果比较,观察是否一致。

(3)调试下面程序。 #include main ( ) { float a,b; float *pa=&a,*pb=&b; printf(“%x\n”,pa+pb); printf(“%x\n”,pa-pb); printf(“%x\n”,pa+5); printf(“%x\n”,pa-5); } 记录出错信息,分析出错原因。总结指针可以进行哪些运算。 下面的程序能获得上述运行结果吗? main( ) { char *s=”COMPUTER”; char c; printf(“which style you want to \n”); printf(“capital (c) or uncapital (u);”); c=getchar(); if (c=’c’) puts(s); else { s=”computer”; puts(s); } }

§2.9 练习使用多用电表实验报告

9 实验报告:练习使用多用电表 班级 姓名 ★ 实验目的:学会使用多用电表测量电阻、二极管正负极、电压、电流 实验原理: 欧姆表:欧姆表由灵敏电流计表头、电池、变阻器改装而成,欧姆表内阻就是这三部分电阻的串联阻值,根据闭合电路欧姆定律: x g R R R r E I +++=)(0 电流I 与x R 有一一对应关系,就可测出不同的电阻。可画出其内部如图1所示: 多用电表:电流表和电压表都是由灵敏电流计表头改装来的, 所以欧姆表、电流表和电压表可以公用一个表头改装成一个多用电 表。可画出其内部结构如图2所示: 注意事项: 因为表头是多用的,而电流必须从其正接线柱流入,表内又有 电池,所以红表笔接的是表头的正接线柱,但却与电池负极相连, 而黑表笔与电池正极相连。 测电阻时,用的是表内的电池,待测电阻必须与电源断开;测电压和电流时,不用表内电池,多用电表必须按照电压表和电流表的接法接入电路。 实验过程: 1、测量定值电阻: 1、将多用电表的 、 表笔分别插入+、-插孔,选择开关旋至 (“Ω”)档。 2、试测一下桌面上的电阻,根据指针所指示的位置,判断目前所选的 是否合适,然后将选择开关调到合适的位置。 3、将两个表笔 在一起,调节 旋钮,直至指针指到 侧0位置。 4、测量电阻并读出数据。R= Ω 5、如果测量另一电阻时改变了量程,必须重新进行 。 图 1 图2

2、测量二极管的正反向电阻: 1、将多用电表选择开关调至档,并选择×10或×100的档位。 2、将两个表笔在一起,调节旋钮,直至指针指到侧0位置。 3、用右手像握筷子那样抓住两表笔,接触到左手拿的二极管两端的电极。 4、测量出二极管的电阻并读出数据。 R= Ω,说明现在连接黑表笔的是二极管的极。 5、将多用电表选择开关调至×100或×10的档位。并将二极管电极颠倒,重新测量。 R= Ω,说明现在连接黑表笔的是二极管的极。 3、测量小灯泡两端电压: 1、按照黑板上的电路图连接电池、开关、变阻器、小灯泡。 2、将多用电表选择开关调至档,为了安全先选择最大量程,试测以后再选择合适的量程。 3、通过两个表笔将多用电表与小灯泡联在一起,读出小灯泡两端电压为伏。 4、测量小灯泡中的电流: 1、将多用电表选择开关调至档,为了安全先选择最大量程,试测以后再选择合适的量程。 2、通过两个表笔将多用电表与小灯泡联在一起,读出小灯泡两端电压为伏。 3、通过两个表笔将多用电表与小灯泡联,读出小灯泡中通过的电流为安。 实验心得:

C语言指针实验报告

C语言程序设计实验报告 1实验目得 (1)掌握指针得概念,会定义与使用指针变量; (2)能正确使用变量得指针与指向变量得指针变量; (3)能正确使用数组得指针与指向数组得指针变量; (4)能正确使用字符串得指针与指向字符串得指针变量; 2实验内容 将一个任意整数插入到已排序得整形数组中,插入后,数组中得数仍然保持有序; 要求: (1)整形数组直接由赋值得方式初始化,要插入得整数有scanf()函数数入; (2)算法实现过程采用指针进行处理; (3)输入原始数据以及插入整数后得数据,并加以说明;

3算法描述流程图

4源程序 #include main() { int a[100],m,i,*p,n,w; printf("请输入要输入得数组得元素个数:\n"); scanf("%d",&n); printf("请输入已排好序得数组:\n"); for(i=0;i=w;i--) { a[i+1]=a[i]; } a[i+1]=m; for(i=0;i<=n;i++) { printf("%-4d",a[i]); } printf("\n"); } 5测试数据 “1,3,5,7,9,11,13,15,17,19······10” 6运行结果 7出现问题及解决方法 在编写过程中,

for(i=n-1;a[i]>=w;i--) { a[i+1]=a[i]; } a[i+1]=m; 这一步没有注意a[i++]=m与a[i+1]=m中i++与i+1不同,a[i++]=m就是先将得值赋给a[i],然后在执行自增;而在实验过程中忽略了这一点,造成了不必要得麻烦; 8实验心得 通过这次指针实验掌握了指针得概念,会定义与使用指针变量,并且能利用指针来简单化一些问题,给以后得编程带来了很大得便利;

数据库实验1-6参考答案

实验一SQL Server使用初步 一、实验目的 1、熟悉SQL Server2000的组成及基本功能。 2、掌握SQL Server2000的登录及注册。 3、掌握SQL Server2000企业管理器的使用方法。 4、熟悉查询分析器的基本使用。 二、实验预习 1、什么是数据库管理系统DBMS?你所知道的DBMS有哪些? 答:DBMS是位于用户和操作系统之间的一层数据管理软件。常见的DBMS主要有:Oracle、db2、SQL Server、MySQL、PostgreSQL、SQLite、Firebird等等。 2、SQL Server 2000(2005)的安装步骤? 答:以企业版安装为例,步骤为: 将企业版安装光盘插入光驱后,出现以下提示框。请选择“安装 SQL Server 2000 组件” 出现下面对话框后,选择 "安装数据库服务器" 。 选择 "下一步",然后选择 "本地计算机" 进行安装。 在 "安装选择" 窗口,选择 "创建新的SQL Server实例..."。对于初次安装的用户,应选用这一安装模式,不需要使用 "高级选项" 进行安装。 "高级选项" 中的内容均可在安装完成后进行调整。 在 "用户信息" 窗口,输入用户信息,并接受软件许可证协议。 在“安装定义”窗口,选择“服务器和客户端工具”选项进行安装。 在“实例名”窗口,选择“默认”的实例名称。 在“安装类型”窗口,选择“典型”安装选项,并指定“目的文件夹”。 在 "服务账号" 窗口,请选择 "对每个服务使用统一账户..." 的选项。 在 "身份验证模式" 窗口,选择 "混合模式..." 选项,并设置管理员"sa"账号的密码。 最后按“下一步”即可完成安装。 检测安装:如果安装成功,应该能成功启动SQL Server,并且能和SQL Server 客户端连接上。 可以通过服务管理器来进行启动。

c语言指针实验报告

C语言实习报告 题目:指针及其应用 系别: 专业: 姓名: 学号: 日期:

一实验名称:指针及其应用 二实验目的: (1)掌握变量的指针及其基本用法。 (2)掌握一维数组的指针及其基本用法。 (3)掌握指针变量作为函数的参数时,参数的传递过程及其用法。 三实验内容: (1)运行以下程序,并从中了解变量的指针和指针变量的概念。 (2)运行以下程序,观察&a[0]、&a[i]和p的变化,然后回答以下问题: 1.程序的功能是什么? 2.在开始进入循环体之前,p指向谁? 3.循环每增加一次,p的值(地址)增加多少?它指向谁? 4.退出循环后,p指向谁? 5.你是否初步掌握了通过指针变量引用数组元素的方法? (3)先分析以下程序的运行结果,然后上机验证,并通过此例掌握通过指针变量引用数组元素的各种方法。

(4)编写函数,将n个数按原来的顺序的逆序排列(要求用指针实现),然后编写主函数完成: ①输入10个数; ②调用此函数进行重排; ③输出重排后的结果。 四分析与讨论: (1)指针的定义方法,指针和变量的关系。 定义方法: 数据类型 *指针变量名; 如定义一个指向int型变量的指针—— int *p;

则我们可以继续写如下代码—— int a = 4; p = &a; printf("%d", *p); 在这里,我们定义了一个变量a,我们把它理解为内存空间连续的4个字节(int型占用4字节),则这4个字节的空间保存着一个数4。&是取地址符号,即把变量a的地址(即这4个字节的首地址)赋给指针p (记住指针p的类型和变量a的类型要保持一致,否则的话,要进行类型转换)。这样子,指针p就保存着变量a的地址。我们如果把指针p当做内存空间里面另外一个连续的4个字节,那么这4个字节保存的数就是变量a的地址。printf("%d",*p)和printf("%d",a)的结果是一样的。这里的*是取变量符号(与&刚好作用相反,通过变量的地址找到变量),与定义时int *p的*号作用不同(定义时的*表示该变量是个 指针变量,而非是取它指向的变量)。 (2)数组和指针的关系。 指针与数组是C语言中很重要的两个概念,它们之间有着密切的关系,利用这种关系,可以增强处理数组的灵活性,加快运行速度,本文着重讨论指针与数组之间的联系及在编程中的应用。 1.指针与数组的关系 当一个指针变量被初始化成数组名时,就说该指针变量指向了数组。如: char str[20], *ptr; ptr=str; ptr被置为数组str的第一个元素的地址,因为数组名就是该数组的首地址,也是数组第一个元素的地址。此时可以认为指针ptr就是数组str(反之不成立),这样原来对数组的处理都可以用指针来实现。如对数组元素的访问,既可以用下标变量访问,也可以用指针访问。 2.指向数组元素的指针 若有如下定义: int a[10], *pa; pa=a; 则p=&a[0]是将数组第1个元素的地址赋给了指针变量p。 实际上,C语言中数组名就是数组的首地址,所以第一个元素的地址可以用两种方法获得:p=&a[0]或p=a。 这两种方法在形式上相像,其区别在于:pa是指针变量,a是数组名。值得注意的是:pa是一个可以变化的指针变量,而a是一个常数。因为数组一经被说明,数组的地址也就是固定的,因此a是不能变化的,不允许使用a++、++a或语句a+=10,而pa++、++pa、pa+=10则是正确的。由此可见,此时指针与数组融为一体。 3.指针与一维数组 理解指针与一维数组的关系,首先要了解在编译系统中,一维数组的存储组织形式和对数组元素的访问方法。 一维数组是一个线形表,它被存放在一片连续的内存单元中。C语言对数组的访问是通过数组名(数组的起始地址)加上相对于起始地址的相对量(由下标变量给出),得到要访问的数组元素的单元地址,然后再对计算出的单元地址的内容进行访问。通常把数据类型所占单元的字节个数称为扩大因子。 实际上编译系统将数组元素的形式a[i]转换成*(a+i),然后才进行运算。对于一般数组元素的形式:<数组名>[<下标表达式>],编译程序将其转换成:*(<数组名>+<下标表达式>),其中下标表达式为:下标表达式*扩大因子。整个式子计算结果是一个内存地址,最后的结果为:*<地址>=<地址所对应单元的地址的内容>。由此可见,C语言对数组的处理,实际上是转换成指针地址的运算。 数组与指针暗中结合在一起。因此,任何能由下标完成的操作,都可以用指针来实现,一个不带下标的数组名就是一个指向该数组的指针。

实验一 初步认识管理信息系统

实验一初步认识管理信息系统 1.实验学时:4学时 2.实验目的 ①初步认识管理信息系统,建立对管理信息系统的感性认识。 ②认识管理信息系统给组织和个人带来的影响。 3.实验内容 (a)上网查询管理信息系统相关著作和教材,了解其主要内容,列出三本教材的作者、出版社和目录,并写出自己认为管理信息系统课程的学习内容应该包括那些主要内容。 (b) 通过网络搜索和社会调查等手段,寻找信息系统。例如:学校教学管理部门使用的教务管理系统,学生使用的成绩查询系统、学生选课系统,图书馆使用的图书管理系统,宾馆使用的客房管理系统等。详细了解这些信息系统实现了哪里功能。具体描述实现每个功能的操作步骤。从应用的角度出发,了解这些信息系统给生活、学习、工作带来什么影响,分析这些系统是否还有不完善之处,应该在哪些方面加以改进。 4.管理信息系统举例 ①高等信息系统举例 高等院校教务管理系统涉及教务管理各环节,是一个面向学校各部门以及各层次用户的多模块综合管理信息系统。该系统可以促进学校教务管理的科学化、规范化、信息化,减员增效,为保障学分制的顺利实行提供有力的支持,是高等院校教务管理工作平台。 (a) 系统功能。 a) 综合教务管理:包含基本信息管理、注册管理、收费、学籍管理、教学计划管理、成绩管理、毕业管理等子系统。 b) 排课安排:根据教学计划和本学校的教室资源,制定每学期的课程、教室、时间的计划。 c) 选课管理:支持学生的选课功能,根据学生的培养计划来预制选课时学生的选课信息及课程的选课情况。每学期,根据教学计划和排课系统,由学生在网上制定个人的学期计划。选课分为三个阶段——预选、正选、退课选,以最大程度地解决教学资源有限的问题。 d) 教材管理:包括教材信息、教材征订、库房管理、统计报表等几个功能模块。系统采用C/S和B/S结合的架构。 e) 教学质量评价:以网上填写评价问卷的方式完成学生评教、专家评教和教师互评,可以动态形成评价系和问卷。 f) 师资管理:师资管理系统主要功能模块包括编码维护、师资查询、教师统计等。 ②图书管理系统

【实验指导书】实验7:指针 (1)

(2014~2015学年-第1学期) 1. 理解指针、地址和数组间的关系。 2. 掌握通过指针操作数组元素的方法; 3. 掌握数组名作为函数参数的编程方式。 4. 掌握通过指针操作字符串的方法。 5. 了解掌握使用断点调试程序的方法。 二、实验环境: 操作系统:Window 8 编译环境:CodeBlock 13.02 三、实验要求及内容(根据实验要求,将整个实验过程需要的数据和截屏记录于此,并整理成实验步骤。): 1.设计一个程序计算输入的两个数的和与差,要求自定义一个函数sum_diff(float op1,float op2,float *psum,float *pdiff),其中op1和op2是输入的两个数,*psum和*pdiff是计算得出的和与差。 解: (1)流程图如图1所示: 图1 程序7-1的流程图

图2 实验7-1实验源代码 (3)运行结果(测试用例) 实验7-1运行结果如图3所示 图3 实验7-1运行结果 2. 输入n 个正整数,使用选择法将它们从小到大排序后输出。要求:利用所学指针的内容实现。 提示:在指针这一章所学的冒泡排序算法基础上改写。 解: (1)流程图如图1所示: 图1 程序7-2的流程图

图2 实验7-2实验源代码(3)运行结果(测试用例)实验7-2运行结果如图3所示 图3 实验7-2运行结果

3. 输入10个整数存入数组a ,再输入一个整数x ,在数组a 中查找x ,若找到则输出相应的下标,否则显示“Not found ”。要求定义和调用函数seach(int list[],int n ,int x),在数组list 中查找元素x ,若找到则返回相应的下标,否则返回-1,参数n 代表数组list 中元素的数量。试编写相应程序。 解:(1)流程图如图1 7-3的流程图 (2)源代码 源代码如图2所示

数据库实验1 认识数据库管理系统(2学时)

实验一认识数据库管理系统(2学时) 【实验目的】 1. 了解关系型数据库;了解实用数据库管理系统SQL Server 2000的架构。 2. 了解表结构及SQL Server2000的基本数据类型。 3. 明确本课程的实验任务总目标和各子任务目标及实验任务进度。 【实验要求】 1.了解安装SQL Server 2000的软硬件要求及安装过程。 2. 掌握SQL Server 2000企业管理器和查询分析器的使用。 【实验内容】 1. 选择一个实用的DBMS系统(SQL Server 2000),完成该系统的安装、启动和登录。 2. 分别使用SQL Server 2000企业管理器和SQL语句,完成学生管理系统数据库的创建、数据库属性的修改操作。 (1)创建一个数据库,要求如下。 ●数据库名“stu_DB”。 ●数据库中包含一个数据文件,逻辑文件名为stu_DB_data,磁盘文件名为 stu_DB_data.mdf,文件初始容量为10MB,最大容量为100MB,文件容量递增值为 5%。 ●事务日志文件,逻辑文件名为stu_DB_log,磁盘文件名为stu_DB_log.ldf,文件初始 容量为5MB,最大容量为30MB,文件容量递增值为2MB。 (2)对该数据库做如下修改。 ●添加一个数据文件.逻辑文件名为stu_DB2_data,磁盘文件名为stu_DB2_data.ndf, 文件初始容量为5MB,最大容量为50MB,文件容量递增值为5MB。 ●将日志文件的最大容量增加为50MB.递增值改为3MB。 【实验步骤】 一、SQL Server的安装 1.根据安装机器软硬件的要求,选择一个合适的版本,以下以开发版为例。 2.将SQL Server 2000 DVD 插入DVD 驱动器。 3.在自动运行的对话框中,单击“运行SQL Server 安装向导”。 4.在“最终用户许可协议”页上,阅读许可协议,再选中相应的复选框以接受许可条款和条件。接受许可协议后即可激活“下一步”按钮。若要继续,请单击“下一步” 若要结束安装程序,请单击“取消”。 5.在“SQL Server 组件更新”页上,安装程序将安装SQL Server 2000 的必需软件。有关组件要求的详细信息,请单击该页底部的“帮助”按钮。若要开始执行组件更新,请单击“安装”。更新完成之后若要继续,请单击“完成”。 6.在SQL Server 安装向导的“欢迎”页上,单击“下一步”以继续安装。 7.在“系统配置检查(SCC)”页上,将扫描安装计算机,以检查是否存在可能妨碍安装程序的条件。 8.在“注册信息”页上的“姓名”和“公司”文本框中,输入相应的信息。若要继续,请单击“下一步”。 9.在“要安装的组件”页上,请选择要安装的组件。选择各个组件组时,“要安装的组件”

实验报告:练习使用多用电表

实验报告:练习使用多用电表 班级 姓名 学号 时间 等次 一、实验目的: 1.会使用多用电表测量 、电流和 2.会使用多用电表测量二极管的 ,并据此判断二极管的 。 3.会使用多用电表探索黑箱中的电学元件. 二、实验原理: 欧姆表:欧姆表由灵敏电流计表头、电池、变阻器改装而成,欧姆表内阻就是这三部分电阻的串联阻值,根据闭合电路欧姆定律:x g R R R r E I +++=)(0 电流I 与x R 有一一对应关系,就可测出不同的电阻。可画出其内部如图1所示: 多用电表:电流表和电压表都是由灵敏电流计表头改装来的,所以欧姆表、电流表和电压表可以公用一个表头改装成一个多用电表。 三实验器材: 多用电表、直流电源、开关、导线若干、小电珠、二极管、定值电阻.电学黑箱 四、实验步骤 1.观察多用电表的外形,认识选择开关的测量项目及量程. 2.检查电表的指针是否停在表盘刻度 端的零位置,若不指零,则可用小螺丝刀进行机械调 。 3.将 、 表笔分别插入“+”“-”插孔. 4.如图甲所示连好电路,将多用电表选择开关置于直流 挡,测小电珠两端的电压. 5.如图乙所示连好电路,将选择开关置于直流 挡,测量通过小电珠的电流. 6.利用多用电表的欧姆挡测三个定值电阻的阻值,比较测量值和真实值的误差. 7.研究二极管的单向导电性,利用多用电表的欧姆挡测二极管两个引线间的电阻,确定正负极. 8.探索黑箱内的电学元件.1.元件与现象 图1

五:实验过程: 1、测量小灯泡两端电压: ①按照甲电路图连接电池、开关、变阻器、小灯泡。 ②将多用电表选择开关调至档,为了安全先选择最大量程,试测以 后再选择合适的量程。 ③通过两个表笔将多用电表与小灯泡联在一起,读出小灯泡两端电压为伏。 2、测量小灯泡中的电流: ①将多用电表选择开关调至档,为了安全先选择最大量程,试测以后再选择合适的量程。 ②通过两个表笔将多用电表与小灯泡联在一起,读出小灯泡两端电压为伏。 ③通过两个表笔将多用电表与小灯泡联,读出小灯泡中通过的电流为安。 3.测量定值电阻: ①将多用电表的、表笔分别插入+、-插孔,选择开关旋至(“Ω”)档。 ②将两个表笔在一起,调节旋钮,直至指针指到侧0位置。 ③测量电阻并读出数据。R= Ω ④如果测量另一电阻时改变了量程,必须重新进行。 4、测量二极管的正反向电阻: ①将多用电表选择开关调至档,并选择×10或×100的档位。 ②将两个表笔在一起,调节旋钮,直至指针指到侧0位置。 ③用右手像握筷子那样抓住两表笔,接触到左手拿的二极管两端的电极。 ④测量出二极管的电阻并读出数据。 R= Ω,说明现在连接黑表笔的是二极管的极。 ⑤将多用电表选择开关调至×100或×10的档位。并将二极管电极颠倒,重新测量。 R= Ω,说明现在连接黑表笔的是二极管的极。 5.探索黑箱内的电学元件

C语言实验六实验报告——指针

一、实验项目名称 指针 二、实验目的 1.掌握指针的基本概念和基本用法。包括:变量的地址和变量的值,指针变量的说明、指针变量的初始化、指针的内容与定义格式、指针的基本运算等; 2.掌握数组与指针的关系并能够利用指针解决数组的相关问题; 3.掌握字符串与指针的关系并能够利用指针处理字符串的问题; 4.掌握指针与函数的关系并能够利用指针处理函数问题; 5.了解指向指针的指针的概念及其使用方法; 6.能够使用指针进行程序设计。 三、实验内容 有关指针的程序设计 1.编程实现:任意输入的10个数,求其平均值。 要求: (1)10个数采用scanf语句读入。 (2)利用指针实现对这10个数的访问。 (3)要求平均值的精度为小数后面2位。 2.编程实现:将一个任意整数插入到一个已排序的整数数组中,插入后数组中的数仍然保持有序。 要求: (1)整数数组由初始化方式输入。任意整数由scanf函数输入; (2)实现过程采用指针处理; (3)输出原始数组数据以及插入数据后的数组数据并加以相应说明。 3.编写函数newcopy(char *new,char *old),它的功能是删除old所指向的字符串中的小写字母,并将所得到的新串存入new中。 要求: (1)在主函数中以初始化方式输入一个字符串; (2)调用newcopy()函数; (3)在主函数中输出处理后的结果。 4.编程实现:输入三个整数,按由大到小的顺序输出。

要求: (1)通过scanf函数输入三个数据并存入三个变量中; (2)利用指针实现从大到小输出; (3)修改程序,将三个整型数据改为字符型数据,输入三个字符,按从大到小数顺序输出; (4)修改程序,将三个字符型数据改为字符串数据,输入三个字符串,按从小到大顺序输出; (5)体会指针对不同数据处理的特点。 四、实验步骤及结果 一、 #include <> void main() { int a[10],n,sum=0; float aver;/* 定义平均数为浮点型*/ int *p=a;/*初始化*/ printf("Please input 10 numbers:\n"); for (n=0;n<10;++n) scanf("%d",&a[n]);/*输入十个数*/ for (n=0;n<10;++n) sum=sum+*(p+n);/*使用指针访问数据*/ aver=(float)sum/n; printf("Average is %.2f",aver);/*精确到小数点后两位*/ } 二、 #include <> void arr(int *a,int n);/*定义排序函数*/ void insert(int *a,int num);/*插入并排序函数*/ int n=10;/*定义数据个数,可修改*/ void main()

数据库实验1认识数据库管理系统

《数据库技术》 实验指导书徐州师范大学计算机科学与技术学院

实验一使用数据库管理系统(2学时) 【实验目的】 1.掌握服务管理器的启动和停止方法; 2.掌握注册服务器的步骤; 3.掌握在SQL Server 2008中创建和编辑数据库; 4.掌握备份、附加和分离数据库的方法 【实验要求】 1.熟练掌握SQL Server2008数据库服务器服务启动和注册方法; 2.熟练使用Management Studio界面方式创建及编辑数据库; 3.熟练进行数据库备份、分离附加操作; 4.独立完成实验内容,并提交书面实验报告。 【实验内容】 1. 管理SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动等操作; 2. 注册SQL Server 2008服务器。 3. 使用SQL Server 2008对象资源管理器和SQL语句(新建查询)两种方法,完成学生管理系统数据库的创建,修改数据库属性。 (1)创建一个数据库,要求如下。 ●数据库名“STUDENT”。 ●数据库中包含一个数据文件,逻辑文件名为student_data,磁盘文件名为 student_data.mdf,文件初始容量为10MB,最大容量为100MB,文件容量递增值为5%。 ●事务日志文件,逻辑文件名为student_log,磁盘文件名为student_log.ldf,文件初始 容量为5MB,最大容量为30MB,文件容量递增值为2MB。 (2)对该数据库做如下修改。 ●添加一个数据文件.逻辑文件名为student2_data,磁盘文件名为student2_data.ndf, 文件初始容量为5MB,最大容量为50MB,文件容量递增值为5MB。 ●将日志文件的最大容量增加为50MB.递增值改为3MB。 (3)将学生数据库更名为STU。 (4)备份STUDENT数据库。 (5)删除STUDENT数据库。 (6)还原STUDENT数据库。 4.附加给定的数据库文件并分离创建好的数据库文件。 【实验步骤】 1.管理SQL Server 2008服务器,主要包括启动、暂停、停止和重新启动等

实验练习使用多用电表教案

教学过程 一、复习预习 1.预习内容:闭合电路欧姆定律 2.复习:多用电表的使用 二、知识讲解 课程引入: 1.多用电表的外观:

(1)表盘:多用电表可以用来测量电流、电压、电阻等,并且每一种测量都有几个量程。外形如图,正面上半部的表盘上有电流、电压、电阻等多种量程的刻度,读数时要注意区分。 (2)挡位:多用电表正面下半部为选择开关,它的四周刻有各种测量项目和量程。包括直流电流、直流电压、交流电压、电阻。 (3)其他:欧姆调零旋钮,指针定位螺丝和测试笔的插孔。 2.多用电表的使用: (1)多用电表使用完毕,表笔必须从插孔中拔出,并将选择开关旋至“OFF”或交流电压最大档。 (2)红黑表笔的接法:无论选择何种档位,都要确保电流从红笔流入多用电表,从黑笔流出。 (3)档位的选择:在不超过量程的基础上尽可能使用小量程。 (4)欧姆档的使用: ①内部构造:如图所示

②操作步骤 a.机械调零 b.选择合适的欧姆档,将红黑表笔短接,进行欧姆调零,使指针指向0 刻度(位于表盘的右侧) c.测电阻时,指针必须指在中值电阻附近,否则要重新选择欧姆档 d.更换欧姆档位后必须重新进行欧姆调零 3.多用电表的读数 (1)直流电流和直流电压档的读数:直流电流和电压刻度是均匀的,读数时共用,但需按比例计算,如取5 mA量程读数时可利用满刻度数值为“50”的刻度线,只是“50”相当于“5 mA”。 (2)欧姆档的读数:读数×倍率 (3)二极管具有单向导电性,若用欧姆表两表笔接触二极管两极,测得电阻较小时与黑表笔相连的为二极管的正极;测得电阻较大时,与黑表笔相连的为二极管的负极。 4.注意事项 (1)忌不调零就使用多用电表。 (2)忌搞错连接方式,测电压需并联,测电流需串联。 (3)忌搞反直流电流方向,直流电要从正极测试笔插孔流入,从负极测试笔插孔流出。 (4)忌用手接触测试笔的金属杆,特别在测电阻时。 (5)忌不进行欧姆表调零,就用多用电表测电阻值。

实验报告一(指针)

指针 实验一指向变量得指针变量编程 一.实验目得与要求 1、理解指针得概念。 2、掌握指针变量得定义与使用。 3、掌握指针变量作为函数参数得使用方法。 二.实验题目 1、用指针变量编程,求数组中得最大元素与最小元素. #include"stdio、h” #defineN10 voidmain() { ?voidmaxmin(int arr[],int *pt1,int *pt2,intn); int array[N]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;?p1=&a; p2=&b; ?maxmin(array,p1,p2,N); printf("max=%d,min=%d\n",a,b); } void maxmin(int arr[],int *pt1,int *pt2,int n) { int i; ?*pt1=*pt2=arr[0]; for(i=1;i

二.实验题目 2、用字符指针编程求出字符串中指定字符得个数。 例如:假设字符串为:“abcdaghckpamn”,指定字符为‘a’,则结果为3. 要求:从main函数输入字符串与指定字符,输出结果。 #include #defineMAXLEN 20 int CountLetter(char*str, char ch) { ?int time = 0; while(*str) ?if(*str++ ==ch) ?time++ ; return time; } int main() { ?char str[MAXLEN] ; char ch; ?printf("Please input a string:\n"); scanf(”%s”,str); getchar();//get enter printf("Input the a letter to count:"); scanf("%c", &ch); ?printf("%d\n",CountLetter(str, ch)) ; } 实验三指向一维数组得指针变量编程 一.实验目得与要求 1、理解指针与数组之间得关系。 2、掌握用指针变量引用数组元素得方法。 3、掌握用指向一维数组得指针变量编程。 二.实验题目 3、已知一个整型数组,编程将其数组元素得值改为当前元素与相邻得下一个元素得乘积,数组得最后一个元素改为它与第0个元素得乘积,要求用指针变量实现。 例如:已知a[5]={1,2,3,4,5}; 计算后a[5]={2,6, 12, 20,10}。 #define N 5 #include”stdio、h”

相关主题
文本预览
相关文档 最新文档