当前位置:文档之家› 可视化程序设计-实验指导书

可视化程序设计-实验指导书

可视化程序设计-实验指导书
可视化程序设计-实验指导书

C++简介

一、C++语言和面向对象

1、C与C++

C++是更好的C和面向对象的C;

C++的基本单位是类(Class),它关注的是自然界中稳定事物,它有固定的属性(Property)和方法(Method),只要用类把事物描述好存入库中,然后根据需要改变这些事物联系起来的方法,就能达到以不变应万变的目的,这是面向对象程序设计的基本思想;

C的基本单位是函数(Function),它关注的是事物之间的联系,而这种联系是变化的、不稳定的,只要有一点小变化,就会引起整个系统功能的大变化;

2、类(Class)

类的开式类似于C语言中的结构体,只是比结构体多了成员函数(Member Function)

typedef struct _Entity

{

int ID;

char Caption[50];

char Name[50];

char Type[250];

char CreatedTime[20];

char Keyword[200];

} Entity;

//------------------------------------------------------------------------------

class TEntity

{

private:

int ID;

char Caption[50];

char Name[50];

char Type[250];

char CreatedTime[20];

char Keyword[200];

public:

TEntity(int id, char* caption = NULL, char* name = NULL, char* type = NULL, char* createdtime = NULL, char* keyword = NULL);

TEntity(TEntity& entity)

{

ID = entity.ID;

strcpy(Caption, entity.Caption);

strcpy(Name, https://www.doczj.com/doc/ad13591806.html,);

strcpy(Type, entity.Type);

strcpy(CreatedTime, entity.CreatedTime);

strcpy(Keyword, entity.Keyword);

}

~TEntity(void);

void ReadFromFile(const char* FileName);

};

一般说来一个类的会在两个文件中实现:

在头文件(*.h)中对类进行说明,象上一页的代码就应放在头文件中。

在源文件(*.CPP)中完成类成员函数的实现,象上面WriteToFile与ReadFromFile的具体实现的代码就应放在CPP文件中。

3. 封装

通过上面的形式,对类中的私有成员进行了封装,而公有成员函数则是该类对外统一的接口,这种封装可以使类之间的减少相互干扰。这样从外面来看,类就是一个通过接口能完成一定功能的“黑匣子”,而用户根本不需要关心类的内部实现情况。

4. 继承

通过继承,可以子类具有父类的的所有特性(成员数据与成员函数)。

(1)继承的方式

继承方式有三种:

public 公有方式

private 私有方式

protected 保护方式

继承方式决定了派生类对继承基类属性的使用权限

无论何种继承,基类的private成员都不能被派生类访问

(2)派生类的构造函数与析构函数

基类的构造函数与析构函数不能被派生类继承。派生类对象建立时,先执行基类的构造函数,然后执行派生的构造函数。对于析构函数来说,其顺序刚好相反。

(3)派生类成员函数的重载

当派生类中需要扩展或修改某些成员函数的功能时,则在派生类中要重新声明这些函数,然后在实现部分重新实现被声明的函数。

如果是在原有功能进行扩展,则要在派生类函数中调用基类的函数。

如不需要原有功能,也可以不调用基类的函数。

这就是函数的重载,它可以用同一个函数名实现不同的功能。

5. 重载

这是C++不同于C语言的一个重要特征。它允许几个功能相似的函数共有一个函数名称。

实际上,C++通过一种特殊的命名技术来解决重载的问题,通过参数的个数和参数的类型来确定特定的函数。但不能通过不同的函数返回值来进行区分。

正确 不正确

4. 多态

用相同的指令,调用不同的函数。

(1)编译时多态:如前面的函数重载实现的就是编译时多态。它可以用相同的函数名,根据函数参数的不同(数量或类型)去实现不同的功能。但调用什么函数去实现什么功能却是在编译时就已确定,并以后不能更改,是一种静止的多态。

(2)运行时多态:它是利用虚函数实现的。用同一条指令,可以根据程序运行时的不同的情况去调用对应的函数去实现不同的功能。 如薪水的计算或几何形状的显示。 CShap *pShape[6]; for(int i=0; i<6;I++)

pShape[I]->display();

二、Windows 的运行机制 1、Windows 的元素-------窗体 2、Windows 的动力--------消息

多任务成为Windows 的基本功能,因此引入了事件驱动机制。

它不同于过程驱动,没有固定的流程,而是等待用户或系统发出的指令,再来响应。

BCB 简介

一、BCB 的历史与未来

Borland 公司是历史上编程工具第一开发商。

int fn(int x);

folat fn(int x); double fn(int x);

long double fn(int x);

int abs(int x); float abs(float x); double abs(double x);

long double abs(long double x);

BCB就是Delphi for C++,它与Delphi十分相似:

●程序界面相同;

●使用相同的程序柜架VCL ;

●相同的开发过程;

●不同的只是语法。

新的VCL 有望用C++ 重写,使BCB 摆脱Delphi 的影响。

二、BCB的定位

语言工具应根据自身情况和目标进行选择,没有最好的工具,各种工具都有用。

BCB定位于Windows桌面应用程序开发,有强大的可视化开发能力,界面开发快;

对于桌面数据库开发有一定的优势;

开发系统级程序(驱动程序)非常困难;

三、BCB与其它语言的比较

1、与Delphi的比较

●由于Windows是由C语言写成,较Delphi调用API(应用程序接口)更为方便;

●更适合有C语言基础的程序员;

●但Delphi的资源更丰富;

2、与VC++的比较

●它们使用了不同的程序框架,VC++使用MFC(微软基础类库),BCB使用VCL(可视化组件库)●从层次上VCL优于MFC,能做到快速开发;

●不过MFC与Windows同出一门,MFC有微软的强力支持;

●VC++跨平台的兼容性更好;

●VC++运行时间长,积累的资源最多;

●C++是一种语言标准,好比图纸,而BCB与VC++则是根据这一图纸生产的不同的产品;

四、重要的不可视组件与BCB类

1、AnsiString

是功能很强的字符串类,利用构造函数可以从其它类型生成AnsiString类型;

可以用+进行连接,还重载了<,>,<=,>=,!=等运算符,除进行字节比较外,还可以用AnsiCompare 方法进行中文比较;

它还有众多强大的方法,见表3.21

2、Tstrings与TStringList

用于访问多行文本,可以看到Lines属性就是Tstrings类对象指针;

Tstrings类的Strings属性就是一个AnsiString类对象的数组;

本质上是一个double类型的浮点数;

0 ------- 1899年12月30日零点计时起点

37750.9240272338 ---- 2003年5月9日22点10分35秒

整数部份----------距离计时起点的天数

小数部份-----------当前时间与全天24小时的比值

可以将TDateTime对象用作浮点数,也可以把浮点数转换成TDateTime,实际上可以方便地在时间类型与其它类型间完成转换;

用Now()函数可以取当前时间;

用DayOfWeek可以取出星期

0 1 2 3 4 5 6

三、BCB6的一般编程步骤 1、File|New 开始一个项目 2、设计界面,设置组件属性 3、撰写组件事件处理程序 4、运行程序

5、对程序中的错误进行调试和修改

6、在上面的过程中不要忘记随时保存文件

C++Builder 实例1 Hello World

一、程序功能

点击“隐藏”按钮,“Hello World ”消失,按钮变成“显示”;再点击“显示”按钮,“Hello World ”又显示出来,同时按钮变成“隐藏”。

通过此程序,要求掌握C++Builder 开发环境的使用,以及简单控件的使用方法。 二、设计步骤

1、 从Standard 面板放一个Label 控件和一个Button 控件,建立如图1-1界面:

图1-1

图1-2

图1-4

图1-3

图1-5

3、在“隐藏”按钮上双击或如图1-2选择对象观察器(Object Inspector )的事件(Event )页的OnClick 项,为Button1按钮添加单击事件响应代码如下

void __fastcall TForm1::Button1Click(TObject *Sender)//此行代码自动生成,不用书写 {

if(Button1->Caption=="隐藏") {

Button1->Caption="显示";

Label1->Visible=false;//Visible 属性为false 表示该控件不可见 } else {

Button1->Caption="隐藏";

Label1->Visible=true; //Visible 属性为true 表示该控件可见 }

}//此行代码自动生成,不用书写

4、 单击File->Save Project As 保存文件,如图1-3。保存时最好为每一个程序新建一个文件夹来存放

文件,如图1-4

5、单击运行按钮,如图1-5,运行程序。 三、C++Builder 项目文件介绍

1、 一般情况下在运行该程序以前,C++Builder 项目中只有图1-6中前6个文件,就是所谓的源程序。

1)Project1.bpr

C++Builder 的项目文件(Borland Project ),它统一管理着所有的源程序,通过打开它可以打开C++Builder 项目;

2)Project.cpp

主要包含了WinMain( )函数,WinMain( )函数的作用相当于Turbo C 中的Main( )函数。它实际上完成应用程序的初始化、创建如图1 这样的窗体。

这里顺便说一句,要深入学习C++Builder 编程,除了要对各种控件能熟练

使用以外,还要深入了解Windows 下程序运行的机制,打开黑匣子。

3)Unit1.h

窗体Form1是用一个类来实现的,Unit1.h 是这个类的头文件,在这个头文件中可以看见在界面中所放的每一个控件都对应成这个类的一个成员变量。添加的每一个事件(消息)响应,如“隐藏”按钮的单击事件响应,都对应成这个类的一成员函数。当然,这些操作都会自动完成,我们也可以手动进行操作。了解这些将有助于我们调试程序。

4)Uni1.cpp

它是窗体Form1的实现文件,具体实现程序功能。上面的代码就添加在这里,它是我们最常用的一个文件,但它不能单独工作。

5)Unit1.dfm

它主要定义窗体的位置信息以及外观信息。 6)Project1.res 它是资源文件,

2、 运行程序后,会增加后4 个文件。

扩展名为EXE 的Project1.exe 是经链接后生成的可执行文件,可在Windows 中直接运行;

扩展名为Obj 的文件,是对源程序编译后生成的目标文件,供链接程序使用以生成可执行文件;

图1-6

一、程序功能

验证用户输入的密码,如果正确则显示欢迎界面,如果密码错误,则提示用户重新输入,用户最多有三次输入密码的机会。

通过此程序,应掌握常用标准对话框函数,并建立阅读英文帮助文件的习惯。

二、设计步骤

1、从Standard面板放一个Edit控件和一个Button控件,建立如图2-1界面。

3、为Button1按钮添加单击事件响应代码如下:

*Sender)

{

static i=0;

if(Edit1->Text=="1234")

ShowMessage("欢迎");

else

图2-1

{

i++;

if(i==3)

{

ShowMessage("退出");

Close();

}

else

{

ShowMessage("口令错误"+AnsiString(i)+"次");

Edit1->SetFocus();//Edit1控件设置焦点

}

}

}

4、运行程序,并思考为什么变量I被定义成静态变量?

5、重新修改程序,让程序增加一些功能。

void __fastcall TForm1::Button1Click(TObject *Sender)

{

static i=0;

if(Edit1->Text=="1234")

ShowMessage("欢迎");

else

{

i++;

if(i==3)

{

//ShowMessage("退出");

Application->MessageBox("退出","错误",MB_OK+MB_ICONWARNING);

Close();

}

else

{

//ShowMessage("口令错误"+AnsiString(i)+"次");

AnsiString msg;

int nResult;

msg="口令错误"+AnsiString(i)+"次\n是否重新输入?";

nResult=Application->MessageBox(msg.c_str(),"提示",MB_YESNO+MB_ICONINFORMA TION);

if(nResult==IDYES)//根据用户的输入确定是否继续输入密码

{

Edit1->SetFocus();//Edit1控件设置焦点

Edit1->Clear();

}

else

Close();

}

}

}

6、程序中新增加的功能主要是因为使用了MessageBox函数,下面是它的介绍,摘录自C++Builder 的帮助文件,会看帮助是编程者必备的基本功。

int __fastcall MessageBox(const char * Text, const char * Caption, int Flags);

Description

Use MessageBox to display a generic dialog box a message and one or more buttons. Caption is the caption of the dialog box and is optional.

MessageBox is an encapsulation of the Windows API MessageBox function. TApplication encapsulation of MessageBox automatically supplies the missing window handle parameter needed for the Windows API function.

The value of the Text parameter is the message, which can be longer than 255 characters if necessary. Long messages are automatically wrapped in the message box. The value of the Caption property is the caption that appears in the title bar of the dialog box. Captions can be longer than 255 characters, but don't wrap. A long caption results in a wide message box.

The Flags parameter specifies what buttons appear on the message box and the behavior (possible return values). The following table lists the possible values. These values can be combined to obtain the desired effect.

Value Meaning

MB_ABORTRETRYIGNORE The message box contains three push buttons: Abort, Retry, and Ignore. MB_OK The message box contains one push button: OK. This is the default.

MB_OKCANCEL The message box contains two push buttons: OK and Cancel.

MB_RETRYCANCEL The message box contains two push buttons: Retry and Cancel.

MB_YESNO The message box contains two push buttons: Yes and No.

MB_YESNOCANCEL The message box contains three push buttons: Yes, No, and Cancel. MessageBox returns 0 if there isn’t enough memory to create the message box. Otherwise it returns one of the following values:

Value Numeric value M eaning

IDCANCEL 2 The user chose the Cancel button.

IDABORT 3 The user chose the Abort button.

IDRETRY 4 The user chose the Retry button.

IDIGNORE 5 The user chose the Ignore button.

IDYES 6 The user chose the Yes button.

IDNO 7 The user chose the No button.

图3-1

C++Builder 实例3 TextEdit

一、程序功能

本程序可以打开、修改和保存一个文本文件,是一个最简单的文字处理程序,通过此程序,掌握菜单控件、图像列表控件、RichEdit控件及常用对话框控件的使用。

二、设计步骤

1、从Standard面板放一个MainMenu控件,从Win32面板放一个ImageList控件和一个RichEdit

控件,从Dialogs面板上放一个OpenDialog控件和一个SaveDialog控件,建立如图3-1所示界

面。

4、双击MainMenu1控件,出现如图3-3界面,为主菜单加入适当的菜单项,并设置快捷键。各菜单项的属性设置如下表。

5、关闭菜单设计器,回到Form1,打开主菜单如图3-4,依次点击各菜单项,并加入对应响应代码如下:

__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {

sFileName="MyText.txt"; }

//------------------------------------------------------------

void __fastcall TForm1::miFileOpenClick(TObject *Sender) {

if(OpenDialog1->Execute())

{

sFileName=OpenDialog1->FileName;

RichEdit1->Lines->LoadFromFile(sFileName); RichEdit1->Modified=false; } }

图3-2

图3-3

图3-4

void __fastcall TForm1::miFileSaveClick(TObject *Sender)

{

SaveDialog1->FileName=sFileName;

if(SaveDialog1->Execute())

{

RichEdit1->Lines->SaveToFile(SaveDialog1->FileName);

RichEdit1->Modified=false;

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::miFileExitClick(TObject *Sender)

{

int nResult;

AnsiString sMsg;

sMsg=AnsiString("将修改后的结果保存")+sFileName+AnsiString("吗?");

if(RichEdit1->Modified)

nResult=Application->MessageBox(sMsg.c_str(),"我的字处理器",MB_YESNOCANCEL);

if(nResult!=IDCANCEL)

{

if(nResult==IDYES)

{

miFileSaveClick(Sender);

//RichEdit1->Lines->SaveToFile(sFileName);

}

Close();

}

}

6、打开Unit1.h文件,在private: // User declarations下面加入对默认文件名变量sFileName的申明:

AnsiString sFileName;

7、运行程序。

三、程序说明

1、ImageList控件相当于一个图标管理器,它统一管理图标,并供给其它一个或多个控件使用。

2、OpenDialog与SaveDialog两个控件并未完成文件真正的打开或保存工作,它们实际只是提供了一个打开与保存的界面,程序只能从中获取用户选择的打开或保存文件的路径与文件名。有关它们使用的详细介绍请查看帮助文档。

3、AnsiString sFileName变量用于保存默认的文件名,有点类似于WORD中的“文档1”。由于这个变量在各个函数中都要使用,作用范围限于本对话框,因此它应该只在本类中可见。所以,在C++中我们应该定义它为类的私有成员。

C++Builder 实例4 Timer

一、程序功能

本程序首先实现文字在闪烁中向左移动,然后再分别通过控件、菜单和工具栏控制文字的移动方向与是否移动。通过此程序,掌握定时器控件、工具条、单选按钮控件、多选按钮控件的使用,

二、设计步骤

1、Timer控件的使用

功能:文字不受控制地循环地向左移动。

1)从Standard面板放一个Label控件,从System面板放一个Timer控件,设计如图4-1界面

void __fastcall TForm1::Timer1Timer(TObject *Sender)

{

Label1->Left-=4;

if(Label1->Left<-Label1->Width)

Label1->Left=Form1->Width;

Label1->Font->Color=RGB(255*rand(),255*rand(),255*rand());

}

4)运行程序

2、Radio与CheckBox控件的使用

功能:CheckBox控件控制文字是否移动,Radio控件控制文字移动的方向。

1)在图4-1的基础上,再从Standard面板上加入一个CheckBox控件和一个RadioGroup控件,建立如图4-2界面。

2)有关控件属性设置如下表

图4-1 图4-2

图4-3 图4-4

3)各控件事件响应代码如下:

void __fastcall TForm1::Timer1Timer(TObject *Sender)

{

if(RadioGroup1->ItemIndex==1)

Label1->Left+=4;

else

if(RadioGroup1->ItemIndex==0)

Label1->Left-=4;

if(Label1->Left < -Label1->Width)

Label1->Left=Form1->Width;

Label1->Font->Color=RGB(255*rand(),255*rand(),255*rand());

}

//--------------------------------------------------------------------------- void __fastcall TForm1::CheckBox1Click(TObject *Sender)

{

if(CheckBox1->State==cbChecked)

Timer1->Enabled=true;

else

Timer1->Enabled=false;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::FormActivate(TObject *Sender)

{

CheckBox1->OnClick(Sender);

}

3、菜单与工具条的使用

功能:用菜单各工具条控制文字是否移动以及移动的方向。

1)建立如图4-3界面,并建立如图4-4所示菜单,工具条的加入如第3步所示。

3)工具条可按以下步骤建立:

(1)参照图3-2,在ImageList1控件中加入合适的图标 (2)插入ControlBar 工具条控件,如4-4

(3)在刚才插入的ControlBar 工具条控件中插入ToolBar 工具条控件,如图4-5 (4)在ToolBar 控件上单击鼠标右键,选择“New Button ”命令,新建三个工具按钮

__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {

bRun=false; nDirect=0; if(nDirect==0)

miLeft->Checked=true; else

图 4-4

图 4-5

RadioGroup1->ItemIndex=nDirect;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender)

{

if(nDirect==1)

Label1->Left+=4;

else

if(nDirect==0)

Label1->Left-=4;

if(Label1->Left < -Label1->Width)

Label1->Left=Form1->Width;

Label1->Font->Color=RGB(255*rand(),255*rand(),255*rand()); }

//--------------------------------------------------------------------------- void __fastcall TForm1::CheckBox1Click(TObject *Sender)

{

bRun=CheckBox1->Checked;

miStop->Checked=!bRun;

Timer1->Enabled=bRun;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::ComboBox1Change(TObject *Sender) {

Label1->Caption=ComboBox1->Text;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::miLeftClick(TObject *Sender)

{

nDirect=0;

miLeft->Checked=true;

RadioGroup1->ItemIndex=nDirect;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::miRightClick(TObject *Sender)

{

nDirect=1;

miRight->Checked=true;

RadioGroup1->ItemIndex=nDirect;

}

//--------------------------------------------------------------------------- void __fastcall TForm1::miStopClick(TObject *Sender)

{

Timer1->Enabled=bRun;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::FormActivate(TObject *Sender)

{

CheckBox1->OnClick(Sender);

}

//---------------------------------------------------------------------------

void __fastcall TForm1::RadioGroup1Click(TObject *Sender)

{

nDirect=RadioGroup1->ItemIndex;

if(nDirect)

miRight->Checked=true;

else

miLeft->Checked=true;

}

//---------------------------------------------------------------------------

5)打开Unit1.h文件,在private: // User declarations下面加入对默认文件名变量sFileName的申明:

char nDirect; //用于保存用户定义的文字移动方向0表示向左,1表示向右

bool bRun; //文字是否进行移动true表示运行,false表示停止

C++Builder实例5 MSComm

一、程序功能

本程序利用计算机的串行口实现近距离的通信,这种通信既可以在两台计算机之间进行,也可以在计算机与单片机之间进行。通过此程序,掌握以MSComm串行通信控件为代表的Active X控件的使用方法。

二、设计步骤

1)从Standard面板上放两个Label控件、两个Edit控件和三个Button控件,设计如图5-1界面。

如电话形状的MSComm控件是完成串行通信的关键,它的加入如第2、3步所述。

2、如图5-2,打开菜单Component->Import ActiveX Control ,然后按图5-3所示选择,再点击Install 按钮,最后根据提示进行操作,就在C++Builder 项目中引入所需的Active X 控件MSComm 。

ActiveX 控件基于微软的COM 技术,由于COM 技术的语言无关性,使得ActiveX 控件不仅可以在C++Builder 中使用,实际上它可以在任何语言中使用。从上图可以看出它的种类是很多的,功能也各不相同,使用ActiveX 控件是扩展程序功能的重要手段。

3、上面导入的ActiveX 控件一般会在ActiveX 控件页面出现,选中后放入窗体中。

5、分别为各控件编写事件响应代码如下:

void __fastcall TForm1::Button1Click(TObject *Sender)//发送按钮 {

MSComm1->Output=OleVariant(Edit1->Text); }

//--------------------------------------------------------------------------- void __fastcall TForm1::FormActivate(TObject *Sender) 图5-1

图 5-2

图5-3

MSComm1->PortOpen=true;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)//退出按钮

{

MSComm1->PortOpen=false;

Close();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::MSComm1Comm(TObject *Sender)//MSComm接收事件

{

if(MSComm1->CommEvent==2)

{

OleV ariant vRecStr=MSComm1->Input;

Edit2->Text=Edit2->Text+AnsiString(WideString(vRecStr));

}

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button3Click(TObject *Sender)//清除按钮

{

Edit1->Clear();

Edit2->Clear();

Edit1->SetFocus();

}

6、短接计算机COM1口第2、3引脚,使计算机的COM1口处于自发自收状态。当然也可以用线将两台计算机联接起来,两台计算机同时运行这个程序,使它们通过串口进行通信。此时的联接线应使得甲计算机COM1口的2、3引脚对应与乙计算机COM1口的3、2引脚相联,使一个发送时另一个能接收。

7、运行程序,在发送编辑框中输入一些内容,点击发送按钮,看接收编辑框中能否得到相同的内容。

C++Builder实例6 DataBase

一、程序功能

本程序实现简单数据库的一般操作,通过此程序,应掌握数据库的建立、常用数据控件的使用。

二、数据库的建立

1、在C++Builder 单击Tools->Database Desktop ,如图6-1

2、在随后出现的Database Desktop 程序中单击File->New->Table ,如图6-2,在Table Type 中Paradox7如图6-3。最后在如图6-4的界面中,新建一个数据库表的结构

3、保存好刚才新建的表结构后,回到Database Desktop 主界面打开刚才新建的表,按F9或单击Table->Edit Data ,使表处于编辑状态,为它录入基本的数据如图6-5。数据录入完毕后,关闭Database

Desktop

4、注意在数据库建立和输入数据时可能出现半个汉字的现象,在删除汉字也要连续按两次退格键,这是因为Database DeskTop 不能识别汉字引起的,它把一个汉字当成了两个独立的字符。 三、数据库的别名

为数据库建立别名后,就可以在程序中通过别名使用数据库了。对程序而言,只要别名不变,无论数据库放在什么位置,程序都不会有修改的必要。

1、在C++Builder 中单击Dataase->Explore ,出现的SQL Explorer 程序界面如图6-6

2、单出Object->New ,选Database Driver Name 为STANDARD ,如图6-7

3、为新建的别名取名为Student ,并将其路径PATH 定义在刚才保存数据库文件的地方,如图6-6

4、关闭SQL Explorer

图6-3

6-4

6-5

四、简单数据库应用程序设计

1、从DataAccess 面板放一个Table 控件和一个DataSource 控件,从DataContols 面板放四个DBEdit 控件、一个DBNavigator 控件、一个DBImage 控件和一个DBRadioGroup 控件,建立如6-8界面

2、有关数据访问控件属性设置如下表:

图6-8

云计算大数据技术及应用实验指导书

《云计算,大数据技术及应用》实验指导书 《云计算,大数据技术及应用》课程的实验环节意在通过实践使学生对课程内容有更加感性的认识,加深和提高对云计算的理解。培养学生的实际动手能力,独立解决实际问题的能力,实现“做中学,学中做”的目的。为帮助学生更好地完成实验考核和实验报告,特作如下说明和要求: (1)做好每个实验的准备工作: 需要对每个要做的实验进行预习,了解相关内容、知识点和具体要求,并且复习与课程有关内容和阅读实验指导书,明确实验目的要求、实验内容和实验步骤; (2)认真完成实验的各个环节: 每个学生都必须在规定时间到机房做实验,并且遵守实验室的纪律,认真做实验。在实验中,根据所给的实验内容进行认真的分析和实施,结合课堂知识完成实验,按实验步骤认真完成每步的工作。实验完成后要做认真的整理和总结,记录重要的结果数据; (3)完成实验报告: 做完每个实验后要严格按照实验报告的格式要求,写出实验报告。实验报告的内容有以下几个部分:实验名称、实验目的、实验内容和要求、以及实验结果。

实验一:Windows Azure云平台搭建和部署云平台服务 一:实验目的 1.通过微软公司提供的验证码激活账号,登录微软公司的Windows Azure云 计算平台; 2.把Windows Azure开发环境安装好,为以后的实验作准备; 3.在Windows Azure下开发项目并且发布; 二:实验设备 1.安装Windows7Professional Edition or higher的计算机,推荐用个人的电 脑; 2.稳定高速的High Speed Internet; 三:预习要求: 1.认真预习本实验的要求与实验任务,做好准备。 2.认真复习第一章和第二章云计算的基本知识; 3.认真学习课本第五章有关Windows Azure云计算平台的基本知识; 4.要求在做实验之前就对实验的任务和步骤比较清楚; 四:实验任务 1.通过微软公司提供的验证码激活账号,登录微软公司的Windows Azure云计 算平台。然后要按照以下办法在Windows Azure下面创建网站并且发布到Windows Azure云平台上; 2.利用提供的Windows Azure Training Kit的目录:L1Cloud Introduction,创 建一个Windows Azure Web Site网站,然后用FTP客户得到一个运行在云中的ASP Legacy page网页,记录下Internet上能够访问它的网络链接web link;

大地测量学实验指导书汇总

《大地测量学基础》实验指导书 XXX大学土木工程系测绘工程教研室 2010年7月

第一部分:实验与实习须知 控制测量学是测绘工程专业一门践性很强的专业主干课程,其实验与实习是教学中必不可少的重要环节。只有通过实验与实习,才能巩固课堂所学的基本理论,进而掌握仪器操作的基本技能和测量作业的基本方法,并为深入学习测绘专业理论和有关专业知识打下基础。在进行实验之前,必须明确实验的基本规定,了解仪器的借还手序及仪器的保护、保养等知识,做到爱护仪器,达到实习之目的,防患于未然。 实验与实习规定 1.在实验或实习之前,必须复习教材中的有关内容,认真仔细地预习本指导书,以明确目的、了解任务、熟悉实验步骤和过程、注意有关事项并准备好所需文具用品。 2.实验或实习分小组进行,组长负责组织协调工作,办理所用仪器工具和借领和归还手续。 3.实验或学习应在规定的时间进行,不得无故缺席或迟到早退;应在指定的场地进行,不得擅自改变地点或离开现场。 4.必须遵守“测量仪器工具的借领与使用规则”和“测量记录与计算规则”。 5.应该服从教师的指导,严格按照本指导书的要求认真、按时、独立地完成任务。每项实验或实习,都应取得合格的成果,提交书写工整规范的实验报告或实习记录,经指导教师审阅同意后,才可交还仪器工具,结束工作。 6.在实验或实习过程中,还应遵守纪律,爱护现场的花草、树木和农作物,爱护周围的各种公共设施,任意砍折、踩踏或损环者应予赔偿。 测量仪器工具的借领与使用规则 对测量仪器工具的正确使用、精心爱护和科学保养,是测量人员必须具备的素质和应该掌握的技能,也是保证测量成果质量、提高测量工作效率和延长仪器工具使用寿命的必要条件。在仪器工具的借领与使用中,必须严格遵守下列规定。 一、仪器工具的借领 1.在指定的地点凭学生证办理借领手续,以小组为单位领取仪器工具。 2.借领时应该当场清点检查。实物与清单是否相符,仪器工具及其附件是否齐全,背带及提手是否牢固,脚架是否完好等。如有缺损,可以补领或更换。 3.离开借领地点之前,必须锁好仪器箱并捆扎好各种工具;搬运仪器工具时,必须轻取轻放,避免剧烈震动。 4.借出仪器工具之后,不得与其他小组擅自调换或转借。

大型数据库实验指导书

淮海工学院计算机科学系 大型数据库实验指导书 计算机网络教研室

实验1安装配置与基本操作 实验目的 1. 掌握Oracle9i服务器和客户端软件的安装配置方法。 2. 掌握Oracle9i数据库的登录、启动和关闭。 实验环境 局域网,windows 2000 实验学时 2学时,必做实验。 实验内容 1. 在局域网环境下安装配置Oracle9i服务器和客户端软件。 2. 练习Oracle9i数据库的登录、启动和关闭等基本操作。 实验步骤 1、将Oracle 9i的第1号安装盘放入光驱,双击setup,将弹出“Oracle Universal Installer:欢迎使用”对话框。 2、单击“下一步”按钮,出现“Oracle Universal Installer:文件定位”对话框。 在路径中输入“E:\Oracle\ora92”,其它取默认值。 3、启动第1号盘的安装程序setup,具体方法同安装Oracle 9i服务器,不同的是在 选择安装产品时选择“Oracle9i Client 9.2.0.1.0”选项; 4、安装结束后,弹出“Oracle Net Configuration Assistant:欢迎使用”对话框。取 默认值。 5、登录Oracle9i数据库:选择“开始”→“所有程序”→Oracle-OraHome92→Enterprise Manager Console ; 6、系统出现“登录”对话框。选择“独立启动”。 分析与思考 (1)简述启动Oracle9i数据库的一般步骤。 (2)简述启动Oracle9i模式中三个选项的区别? (3)简述关闭Oracle9i模式中四个选项的区别?

C程序设计实验三实验报告

实验报告 工学院土木工程专业09级2011至2012学年度第1学期学号:xxxxxx姓名:xxxxxx 2011 年10月08日第3~4节综合楼325教室 实验目的:

a的字节数为sizeof (a)或sizeof (int ),用printf 函数语句输出各类型变 量的长度(字节数)。 ①输入程序如下 in clude int mai n() {int a,b,i,j,k,r,s,t,u,v,w,x,y,z; float d,e; char c1,c2; double f,g; long m, n; un sig ned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.78; m=50000;n=-60000; p=32768;q=40000; i=sizeof(a);j=sizeof(b); k=sizeof(d);r=sizeof(e); s=sizeof(c1);t=sizeof(c2); u=sizeof(f);v=sizeof(g); w=sizeof(m);x=sizeof( n); y=sizeof(p);z=sizeof(q); prin tf("a=%d,b=%d\nd=%d,e=%d\nc 1= %d,c2=%d\n",i,j,k,r,s,t); prin tf("f=%d,g=%d\nm=%d, n=%d\nmp=%d,q=%d\n",u,v,w,x,y,z); } 结 果如 下: (2)设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体 积。编程序,用scanf输入数据,输出计算结果。输出时要有文字说明,去小数点后两位数字。 ①编写程序如下: #i nclude int mai n() {float h,r,l,s,sq,vq,vz; float pi=3.141526; prin tf("Please in put r,h:"); sca nf("%f,%f",&r,&h); l=2*pi*r; s=r*r*pi; sq=4*pi*r*r; vq=3.0/4.0*pi*r*r*r; vz=pi*r*r*h; prin tf("The circumfere nce:l=%6.2f\n",l); prin tf("The area of thee circle:s=%6.2f\n ",s); prin tf("The superficial area of the ball:sq=%6.2f\n ",sq); prin tf("The volume of the ball:v=%6.2f\n",vq); prin tf("The volume of the cyli nder:vz=%6.2f\n ",vz); return 0; L

云计算-实验手册-HCIE-Cloud V2.0-云计算运维实验指导手册

1 实验环境介绍 1.1 实验目的 ●了解FusionSphere私有云环境的运维架构。 ●掌握FusionSphere私有云环境的运维场景。 ●掌握FusionSphere私有云环境的告警收集、管理。 ●掌握FusionSphere私有云环境的系统资源运维管理。 ●掌握FusionSphere私有云环境的租户资源运维管理。

1.2 实验组网拓扑 1.3 实验网络参数

2 FusionSphere运维监控实验 2.1 监控集中告警 2.1.1 监控和查看当前告警 使用浏览器,登录ManageOne运维面。 登录地址:https://ManageOne运维面浮动IP地址:31943。 默认帐号:admin 默认密码:Huawei12#$ 在主菜单中选择"集中告警> 集中告警> 当前告警"。 在"当前告警"页面上方单击">"设置过滤条件,在过滤条件区域选择过滤条件并单击"过 滤"搜索告警,查看当前需要关注和处理的告警。

选择要导出的告警,单击"导出",选择"导出选中"。选择保存路径,单击"保存"。 2.1.2 查看历史告警和被屏蔽告警 在主菜单中选择"集中告警> 集中告警> 历史告警"。

在"历史告警"页面,通过设置历史告警过滤条件,可以快速找到所关注的历史告警。 在主菜单中选择"集中告警> 集中告警> 被屏蔽告警"。 在"被屏蔽告警"页面,通过设置被屏蔽告警过滤条件,可以快速找到所关注的被屏蔽告 警。 选择要导出的告警,单击"导出",选择"导出选中"。选择保存路径,单击"保存"。2.1.3 查看告警日志 在主菜单中选择"集中告警> 集中告警> 告警日志"。

电工学实验指导书汇总Word版

电工学实验指导书 武汉纺织大学 实验一直流电路实验 (1)

实验二正弦交流电路的串联谐振 (4) 实验三功率因数的提高 (6) 实验四三相电路实验 (9) 实验五微分积分电路实验 (12) 实验六三相异步电动机单向旋转控制 (14) 实验七三相异步电动机正、反转控制 (16) 实验八单相桥式整流和稳压电路 (18) 实验九单管交流放大电路 (19) 实验十一集成运算放大器的应用 (24) 实验十二组合逻辑电路 (26) 实验十三移位寄存器 (29) 实验十四十进制计数器 (33)

实验一直流电路实验 一、实验目的: 1.验证基尔霍夫定律 2.研究线性电路的叠加原理 3.等效电源参数的测定 二、实验原理: 1.基尔霍夫定律是电路理论中最重要的定律之一,它阐明了电路整体结构必须遵守的定律,基尔霍夫定律有两条即电流定律和电压定律。 电流定律:在任一时刻,流入电路中任一节点的电流之和等于流出该节点的电流之和,换句话来说就是在任一时刻,流入到电路中任一节点的电流的代数和为零,即∑I=0。 电压定律:在任一时刻,沿任一闭合回路的循行方向,回路中各段电压降的代数和等于零,即 ∑U=0。 2.叠加原理:n个电源在某线性电路共同作用时,它们在电路中任一支路中产生的电流或在任意两点间所产生的电压降等于这些电源单独作用时,在该部分所产生的电流或电压降的代数和。三、仪器设备及选用组件箱: 1.直流稳压电源 GDS----02 GDS----03 2.常规负载 GDS----06 3.直流电压表和直流电流表 GDS----10 四、实验步骤: 1.验证基尔霍夫定律 按图1—1接线,(U S1、U S2分别由GDS---02,GDS---03提供)调节U SI=3V,U S2=10V,然后分别用电流表测取表1—1中各待测参数,并填入表格中。 2.研究线性电路的叠加原理 ⑴将U S2从上述电路中退出,并用导线将c、d间短接,接入U S1,仍保持3V,测得各项电流,电压,把所测数据填入表1—2中;

大数据库应用实验指导书(1,2)

《—数据库应用—》上机指导书 数据库课程组编写 前言

“数据库应用”是一门理论性和实践性都很强的专业课程, 通过本课程的学习,学生会使用SQL Server数据库管理系统并能进行实际应用。能熟练掌握Transact-SQL语言,能保证数据的完整性和一致性、数据库的安全,并能进行简单编程。 “数据库应用”课程上机的主要目标: 1)通过上机操作,加深对数据库系统理论知识的理解。 2)通过使用SQL SERVER2000,了解SQL SERVER 数据库管理系统的数据管理方式,并掌握其操作技术。 3)通过实际题目的上机,提高动手能力,提高分析问题和解决问题的能力。 “数据库应用”课程上机项目设置与内容 表3列出了”数据库应用”课程具体的上机项目和内容 上机组织运行方式:

⑴上机前,任课教师需要向学生讲清上机的整体要求及上机的目标任务;讲清上机安排和进度、平时考核内容、期末考试办法、上机守则及上机室安全制度;讲清上机操作的基本方法,上机对应的理论内容。 ⑵每次上机前:学生应当先弄清相关的理论知识,再预习上机内容、方法和步骤,避免出现盲目上机的行为。 ⑶上机1人1组,在规定的时间内,由学生独立完成,出现问题时,教师要引导学生独立分析、解决,不得包办代替。 ⑷该课程上机是一个整体,需要有延续性。机房应有安全措施,避免前面的上机数据、程序和环境被清除、改动等事件发生,学生最好能自备移动存储设备,存储自己的数据。 ⑸任课教师要认真上好每一堂课,上机前清点学生人数,上机中按要求做好学生上机情况及结果记录。 上机报告要求 上机报告应包含以下内容: 上机目的,上机内容及操作步骤、上机结果、及上机总结及体会。 上机成绩评定办法 上机成绩采用五级记分制,分为优、良、中、及格、不及格。按以下五个方面进行综合考核: 1、对上机原理和上机中的主要环节的理解程度; 2、上机的工作效率和上机操作的正确性; 3、良好的上机习惯是否养成; 4、工作作风是否实事求是; 5、上机报告(包括数据的准确度是否合格,体会总结是否认真深入等) 其它说明 1.在上机课之前,每一个同学必须将上机的题目、程序编写完毕,对运行中可能出 现的问题应事先作出估计;对操作过程中有疑问的地方,应做上记号,以便上机时给予注意。做好充分的准备,以提高上机的效率 2.所有上机环节均由每位同学独立完成,严禁抄袭他人上机结果,若发现有结果雷 同者,按上机课考核办法处理。 3.上机过程中,应服从教师安排。 4.上机完成后,要根据教师的要求及时上交作业。

实验一简单程序设计实验

实验一:简单程序设计实验 (1)编写一个 32 位无符号数除法的程序,要求将存放在 NUM1 中的 32 位无符号数与存放 在 NUM2 中的 16 位无符号数相除,结果存放在 NUM3 和 NUM4 中。 程序流程图略。 参考源程序: DATA SEGMENT NUM1 DD 2A8B7654H NUM2 DW 5ABCH NUM3 DW ? NUM4 DW ? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA ;数据段寄存器初始化 MOV DS,AX MOV AX, WORD PTR NUM1 MOV DX, WORD PTR NUM1+2 DIV NUM2 MOV NUM3,AX MOV NUM4,DX MOV AH,4CH ;正常返回DOS 系统 INT 21H CODE ENDS END START (2)编写一个拆字程序。要求将存放在 ARY 单元的 2 位十六进制数 X 1X 2 拆为 X 1 和 X 2 两 部分,并以 0X 1 和 0X 2 的形式分别存入 ARY+1 和 ARY+2 单元中。 程序流程图略。 参考源程序: DATA SEGMENT ARY DB 2AH,?,? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET ARY ;取ARY 的偏移地址 MOV AL,[SI] ;取16进制数至AL

MOV BL,AL AND AL,0F0H ;取16进制数的高四位,即X1 SHR AL,4 MOV [SI+1],AL ;存0X1 MOV AL,BL AND AL,0FH ;取16进制数的低四位,即X2 MOV [SI+2],AL ;存0X2 MOV AH,4CH INT 21H CODE ENDS END START

网络计算实验指导书

计算机科学与技术学院 网络计算设计与实现 实验指导书

实验一SOCKET编程 【试验环境】 计算机、TCP/IP协议、VS2005 【实验目的】 1.理解基本TCP/IP协议编程原理; 2.掌握如何利用SOCKET编写网络程序; 3.掌握VS2005编程环境,多线程程序设计等。 【实验要求】 1.编写一个服务端的程序,接收来自客户端的访问请求,并返回相关信息; 2.编写一个客户端程序,向服务端发送连接请求,并显示返回的结果; 3.完善服务端程序,使它能够同时支持多个客户端的请求。 【预备知识】 p ublic Socket Accept ():为新建连接创建新的Socket。 public void Bind (EndPoint localEP):使Socket 与一个本地终结点相关联。 public void Close ():关闭Socket 连接并释放所有关联的资源。 public void Connect (EndPoint remoteEP):建立与远程主机的连接。注意这个方法有重 载方法。 public void Disconnect (bool reuseSocket):关闭套接字连接并是否允许重用套接字。 public void Listen (int backlog):将Socket 置于侦听状态。 public int Receive (byte[] buffer):接收来自绑定的Socket 的数据。注意这个方法有重 载方法。 public int ReceiveFrom (byte[] buffer,ref EndPoint remoteEP):接收数据报并存储源终结 点。注意这个方法有重载方法。 public int Send (byte[] buffer):将数据发送到连接的Socket。注意这个方法有重载方 法。 public void SendFile (string fileName):将文件和可选数据异步发送到连接的Socket。 注意这个方法有重载方法。 public int SendTo (byte[] buffer,EndPoint remoteEP):将数据发送到特定终结点。注意这 个方法有重载方法。 public void Shutdown (SocketShutdown how):禁用某Socket 上的发送和接收。 因为在网络传输时传输的数据都是二进制形式的(表现为字节数组),所以如果要传输类似于中文这样的双字节字符就需要在传输之前用合适的编码转换成字节数组,然后接收方

测试技术实验指导书及实验报告2006级用汇总

矿压测试技术实验指导书 学号: 班级: 姓名: 安徽理工大学 能源与安全学院采矿工程实验室

实验一常用矿山压力仪器原理及使用方法 第一部分观测岩层移动的部分仪器 ☆深基点钻孔多点位移计 一、结构简介 深基点钻孔多点位移计是监测巷道在掘进和受采动影响的整个服务期间,围岩内部变形随时间变化情况的一种仪器。 深基点钻孔多点位移包括孔内固定装置、孔中连接钢丝绳、孔口测读装置组成。每套位移计内有5~6个测点。其结构及其安装如图1所示。 二、安装方法 1.在巷道两帮及顶板各钻出φ32的钻孔。 2.将带有连接钢丝绳的孔内固定装置,由远及近分别用安装圆管将其推至所要求的深度。(每个钻孔布置5~6个测点,分别为;6m、5m、4m、3m、2m、lm或12m、10m、8m、6m、4m、2m)。 3.将孔口测读装置,用水泥药圈或木条固定在孔口。 4。拉紧每个测点的钢丝绳,将孔口测读装置上的测尺推至l00mm左右的位置后,由螺丝将钢丝绳与测尺固定在一起。 三、测试方法 安装后先读出每个测点的初读数,以后每次读得的数值与初读数之差,即为测点的位移值。当读数将到零刻度时,松开螺丝,使测尺再回到l00mm左右的位置,重新读出初读数。 ☆顶板离层指示仪 一、结构简介: 顶板离层指示仪是监测顶板锚杆范围内及锚固范围外离层值大小的一种监测仪器,在顶板钻孔中布置两个测点,一个在围岩深部稳定处,一个在锚杆端部围岩中。离层值就是围岩中两测点之间以及锚杆端部围岩与巷道顶板表面间的相对位移值。顶板离层指示仪由孔内固定装置、测量钢丝绳及孔口显示装置组成如图1所示。

二、安装方法: 1.在巷道顶板钻出φ32的钻孔,孔深由要求而定。 2.将带有长钢丝绳的孔内固定装置用安装杆推到所要求的位置;抽出安装杆后再将带有短钢丝绳的孔内固定装置推到所要求的位置。 3.将孔口显示装置用木条固定在孔口(在显示装置与钻孔间要留有钢丝绳运动的间隙)。 4.将钢丝绳拉紧后,用螺丝将其分别与孔口显示装置中的圆管相连接,且使其显示读数超过零刻度线。 三、测读方法: 孔口测读装置上所显示的颜色,反映出顶板离层的范围及所处状态,显示数值表示顶板的离层量。☆DY—82型顶板动态仪 一、用途 DY-82型顶板动态仪是一种机械式高灵敏位移计。用于监测顶底板移近量、移近速度,进行采场“初次来压”和“周期来压”的预报,探测超前支撑压力高 峰位置,监测顶板活动及其它相对位移的测量。 二、技术特征 (1)灵敏度(mm) 0.01 (2)精度(%) 粗读±1,微读±2.5 (3)量程(mm) 0~200 (4)使用高度(mm) 1000~3000 三、原理、结构 其结构和安装见图。仪器的核心部件是齿条6、指针8 以及与指针相连的齿轮、微读数刻线盘9、齿条下端带有读 数横刻线的游标和粗读数刻度管11。 当动态仪安装在顶底板之间时,依靠压力弹簧7产生的 弹力而站立。安好后记下读数(初读数)并由手表读出时间。 粗读数由游标10的横刻线在刻度管11上的位置读出,每小 格2毫米,每大格(标有“1”、“22'’等)为10毫米,微读数 由指针8在刻线盘9的位置读出,每小格为0.01毫米(共200 小格,对应2毫米)。粗读数加微读数即为此时刻的读数。当 顶底板移近时,通过压杆3压缩压力弹簧7,推动齿条6下 移,带动齿轮,齿轮带动指针8顺时针方向旋转,顶底板每 移近0.01毫米,指针转过1小格;同时齿条下端游标随齿条 下移,读数增大。后次读数减去前次读数,即为这段时间内的顶底板移近量。除以经过的时间,即得

操作系统实验指导书汇总

操作系统实验指导书 东北大学软件学院 2008年10月

实验要求 (1)预习实验指导书有关部分,认真做好实验的准备工作。 (2)实验中及时分析记录。 (3)按指导书要求书写实验报告,提交打印版(A4)。 实验的验收将分为两个部分。第一部分是上机操作,包括检查程序运行和即时提问。第二部分是提交的实验报告。

实验一进程调度(4学时) 一、实验目的 在采用多道程序设计的系统中,往往有若干个进程同时处于就绪状态。当就绪进程个数大于处理机数时,就必须依照某种策略来决定哪些进程优先占用处理机。本实验模拟在单处理机情况下的处理机调度,帮助学生加深了解处理机调度的工作。 二、实验类型 设计型。 三、预习内容 预习课本处理机调度有关内容,包括进程占用处理机的策略方法。 四、实验内容与提示 本实验中共有两个实验题。 第一题:编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程进行调度。 <一>最高优先级优先调度算法 1)优先级简介 动态优先数是指在进程创建时先确定一个初始优先数,以后在进程运行中随着进程特性的改变不断修改优先数,这样,由于开始优先数很低而得不到CPU 的进程,就能因为等待时间的增长而优先数变为最高而得到CPU运行。 例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时限时增加其优先数的值,等等。 2)详细设计 优先权调度算法: 1、设定系统中有五个进程,每一个进程用一个进程控制块( PCB)表示,

进程队列采用链表数据结构。 2、进程控制块包含如下信息:进程名、优先数、需要运行时间、已用 CPU时间、进程状态等等。 3、在每次运行设计的处理调度程序之前,由终端输入五个进程的“优 先数”和“要求运行时间”。 4、进程的优先数及需要的运行时间人为地指定。进程的运行时间以时 间片为单位进行计算。 5、采用优先权调度算法,将五个进程按给定的优先数从大到小连成就 绪队列。用头指针指出队列首进程,队列采用链表结构。 6、处理机调度总是选队列首进程运行。采用动态优先数办法,进程每 运行一次优先数减“1”,同时将已运行时间加“1”。 7、进程运行一次后,若要求运行时间不等于已运行时间,则再将它加 入就绪队列;否则将其状态置为“结束”,且退出就绪队列。 8、“就绪”状态的进程队列不为空,则重复上面6,7步骤,直到所 有进程都成为“结束”状态。 9、在设计的程序中有输入语句,输入5个进程的“优先数”和“要求 运行时间”,也有显示或打印语句,能显示或打印每次被选中进程 的进程名、运行一次后队列的变化,以及结束进程的进程名。10、最后,为五个进程任意确定一组“优先数”和“要求运行时间”,运行并调试所设计的程序,显示或打印出逐次被选中进程的进程名及其进程控制块的动态变化过程。

实验3简单的程序设计

实验3简单的程序设计 实验目的: 1.掌握表达式、赋值语句的正确书写规则。 2.掌握VB变量的定义和使用,表达式和常用函数的使用。 3.掌握InputBox与MsgBox的使用。 实验3.1函数考察 实验任务: 考察下列函数的值。 Round(-3.5) Round(3.5) Chr(66) Asc ("c") Asc(Chr(99)) Chr(Asc("K")) Ucase$("abcdefg") Lcase(“ABC”) Str(123.45) Val(“123AB”) Len(“123程序设计ABC”) LenB(“123程序设计ABC”) Ltrim(“ ABC”) String(3, “ABC”) Instr(“EFABCDEFG”, “ef”) Instr(2,“EFABCDEFG”, “ef”,1) Date() Now() Time() 实验步骤: 先自己分析以上函数的功能和可能的结果,然后在立即窗口用Print方法求出相应函数的值,对照比较自己的判断。 22

实验3.2表达式考察 实验任务: 考察下列表达式的值。 Dateadd(“m”,1,#1/30/2000#) Datediff(“y”,#12/03/1999#,#1/03/2000#) ‘计算时间间隔多少日 123 + Mid(“123456”,3,2) 123 & Mid(“123456”,3,2) Ucase(Mid(“abcdefgh”,3,4)) 16 / 4 – 2 ^ 5 * 8 / 4 MOD 5 \ 2 实验步骤: 先自己分析表达式的功能和可能的结果,然后在立即窗口用Print方法求出相应表达式的值,对照比较自己的判断。 实验3.3简单打印图形 实验任务: 使用Print方法、Tab函数和String函数设计一个过程,显示如图3-1所示的图形,并将结果保存到文件中。 图3-1 实验3.2运行界面 参考代码如下: Private Sub Form_Load() Print Tab(15); String(1, "1") Print Tab(14); String(3, "2") Print Tab(13); String(5, "3") Print Tab(12); String(7, "4") End Sub 操作提示: 应先将Form窗体的AutoRedraw属性值设为True。

HCIP云计算实验环境搭建指南

. 华为认证Cloud系列教程 云计算高级工程师 HCIP-Cloud Computing 云计算实验环境搭建指南

前言 简介 本手册介绍基于ubuntu-18.04.2-desktop系统使用虚拟化嵌套的方式来搭建 HCIP-Cloud Computing V4.0的实验环境。 内容描述 本实验指导书书共包含4个实验步骤: ●第一部分为Ubuntu系统安装; ●第二部分为系统配置,此步骤围绕实验所需设计了包括NFS、ISCSI、FTP、 开启虚拟化嵌套、KVM安装等操作 ●第三部分为FusionCompute实验环境准备阶段,包括CNA虚拟机创建和 配置等操作。 ●第四部分为FusionAccess实验所需的前期准备部分,仅包括AD环境搭建 配置。此步骤需要在FusionCompute搭建好之后再操作。 实验环境说明 实验场景介绍 通常FusionCompute实验环境需要在每台服务器上物理安装CNA,导致培训需 要大量服务器资源,教学成本巨大。为减少搭建实验环境的投资成本、提高设备 利用率,HCIP-Cloud Computing V4.0课程采用虚拟化嵌套方式搭建实验环 境,只需一台服务器就可以搭建一套完整实验环境。 实验设计思路 本次实验设计思路如下: ●实验环境采用虚拟化嵌套方式搭建;

●采用Ubuntu系统搭建基础虚拟化环境,在Ubuntu系统上利用KVM虚拟 化构建两台CNA虚拟机,并以此CNA虚拟机为基础,搭建 FusionCompute&FusionAccess实验环境; ●实验所需的计算、存储均由一台服务器提供,由Ubuntu搭建相应的服务实 现(如NFS/iSCSI/FTP),并能够模拟实际生产环境中的操作; ●考虑AD搭建的复杂难度以及与课程所需掌握的知识相关性,将AD搭建步 骤放置在本环境搭建手册。 实验设备说明 ●为了满足HCIP-Cloud Computing V4.0实验需要,建议每套实验环境采用 以下配置: ●2288H V5服务器配置规格建议如下,详见本课程配套的“设备清单“。 ●服务器RAID配置说明 ●软件和工具 本搭建手册中主要涉及到FusionCompute 6.5的安装和使用,在此过程中会用到 多个工具和软件包,具体如下:

C语言实验指导书(刘联海20131106)

《C语言程序设计》实验指导书

目录 实验1 C语言编程环境和运行C程序的方法 (1) 实验2 简单的顺序结构程序设计 (3) 实验3 数据类型和表达式 (5) 实验4 选择结构程序设计 (7) 实验5 循环结构程序设计(1) (10) 实验6 循环结构程序设计(2) (13) 实验7 数组 (16) 实验8 函数 (18)

实验1 C语言编程环境和运行C程序的方法 一、实验目的 1、熟悉Visual C6.0集成开发环境的使用方法; 2、熟悉C语言程序从编辑、编译、连接到最后运行得到结果的过程及各过程的作用; 3、了解C语言程序的结构特征与书写规则,能够编写简单的C程序; 4、初步理解程序调试的思想,能找出并改正C程序中的语法错误。 二、实验内容 1、熟悉上机环境 ⑴熟悉VC++6.0集成环境,重点是其中常用菜单、工具按钮的功能; ⑵在D盘建立一个自己的工作文件夹,文件夹以班名+学号后两位+姓名来命名(如:应用1105张三);分别创建、编辑并运行下列程序,初步熟悉C源程序的结构特点和运行方式。 #include main() { printf(“This is my first program!\n") ; } 2、编写一个程序实现分两行输出自己的姓名及联系电话。 3、程序改错调试 以下给定程序的功能是在屏幕上显示“Welcome to You!”,其中存在3处错误,请指出错误所在,并调试程序使其能运行得到正确结果。 #include mian() //1 { printf(Welcome to You!\n") //2 } 4、选做题 ⑴自学教材P47内容以及附录B中的字符与ASCII码对照表,编程输出以下图形: ? ? ⑵编程输出如下通讯录功能菜单界面

ACCESS2010数据库技术实验指导书3

《ACCESS2010数据库技术及应用》 实验指导(3) 学号: 姓名: 班级: 专业:

实验三窗体 实验类型:验证性实验课时: 4 学时指导教师: 时间:201 年月日课次:第节教学周次:第周 一、实验目的 1. 掌握窗体创建的方法 2. 掌握向窗体中添加控件的方法 3. 掌握窗体的常用属性和常用控件属性的设置 二、实验内容和要求 1. 创建窗体 2. 修改窗体,添加控件,设置窗体及常用控件属性 三、实验步骤 案例一:创建窗体 1.使用“窗体”按钮创建“成绩”窗体。 操作步骤如下: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体”按钮,窗体立即创建完成,并以布局视图显示,如图3-1所示。 (2)在快捷工具栏,单击“保存”按钮,在弹出的“另存为”对话框中输入窗体的名称“教师”,然后单击“确定”按钮。 图3-1布局视图 2.使用“自动创建窗体”方式 要求:在“教学管理.accdb”数据库中创建一个“纵栏式”窗体,用于显示“教师”表中的信息。 操作步骤: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体向导”按钮。如图3-2所示。 (2)打开“请确定窗体上使用哪些字”段对话框中,如图3-3 所示。在“表和查询”下拉列表中光图3-2窗体向导按钮

标已经定位在所学要的数据源“教师”表,单击按钮,把该表中全部字段送到“选定字段”窗格中,单击下一步按钮。 (3)在打开“请确定窗体上使用哪些字”段对话框中,选择“纵栏式”,如图3-4所示。单击下一步按钮。 (4)在打开“请确定窗体上使用哪些字”段对话框中,输入窗体标题“教师”,选取默认设置:“打开窗体查看或输入信息”,单击“完成”按钮,如图3-5所示。 (5)这时打开窗体视图,看到了所创建窗体的效果,如图3-6所示。 图3-3“请确定窗体上使用哪些字”段对话框 图3-4“请确定窗体使用的布局”段对话框中

云计算大数据技术及应用实验指导书

云计算大数据技术及应用实验指导书 云计算,大数据技术及应用》实验指导书 云计算,大数据技术及应用》课程的实验环节意在通过实践使学生对课程内容有更加感性的认识,加深和提高对云计算的理解。培养学生的实际动手能力,独立解决实际问题的能力,实现“做中学,学中做”的目的。为帮助学生更好地完成实验考核和实验报告,特作如下说明和要求 (1) 做好每个实验的准备工作: 需要对每个要做的实验进行预习,了解相关内容、知识点和具体要求,并且复习与课程有关内容和阅读实验指导书,明确实验目的要求、实验内容和实验步骤 (2) 认真完成实验的各个环节: 每个学生都必须在规定时间到机房做实验,并且遵守实验室的纪律,认真做实验。在实验中,根据所给的实验内容进行认真的分析和实施,结合课堂知识完成实验,按实验步骤认真完成每步的工作。实验完成后要做认真的整理和总结,记录重要的结果数据; (3) 完成实验报告: 做完每个实验后要严格按照实验报告的格式要求,写出实验报告。实验报告的内容有以下几个部分: 实验名称、实验目的、实验内容和要求、以及实验结果。 able "as guiding ideology, conscientiously implement the party's sixteen and the fifth Plenary Session of the 16th CPC Central Committee, the eight plenary session of the two committee, the Communist Youth League XX League in the fourth Plenary Session of the 15th CPC Central Committee, two session of the five plenary meeting spirit, fully implement the 实验一:Windows Azure 云平台搭建和部署云平台服务 : 实验目的 1. 通过微软公司提供的验证码激活账号,登录微软公司的Windows Azure云 算平台;

DDSZ1实验指导书

Tianhuang Teaching Apparatuses 天煌教仪 电机系列实验 DDSZ-1型 电机及电气技术实验装置Motor And Electric Technique Experimental Equipment 实验指导书 天煌教仪 浙江天煌科技实业有限公司

DDSZ-1型电机及电气技术实验装置受试电机铭牌数据一览表

DDSZ-1型电机及电气技术实验装置交流及直流电源操作说明 实验中开启及关闭电源都在控制屏上操作。开启三相交流电源的步骤为: 1)开启电源前。要检查控制屏下面“直流电机电源”的“电枢电源”开关(右下角)及“励磁电源”开关(左下角)都须在“关”断的位置。控制屏左侧端面上安装的调压器旋钮必须在零位,即必须将它向逆时针方向旋转到底。 2)检查无误后开启“电源总开关”,“关”按钮指示灯亮,表示实验装置的进线接到电源,但还不能输出电压。此时在电源输出端进行实验电路接线操作是安全的。 3)按下“开”按钮,“开”按钮指示灯亮,表示三相交流调压电源输出插孔U、V、W及N上已接电。实验电路所需的不同大小的交流电压,都可适当旋转调压器旋钮用导线从这三相四线制插孔中取得。输出线电压为0-450V(可调)并可由控制屏上方的三只交流电压表指示。当电压表下面左边的“指示切换”开关拨向“三相电网电压”时,它指示三相电网进线的线电压;当“指示切换”开关拨向“三相调压电压”时,它指示三相四线制插孔U、V、W和N输出端的线电压。 4)实验中如果需要改接线路,必须按下“关”按钮以切断交流电源,保证实验操作安全。实验完毕,还需关断“电源总开关”,并将控制屏左侧端面上安装的调压器旋钮调回到零位。将“直流电机电源”的“电枢电源”开关及“励磁电源”开关拨回到“关”断位置。 开启直流电机电源的操作: 1)直流电源是由交流电源变换而来,开启“直流电机电源”,必须先完成开启交流电源,即开启“电源总开关”并按下“开”按钮。 2)在此之后,接通“励磁电源”开关,可获得约为220V、0.5A不可调的直流电压输出。接通“电枢电源”开关,可获得40~230V、3A可调节的直流电压输出。励磁电源电压及电枢电源电压都可由控制屏下方的1只直流电压表指示。当将该电压表下方的“指示切换”开关拨向“电枢电压”时,指示电枢电源电压,当将它拨向“励磁电压”时,指示励磁电源电压。但在电路上“励磁电源”与“电枢电源”,“直流电机电源”与“交流三相调压电源”都是经过三相多绕组变压器隔离的,可独立使用。 3)“电枢电源”是采用脉宽调制型开关式稳压电源,输入端接有滤波用的大电容,为了不使过大的充电电流损坏电源电路,采用了限流延时的保护电路。所以本电源在开机时,从电枢电源开合闸到直流电压输出约有3~4秒钟的延时,这是正常的。 4)电枢电源设有过压和过流指示告警保护电路。当输出电压出现过压时,会自动切断输出,并告警指示。此时需要恢复电压,必须先将“电压调节”旋钮逆时针旋转调低电压到正常值(约240V以下),再按“过压复位”按钮,即能输出电压。当负载电流过大(即负载电阻过

oracle数据库实验指导书

计算机科学学院《ORACLE数据库》实验指导书

《ORACLE数据库》实验指导书 实验一Oracle数据库安装配置以及基本工具的使用 1.实验的基本内容 实验室中oracle数据库安装后某些服务是关闭的(为了不影响其他课程的使用),所以在进入数据库前需要对oracle进行配置: (1)启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 (2)修改listener.ora 和tnsnames.ora 两个文件的内容 (3)以用户名:system ,口令:11111 以“独立登录”的方式进入oracle 数据库系统 (4)熟悉数据库中可用的工具。 2.实验的基本要求 (1)掌握Oracle11g的配置以及登录过程。 (2)熟悉系统的实验环境。 3.实验的基本仪器设备和耗材 计算机 4.实验步骤 (1) 查看设置的IP地址是否与本机上的IP地址一致。若不一致则修改为本机IP地址。 (2) 启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 控制面板/性能与维护/管理工具/服务/ oracle OraHomeTNSLISTENER(右击/启动)。 控制面板/性能与维护/管理工具/服务/ oracleserviceORACLE(右击/启动) (3) 修改listener.ora 和tnsnames.ora 两个文件的内容 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 (4) 启动oracle 数据库

PLC实验指导书

可编程序控制器(PLC)实验指导书 华晨辉编 电子科技大学成都学院电子信息工程系 2010年11月

前言 《可编程序控制器(PLC)实验指导书》是根据专业课程《机电一体化现代设计方法》的教学大纲以及教学计划,共安排16个课时的实验学习课程。 《可编程序控制器(PLC)实验指导书》基于GX-DEVELOPER创建PLC程序的软件及GX Simulator调试的软件,实验中安排学生首先学习使用GX-DEVELOPER 软件进行梯形图制作,掌握PLC基本编程技能和操作方法,然后学会使用GX Simulator调试的软件仿真PLC实例,掌握在实际应用中PLC的输入输出及时序图控制等基本操作,为同学们在今后工程实践中的软件应用打下良好的基础。 编者

实验一 PLC的工程及梯形图的制作 【实验目的】 1.熟悉GX-DEVELOPER编程PLC软件。 2.学会在GX-DEVELOPER软件中创建、打开、保存、结束PLC工程。 3.掌握梯形图制作步骤。 【实验内容】 1.熟悉GX-DEVELOPER编程软件界面; 【项目说明】: ①. 工程名。(图示中“工程未设置”是指还未命名该工程) ②. 工程数据一览:是指将工程内的数据按类别用浏览的形式表示; 在其任意一项数据上按右键可以对该工程数据进行新建/复制/删除/改变数据名等操作; 工程数据一览可以用左键拖动来改变其放置的位置,也可以改变其大小。 ③. 单击此处可以关闭工程数据一览。 ④. 单击此项目符号可以显示/不显示工程数据一览。 ⑤. 梯形图程序编写栏。 ⑥. 创建梯形图的工具按钮。 2.创建工程; 【设定要求】:新建工程时,首先需设定必要的PLC系列名、PLC类型和工程名。 【操作步骤】:[工程]——[新建工程];或者点击工具按钮或者用快捷键Ctrl+N。 【项目说明】: ①. PLC系列:点击下拉菜单可以选择适当的PLC系列。 ②. PLC类型:点击下拉菜单可以选择特定PLC系列的类型。 ③. 程序类型:可以选择梯形图或SFC程序。

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