VC++.net五次上机实验报告3

VC++.net五次上机实验报告3
VC++.net五次上机实验报告3

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

题目 __________

学生姓名

学号

专业班级

指导老师

实验一cview类中cdc的使用

一.实验目的

熟悉.net的开发平台,掌握CDC类的使用:文本的输出,数字的显示输出,点

线图的绘制,位图的显示输出。

二.实验内容

1.显示一首诗。

2.画一个坐标系,画函数的图像。

3.显示资源中的一幅位图。

4.GDI绘图之鼠标绘图.

三.实验步骤:

实验内容一:显示一首诗

(1)创建一个名为Ex1的单文档MFC应用程序;

(2)在视图类的源文件中编辑ondraw()函数,添加如下代码:void CEx1View::OnDraw(CDC* /*pDC*/)

{

CEx1Doc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

// TODO: 在此处为本机数据添加绘制代码

CClientDC dc(this);

TEXTMETRIC tm;

dc.GetTextMetrics(&tm);

int nLineHeight = tm.tmHeight + tm.tmExternalLeading;

dc.TextOut(10,1 * nLineHeight, CString(" 静夜思"));

dc.TextOut(10,2 * nLineHeight, CString(" 床前明月光, "));

dc.TextOut(10,3 * nLineHeight, CString(" 疑是地上霜。"));

dc.TextOut(10,4 * nLineHeight, CString(" 举头望明月, "));

dc.TextOut(10,5 * nLineHeight, CString(" 低头思故乡。"));

}

(3)运行程序得到如下结果:

实验内容二:画一个坐标系,画函数的图像

(1)创建一个名为Ex1_5的单文档MFC运用程序;

(2)在视图类的源文件中编辑ondraw()函数,添加如下代码:void CEX1_5View::OnDraw(CDC*pDC)

{

CEX1_5Doc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

// TODO: 在此处为本机数据添加绘制代码

CRect rectClient;

GetClientRect(rectClient);

pDC->SetMapMode (MM_ANISOTROPIC);

pDC->SetWindowExt (1000,1000);

pDC->SetViewportExt (rectClient.right ,-rectClient.bottom );

pDC->SetViewportOrg (rectClient.right /2,rectClient.bottom /2);

pDC->MoveTo (-500,0);

pDC->LineTo (500,0);

pDC->MoveTo (500,0);

pDC->LineTo (490,10);

pDC->MoveTo (500,0);

pDC->LineTo (490,-10);

pDC->MoveTo (0,-500);

pDC->LineTo (0,500);

pDC->MoveTo (0,500);

pDC->LineTo (-10,490);

pDC->MoveTo (0,500);

pDC->LineTo (10,490);

for(int i=-4;i<=4;i++)

{

CString str;

str.Format (_T("%d"),i);

pDC->MoveTo (i*100,-5);

pDC->LineTo (i*100,+5);

pDC->TextOutW (i*100,-5,str);

}

for(int i=-1;i<=1;i++)

{

if(i==0)

continue;

CString str;

str.Format (_T("%d"),i);

pDC->MoveTo (-5,i*100);

pDC->LineTo (+5,i*100);

pDC->TextOutW (+5,i*100,str);

}

pDC->MoveTo (-400,(int)100*sin((float)-4)); for(int i=-400;i<=400;i++)

{

float ix,iy;

int y;

ix=(float)i/100;

iy=sin(ix);

y=(int)100*iy;

pDC->LineTo (i,y);

}

}

(3)运行程序得到如下结果:

实验内容三:显示资源中的一幅位图。

(1)创建一个名为Ex1_2的单文档MFC运用程序;

(2)为文档添加位图资源:

右键点击项目,单击“添加”菜单项,在打开的“添加资源”对话框里选择Bitmap,单击“导入”,打开文件对话框,选泽所要添加的位图资源。

(3)在视图类的ondraw()函数中添加如下代码:

void CEX1_2View::OnDraw(CDC*pDC)

{

CEX1_2Doc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

// TODO: 在此处为本机数据添加绘制代码

CBitmap Bitmap;

Bitmap.LoadBitmapW(IDB_BITMAP1);//将位图装入内存

CDC MemDC;

MemDC.CreateCompatibleDC(pDC);//创建内存设备环境

CBitmap*OldBitmap=MemDC.SelectObject(&Bitmap);

BITMAP bm;//创建BITMAP结构变量

Bitmap.GetBitmap(&bm);//获取位图信息

pDC->BitBlt(10,10,bm.bmWidth,bm.bmHeight,&MemDC,0,0,SRCCOPY);

pDC->SelectObject(OldBitmap);//恢复设备环境

}

(4)运行程序得到如下结果:

实验内容四:GDI绘图之鼠标绘图.

(1)创建一个名为Ex1_3的单文档MFC运用程序;

(2)在类视图中选择视图类,在视图类中添加消息WM_LBOTTONDOWN,WM_LBUTTONUP,WM_MOUSEMOVE从而得到消息响应函数OnLButtonDown(),OnLButtonUp(),OnMouseMove();(3)然后再在视图类中添加变量CPoint m_ptPrev;CPoint m_ptOringin;分别记录当前点和起始点的位置。

(4)在如下函数中添加如下代码;

void CEx1_3View::OnLButtonDown(UINT nFlags, CPoint point)

{

// TODO: 在此添加消息处理程序代码和/或调用默认值

SetCapture();

m_ptPrev=point;

CView::OnLButtonDown(nFlags, point);

}

void CEx1_3View::OnLButtonUp(UINT nFlags, CPoint point)

{

// TODO: 在此添加消息处理程序代码和/或调用默认值

if(GetCapture()!=this)

return;

CClientDC dc(this);

dc.MoveTo(m_ptPrev);

dc.LineTo(point);

ReleaseCapture();

CView::OnLButtonUp(nFlags, point);

}

void CEx1_3View::OnMouseMove(UINT nFlags, CPoint point) {

// TODO: 在此添加消息处理程序代码和/或调用默认值

if(GetCapture()!=this)

return;

CClientDC dc(this);

dc.MoveTo(m_ptPrev);

dc.LineTo(point);

m_ptPrev=point;

CView::OnMouseMove(nFlags, point);

}

(5)运行程序得到如下的结果:

四实验总结:

在获取设备环境时有两种方法:

一种是函数本身使用CDC*pDC

第二种是使用CClient dc(this)

this.

的方式。

实验二、模式对话框及通用对话框的使用

一.实验目的

掌握对话框中数据交换的技术。常用控件的使用,CfileDialog的使用. 二.实验内容

(1) 求两正整数的最大公约数和最小公倍速数,用一个函数求最大公约数,另一个函数求最小公倍数。要求:两正整数从对话框输入。将最大公约数和最小公倍数在ondraw()函数中输出。

(2) 使用Cfile和CfileDialog及atl的image类显示输出图像.

(3) 在视图类中集成Richedit控件,然后显示一个文本文件或rtf文件. 三.实验步骤:

实验内容一:求两正整数的最大公约数和最小公倍速数,用一个函数求最大公约数,另一个函数求最小公倍数。要求:两正整数从对话框输入。将最大公约数和最小公倍数在ondraw()函数中输出。

(1)创建一个名为Ex2_1的单文档MFC运用程序;

(2)编辑菜单资源,添加一个名为“计算”的菜单项;如图所示:

设定菜单项“计算“的ID号为ID_CALCULATE,并在视图类中添加消息响应函数OnCalculate(),在头文件中加入#include"Dig.h"添加如下代码:

void CEx2_1View::OnCalculate()

{

// TODO: 在此添加命令处理程序代码

CDig dig;

dig.DoModal();//激活对话框

}

响应函数OnBnClickedButton1(),并添加如下代码:

void CDig::OnBnClickedButton1()

{

// TODO: 在此添加控件通知处理程序代码

UpdateData(true);

m_mnum1=fun_1(m_num1,m_num2);

m_mnum2=func2(m_num1,m_num2);

UpdateData(false);

}

(5)在CDig类中添加函数int fun_1(int m_num1, int m_num2)和int func2(int m_num1, int m_num2)分别用于计算两个数的最小公倍数和最

大公约数,并添加如下代码:

int CDig::fun_1(int m_num1, int m_num2)//计算最小公倍数

{

int t,m,i;

if(m_num1

{ t=m_num2;m=m_num1;}

else

{ t=m_num1;m=m_num2;}

if(t%m==0)

{ return m;

}

else

for(i=m-1;i>=1;i--)

{ if((t%i==0)&&(m%i==0))

{return i;

break;}

}

return 0;

}

int CDig::func2(int m_num1, int m_num2)//计算最大公约数{int t,m,n,s;

if(m_num1

{t=m_num2;m=m_num1;}

else

{ t=m_num1;m=m_num2;}

if(t%m==0)

return t;

else

{n=fun_1(t,m);

s=n*((m/n)*(t/n));

return s;

}

}

(6)运行程序得到如下结果:

实验内容二:使用Cfile和CfileDialog及atl的image类显示输出图像(1)创建一个名为Ex2_2的单文档MFC运用程序;

(2)在视图类中添加消息WM_LBOTTONDOWN,并在消息处理函数中添加如下代码:

void CEx2_2View::OnLButtonDown(UINT nFlags, CPoint point)

{// TODO: 在此添加消息处理程序代码和/或调用默认值

CString FilePathName;

CFileDialog dlg(true,"bmp","未命名.bmp",OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT);

if(dlg.DoModal()==IDOK)

FilePathName=dlg.GetPathName();

CClientDC dc(this);

dc.TextOut(10,10,FilePathName);

CView::OnLButtonDown(nFlags, point);

}

实验三菜单栏,工具栏和状态栏的使用

一.实验目的:

练习使用菜单栏,工具栏和状态栏的使用

二.实验内容:

编写一个单文档应用程序Ex5。在主菜单中增加【曲线】、【线宽】和【颜色】3个菜单项,【曲线】菜单中包含【正弦】和【余弦】两个菜单项;【线宽】菜单中包含【线宽2】和【线宽3】两个菜单项;【颜色】菜单中包含【红色】和【蓝色】两个菜单项。为该应用程序创建一个新工具栏和一个快捷菜单,工具栏包含4个按钮,分别与菜单项【线宽2】、【线宽3】、【红色】和【蓝色】相对应,快捷菜单上有【正弦】、【余弦】、【线宽2】、【线宽3】、【红色】和【蓝色】6个菜单项。在状态栏中增加一个窗格,用来显示曲线的类型、线宽以及颜色的提示信息。

要求:程序运行时,在视图窗口中显示坐标轴、曲线、曲线的属性、状态栏的提示以及所选菜单项的标记,并且都能够随着用户的选择而变化。

目的:练习菜单栏、工具栏及状态栏资源的创建和应用。

三.实验步骤:

(1)创建一个名为Ex5的单文档MFC运用程序;

(2)添加菜单项。在主菜单“帮助”后面添加【曲线】、【线宽】和【颜色】

在CMainFrame类里添加消息WM_CONTEXTMENU,并在OnContextMenu()函数中添加如下代码以实现快捷菜单的响应:

void CMainFrame::OnContextMenu(CWnd* pWnd, CPoint point)

{

// TODO: 在此处添加消息处理程序代码

CMenu menu;

if(menu.LoadMenu(IDR_MENU1))

{

CMenu *pPopup=menu.GetSubMenu(0);

pPopup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y,this);

}

}

(4)创建工具条,如图所示:

依次对应线宽2,线宽3,红色,蓝色

(5)添加代码:

Ⅰ.添加成员变量及成员函数

选泽类视图,在视图类里面添加如下变量和如下函数:

CEx5View::CEx5View()

: m_able(0)

, m_typ(0)

, m_wid(1)

{

// TODO: 在此处添加构造代码

m_col=RGB(0,0,0,);

}

Ⅱ添加成员函数代码:

在Ex5View.h文件中,在类的定义前面添加代码:

const double PI=3.1416;

在Ex5View.cpp文件中,添加如下代码:

#include"math.h"

#include"MainFrm.h"

为表中各成员函数添加代码:

double CEx5View::calsin(int x)

{ double y;

y=sin(x*PI/180);

return y;

}

double CEx5View::calcos(int x)

{

double y;

y=cos(x*PI/180);

return y;

}

void CEx5View::drawline(CDC * pDC, int x1, int y1, int x2, int y2)

{

pDC->MoveTo(x1,y1);

pDC->LineTo(x2,y2);

}

void CEx5View::drawaxis(CDC * pDC)

{

CString str;

CFont myfont,*oldfont;

myfont.CreatePointFont(80,"Arial",pDC);//属性配置中置为多字节字符集oldfont=pDC->SelectObject(&myfont);

drawline(pDC,50,10,50,290);

drawline(pDC,45,150,780,150);

for(int i=50;i<780;i=i+90)

{

drawline(pDC,i,145,i,150);

str.Format("%d",i-50);

if((i-50)!=0)

pDC->TextOutA(i,155,str);

}

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

{

drawline(pDC,50,50+20*i,55,50+20*i);

str.Format("%.2f",1-0.2*i);

if(i!=5)

pDC->TextOutA(15,45+20*i,str);

else pDC->TextOutA(15,45+20*i,"0");

}

pDC->SelectObject(oldfont);

myfont.DeleteObject();

}

void CEx5View::drawcurve(CDC * pDC)

{

drawaxis(pDC);

CPoint point[750];

CPen mypen,*oldpen;

mypen.CreatePen(PS_SOLID,m_wid,m_col);

oldpen=pDC->SelectObject(&mypen);

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

{

point[i].x=i+50;

if(m_typ==1)

point[i].y=(int)(150-calsin(i)*100);

else if(m_typ==2)

point[i].y=(int)(150-calcos(i)*100);

}

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

drawline(pDC,point[i].x,point[i].y,point[i+1].x,point[i+

1].y);

pDC->SelectObject(oldpen);

mypen.DeleteObject();

}

Ⅲ建立消息映射

在消息处理函数中添加如下代码:

void CEx5View::OnSin()

{

// TODO: 在此添加命令处理程序代码

m_typ=1;

m_able=1;

Invalidate();

}

void CEx5View::OnCos()

{

// TODO: 在此添加命令处理程序代码

m_typ=2;

m_able=1;

Invalidate();

}

void CEx5View::OnColr()

{

// TODO: 在此添加命令处理程序代码

m_col=RGB(255,0,0);

Invalidate();

}

void CEx5View::OnColb()

{

// TODO: 在此添加命令处理程序代码

m_col=RGB(0,0,255);

Invalidate();

}

void CEx5View::On32776()//线宽

{

// TODO: 在此添加命令处理程序代码

m_wid=2;

Invalidate();

}

void CEx5View::On32777()//线宽

{

// TODO: 在此添加命令处理程序代码

m_wid=3;

Invalidate();

}

void CEx5View::OnUpdateColr(CCmdUI *pCmdUI)

{

// TODO: 在此添加命令更新用户界面处理程序代码

pCmdUI->Enable(m_able);

if(m_col==RGB(255,0,0))

pCmdUI->SetCheck(true);

else

pCmdUI->SetCheck(false);

}

void CEx5View::OnUpdateColb(CCmdUI *pCmdUI)

{

// TODO: 在此添加命令更新用户界面处理程序代码pCmdUI->Enable(m_able);

if(m_col==RGB(0,0,255))

pCmdUI->SetCheck(true);

else

pCmdUI->SetCheck(false);

}

void CEx5View::OnUpdate32776(CCmdUI *pCmdUI)

{

// TODO: 在此添加命令更新用户界面处理程序代码pCmdUI->Enable(m_able);

if(m_wid==2)

pCmdUI->SetCheck(true);

else

pCmdUI->SetCheck(false);

}

void CEx5View::OnUpdate32777(CCmdUI *pCmdUI)

{

// TODO: 在此添加命令更新用户界面处理程序代码pCmdUI->Enable(m_able);

if(m_wid==3)

pCmdUI->SetCheck(true);

else

pCmdUI->SetCheck(false);

}

Ⅳ在视图类的ondraw()函数中添加代码:void CEx5View::OnDraw(CDC*pDC)

{

CEx5Doc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

// TODO: 在此处为本机数据添加绘制代码

drawcurve(pDC);

}

Ⅴ添加状态栏操作代码:

打开MainFrame.h文件,将状态栏对象m_wndStatusBar的访问类型改为公有,在静态数组栏中添加ID_INDICATOR_PROMPT,并在字符串编辑器里设置属性,

打开头文件Ex5View.h,在消息处理函数的声明宏中添加代码:

afx_msg void OnUpdatePrompt(CCmdUI *pCmdUI);

然后,打开Ex5View.cpp文件里,在其消息映射表里添加代码:

ON_UPDATE_COMMAND_UI(ID_INDICATOR_PROMPT,OnUpdatePrompt)

最后给消息处理函数添加代码:

void CEx5View::OnUpdatePrompt(CCmdUI *pCmdUI)

{ CMainFrame * pMainFrame=(CMainFrame*)AfxGetMainWnd();

CStatusBar * pStatusBar=&pMainFrame->m_wndStatusBar;

CString str,str1,str2,str3;

str2="宽,";

str3="黑色";

str1=(m_typ==1)?"正弦,":"余弦,";

if(pStatusBar)

{ if(m_wid==2)

str2="宽,";

else if(m_wid==3)

str2="宽,";

if(m_col==RGB(255,0,0))

str="红色";

else if(m_col==RGB(0,0,255))

str3="蓝色";

str=str1+str2+str3;

if(m_able==0)

str="选择曲线类型";

str.Format("str2","str3");

pStatusBar->SetPaneText(1,str);

}

}

(6)运行结果如图所示:

画正弦曲线:

画余弦曲线

SQL-Server数据库上机实验报告

SQL-Server数据库上机实验报告

《数据库系统原理》上机实验报告 学号:1120131743 姓名:谈兆年 班级:07111301

一、实验目的与要求: ●熟练使用SQL语句 ●掌握关系模型上的完整性约束机制 二、实验内容 1:利用SQL语句创建Employee数据库 CREATE DATABASE Employee; 结果: 2:利用SQL语句在Employee数据库中创建人员表person、月薪表salary及部门表dept。 做法:按表1、表2、表3中的字段说明创建 表1 person表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 P_no Char 6 Not Null 工号,主键P_na Varch10 Not 姓名

me ar Null Sex Char 2 Not Null 性别 Birth date Dateti me Null 出生日期 Prof Varch ar 10 Null 职称 Dept no Char 4 Not Null 部门代码,外键 (参照dept表)表2 salary表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 P_no Char 6 Not Null 工号,主键,外键(参照person表) Base Dec 5 Null 基本工资Bonu s Dec 5 Null 奖金,要求>50 Fact Dec 5 Null 实发工资=基本工 资+奖金 Mont h Int 2 Not Null 月份

表3 dept表结构 字段名数据 类型 字段 长度 允许空 否 字段说明 Dept no Char 4 Not Null 部门代码,主键, Dna me Varch ar 10 Not Null 部门名称 程序为: CREATE TABLE dept( deptno CHAR(4) PRIMARY KEY NOT NULL, dname V ARCHAR(10) NOT NULL) CREATE TABLE Person( P_no CHAR(6) PRIMARY KEY Not Null, P_name V ARCHAR(10) Not Null, Sex CHAR(2) Not Null, Birthdate Datetime Null, Prof V ARCHAR(10) Null, Deptno CHAR(4) Not Null, FOREIGN KEY(Deptno) REFERENCES

C++上机实验报告实验三

实验三类与对象 1.实验目的 1.掌握类的定义和使用 2.掌握类的定义和对象的声明 3.复习具有不同访问属性的成员的访问方式 4.观察构造函数和析构函数的执行过程 5.学习类的组合使用方法 6.使用VC++的debug调试功能观察程序流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。 2.实验要求 1.定义一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop。其中,rank为枚举类型CPU_Rank,定义为enum CPU_Rank{P1=1,P2,P3,P4,P5,P6,P7},frequency为单位是MHz的整型数,voltage为浮点型的电压值。观察构造函数和析构函数的调用顺序。 2.定义一个简单的Computer类,有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,有两个公有成员函数run、stop。cpu为CPU类的一个对象,ram为RAM类的一个对象,cdrom 为CDROM类的一个对象,定义并实现这个类。 3. (选做)设计一个用于人事管理的People(人员)类。考虑到通用性这里只抽象出所有类型人员都具有的属性:number(编号)、sex(性别)、birthday(出生日期)、id(身份证号)等等。其中“出生日期”定义为一个“日期”类内嵌子对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、组合。 3.实验内容 1.首先定义枚举类型CPU_Rank,例如enum CPU_Rank{P1=1, P2, P3, P4, P5, P6, P7},再定义CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等私有数据成员,定义成员函数run、stop,用来输出提示信息,在构造函数和析构函数中也可以输出提示信息。在主程序中定义一个CPU的对象,调用其成员函数,观察类对象的构造与析构顺序,以及成员函数的调用。程序名: 2.使用debug调试功能观察程序的运行流程,跟踪观察类的构造函数、析构函数、成员函数的执行顺序。 3.调试操作步骤如下: 1)单击Build | Start Debug | Step Into命令,或按下快捷键F11,系统进入单步执行状态,程序开始运行,一个DOS窗口出现,此时Visual Studio 中光标停在main()函数的入口处; 2)从Debug菜单或Debug工具栏中单击Step Over,此时,光标下移,程序准备执行CPU 对象的初始化; 3)单击Step Into,程序准备执行CPU类的构造函数; 4)连续单击Step Over,观察构造函数; 5)此时程序准备执行CPU对象的run()函数,单击Step Into,程序进入run()成员函数,连续单击Step Over,直到回到main()函数。 6)继续执行程序,参照上述的方法,观察程序的执行顺序,加深对类的构造函数、析构函数、成员函数的执行顺序的认识。 7)再试试Debug菜单栏中别的菜单项,熟悉Debug的各种方法。 4.首先定义CPU类(可使用第二题中的CPU类)、RAM类、CDROM类。再定义Computer类;

数据库上机实验报告

数据库实验 (第三次) 题目1 实验内容: 1. 检索上海产的零件的工程名称; 2. 检索供应工程J1零件P1的供应商号SNO; 3. 检索供应工程J1零件为红色的供应商号SNO; 4. 检索没有使用天津生产的红色零件的工程号JNO; 5. 检索至少用了供应商S1所供应的全部零件的工程号JNO; 6. 检索购买了零件P1的工程项目号JNO及数量QTY,并要求对查询的结果按数 量QTY降序排列。

1 select jname from j where jno in (select jno from spj where sno in (select sno from s where city ='上海' ) ); 2 select sno from spj where jno ='j1'and pno ='p1' 3

selectdistinct sno from spj where pno in (select pno from p where color='红'and pno in (select pno from spj where jno ='j1' ) ); 4 selectdistinct jno from spj where pno notin (select pno from p where color ='红'and pno in (select pno from spj where sno in (select sno from s where city ='天津' ) ) )

5 select jno from spj where sno ='s1' 6 select jno,qty from spj where pno ='p1' orderby qty desc 四﹑思考题 1.如何提高数据查询和连接速度。 建立视图 2. 试比较连接查询和嵌套查询 有些嵌套查询是可以用连接来代替的,而且使用连接的方式,性能要比 嵌套查询高出很多 当查询涉及多个关系时,用嵌套查询逐步求解结构层次清楚,易于构造,具有结构化程序设计的优点。但是相比于连接运算,目前商用关系数据库管理系统对嵌套查询的优化做的还不够完善,所以在实际应用中,能够用连接运算表达的查询尽可能采用连接运算。

第5章上机实验报告

第5章上机实验报告 一、实验目的 (1)观察程序运行中变量的作用域74。 (2)学习类的静态成员的使用。 (3)学习多文件结构的C++程序中的使用。 二、实验任务 (1)运行下面的程序,观察变量x,y的值。 【代码lab5-1】 #include"iostream" usingnamespace std; void fun(); int x=1,y=2; int main() { cout<<"Begin..."<

数据分析实验报告

数据分析实验报告 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

第一次试验报告 习题1.3 1建立数据集,定义变量并输入数据并保存。 2数据的描述,包括求均值、方差、中位数等统计量。 分析—描述统计—频率,选择如下: 输出: 统计量 全国居民 农村居民 城镇居民 N 有效 22 22 22 缺失 均值 1116.82 747.86 2336.41 中值 727.50 530.50 1499.50 方差 1031026.918 399673.838 4536136.444 百分位数 25 304.25 239.75 596.25 50 727.50 530.50 1499.50 75 1893.50 1197.00 4136.75 3画直方图,茎叶图,QQ 图。(全国居民) 分析—描述统计—探索,选择如下: 输出: 全国居民 Stem-and-Leaf Plot Frequency Stem & Leaf 5.00 0 . 56788 数据分析实验报告 【最新资料,WORD 文档,可编辑修改】

2.00 1 . 03 1.00 1 . 7 1.00 2 . 3 3.00 2 . 689 1.00 3 . 1 Stem width: 1000 Each leaf: 1 case(s) 分析—描述统计—QQ图,选择如下: 输出: 习题1.1 4数据正态性的检验:K—S检验,W检验数据: 取显着性水平为0.05 分析—描述统计—探索,选择如下:(1)K—S检验

结果:p=0.735 大于0.05 接受原假设,即数据来自正太总体。 (2 )W 检验 结果:在Shapiro-Wilk 检验结果972.00 w ,p=0.174大于0.05 接受原假设,即数据来自正太总体。 习题1.5 5 多维正态数据的统计量 数据:

数据库上机实验报告正式版

For the things that have been done in a certain period, the general inspection of the system is also a specific general analysis to find out the shortcomings and deficiencies 数据库上机实验报告正式 版

数据库上机实验报告正式版 下载提示:此报告资料适用于某一时期已经做过的事情,进行一次全面系统的总检查、总评价,同时也是一次具体的总分析、总研究,找出成绩、缺点和不足,并找出可提升点和教训记录成文,为以后遇到同类事项提供借鉴的经验。文档可以直接使用,也可根据实际需要修订后使用。 数据库上机实验报告 试验内容 1、数据表的建立 基本表《简单的》带有主键 带有外码约束的(外码来自其他表或者本表) 2、数据表的修改 添加删除列 修改列属性类型 添加删除约束(约束名) 元组的添加,修改,删除 删除数据表

试验过程 1、createtablestudent ( snochar(9)primarykey,/*sno是主码列级完整性约束条件*/ snamechar(20)unique,/*sname取唯一值*/ ssexchar(2), sagesmallint,/*类型为smallint*/ sdeptchar(20)/*所在系*/ ); createtablecourse ( cnochar(4)primarykey,/*列级完整性约束条件,cno是主码*/

cnamechar(40), cpnochar(4),/*cpno的含义是先行课*/ ccreditsmallint, foreignkey(cpno)referencescourse(cno) /*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是 cno*/ ); createtablesc ( snochar(9), cnochar(4), gradesmallint,

软基第三次上机实验报告

软基第三次上机实验报告 EX3.1 一、程序流程说明 1)链栈结点类型定义为: typedef struct node { int data; struct node *next; }node_type; 2)编写进栈函数push 3)编写出栈函数pop 4)编写main函数,首先建立一空链栈; 调用进栈函数,将从键盘输入的数据元素逐个进栈,输入0结束;显示进栈后的数据元素;调用两次出栈函数,显示出栈后的数据元素。 二、程序代码 #include #include #define true 1 #define false 0 typedef struct node { int data; struct node*next; }node_type; typedef struct { node_type*top; int length; }lstack_type; int push(lstack_type*lp,int x) { node_type*p; p=(node_type*)malloc(sizeof(node_type)); if(p!=NULL) { p->data=x; p->next=lp->top; lp->top=p; } else return 0; }

void pop(lstack_type *lp) { node_type*p; if(p==NULL) { return; } else { p=lp->top; lp->top=lp->top->next; free(p); } } node_type*print(node_type*head) { node_type*temp; temp=head; while(temp!=NULL) { printf("%d\t",temp->data); temp=temp->next; } return 0; } void main() { int i,j; i=0;j=0; lstack_type M,*lp; lp=&M; lp->top=NULL; printf("Please input the data(end by '0'):\n"); scanf("%d",&i); while(i!=0) { push(lp,i); scanf("%d",&i); } printf("All data is:\n"); print(lp->top); printf("\n The first pop:\n"); pop(lp); print(lp->top);

数据库上机实验报告4

数据库上机实验报告 4 学号:姓名:日期:年月日 实验目的:(1)练习连接查询;(2)练习视图的创建与使用;(3)学习使用ODBC的方法;(4)体验T-SQL的功能;体验存储过程的功能;体验表值函数、标量值函数的作用;体验ranking等功能。 1 练习视图及连接查询。 (1)创建一个视图,视图名为viNF,视图内容为select id,count(*) as nf from friends group by id。执行成功后,将SQL语句复制到下方。 (2)基于viNF视图,查找拥有最多好友的用户、最少好友的用户。执行成功后,将SQL语句复制到下方。 (3)基于users表和viNF视图进行连接查询。分别进行内连接、全外连接、左外连接、右外连接四种操作。执行成功后,将SQL语句复制到下方,并回答:四种结果表,哪两个的结果是一致的,为什么? (4)将题(3)中全外连接保存为一个新的视图viUAF。 2 通过ODBC用Excel打开users表。 3 体验T-SQL。 回顾实验2中的题目: 定义最低价格为成本价;依据此成本价做如下计算: 连接Goods,Goods_Extent,Sellers表,按照总利润,输出前10名;要求输出表的格式为(商品名称,卖家名称,商品价格,运费,卖家信誉,卖家好评率,历史销量,历史利润,期内销量,期内利润,总销量,总利润) 利用如下语句进行查询,体会和之前有什么不同。如感兴趣,自己可以仿照写一个变量定义、赋值及应用的例子。 declare @cost as float; select @cost=min(good_price)from goods; select top 10 good_name as商品名称, goods.seller_name as卖家名称, good_price as商品价格, good_shipping as运费,

计算机组成原理上机实验报告

《计算机组成原理实验》课程实验报告 实验题目组成原理上机实验 班级1237-小 姓名 学号 时间2014年5月 成绩

实验一基本运算器实验 1.实验目的 (1)了解运算器的组成原理 (2)掌握运算器的工作原理 2.实验内容 输入数据,根据运算器逻辑功能表1-1进行逻辑、移位、算术运算,将运算结果填入表1-2。 表 1-1运算器逻辑功能表 运算类 A B S3 S2 S1 S0 CN 结果 逻辑运算65 A7 0 0 0 0 X F=( 65 ) FC=( ) FZ=( ) 65 A7 0 0 0 1 X F=( A7 ) FC=( ) FZ=( ) 0 0 1 0 X F=( ) FC=( ) FZ=( ) 0 0 1 1 X F=( ) FC=( ) FZ=( ) 0 1 0 0 X F=( ) FC=( ) FZ=( ) 移位运算0 1 0 1 X F=( ) FC=( ) FZ=( ) 0 1 1 0 0 F=( ) FC=( ) FZ=( ) 1 F=( ) FC=( ) FZ=( ) 0 1 1 1 0 F=( ) FC=( ) FZ=( ) 1 F=( ) FC=( ) FZ=( ) 算术运算 1 0 0 0 X F=( ) FC=( ) FZ=( ) 1 0 0 1 X F=( ) FC=( ) FZ=( ) 1 0 1 0X F=( ) FC=( ) FZ=( ) 1 0 1 0X F=( ) FC=( ) FZ=( ) 1 0 1 1 X F=( ) FC=( ) FZ=( ) 1 1 0 0 X F=( ) FC=( ) FZ=( ) 1 1 0 1 X F=( ) FC=( ) FZ=( ) 表1-2运算结果表

数据分析实验报告

《数据分析》实验报告 班级:07信计0班学号:姓名:实验日期2010-3-11 实验地点:实验楼505 实验名称:样本数据的特征分析使用软件名称:MATLAB 实验目的1.熟练掌握利用Matlab软件计算均值、方差、协方差、相关系数、标准差与变异系数、偏度与峰度,中位数、分位数、三均值、四分位极差与极差; 2.熟练掌握jbtest与lillietest关于一元数据的正态性检验; 3.掌握统计作图方法; 4.掌握多元数据的数字特征与相关矩阵的处理方法; 实验内容安徽省1990-2004年万元工业GDP废气排放量、废水排放量、固体废物排放量以及用于污染治理的投入经费比重见表6.1.1,解决以下问题:表6.1.1废气、废水、固体废物排放量及污染治理的投入经费占GDP比重 年份 万元工业GDP 废气排放量 万元工业GDP 固体物排放量 万元工业GDP废 水排放量 环境污染治理投 资占GDP比重 (立方米)(千克)(吨)(%)1990 104254.40 519.48 441.65 0.18 1991 94415.00 476.97 398.19 0.26 1992 89317.41 119.45 332.14 0.23 1993 63012.42 67.93 203.91 0.20 1994 45435.04 7.86 128.20 0.17 1995 46383.42 12.45 113.39 0.22 1996 39874.19 13.24 87.12 0.15 1997 38412.85 37.97 76.98 0.21 1998 35270.79 45.36 59.68 0.11 1999 35200.76 34.93 60.82 0.15 2000 35848.97 1.82 57.35 0.19 2001 40348.43 1.17 53.06 0.11 2002 40392.96 0.16 50.96 0.12 2003 37237.13 0.05 43.94 0.15 2004 34176.27 0.06 36.90 0.13 1.计算各指标的均值、方差、标准差、变异系数以及相关系数矩阵; 2.计算各指标的偏度、峰度、三均值以及极差; 3.做出各指标数据直方图并检验该数据是否服从正态分布?若不服从正态分布,利用boxcox变换以后给出该数据的密度函数; 4.上网查找1990-2004江苏省万元工业GDP废气排放量,安徽省与江苏省是 否服从同样的分布?

数据库上机实验报告 总结

重庆邮电大学移通学院 数据库集中上机报告 学生:马志鹏 学号: 022******* 班级: 02210901 专业:计算机应用技术 重庆邮电大学移通学院 2011年6月

第一天:Access数据库基本操作 1 实验目的 1、熟悉的掌握Access数据库结构与创建 2、了解创建、修改、删除、查询、保存等操作 3、输入数据创建、设计器创建、向导创建。 2 实验内容 3 实验结果 1. 2. 2

重庆邮电大学移通学院 3 2 Access 数据表的编辑 第二天 数据表基本操作 1 表关系与编辑数据 1 实验目的: 1、实现一对一,一对多,多对多的实体关系 2、对“学生基本信息”表中的记录进行排序,按出生日期降序排列 3、从“学生基本信息”表中筛选出所有计算机系男生的记录 4、从“学生基本信息”表中筛选出回族和蒙古族的所有学生记录

2 实验内容 1. SELECT 学生基本信息表.学生姓名, 成绩档案表.* FROM 成绩档案表INNER JOIN 学生基本信息表ON 成绩档案表.学生学号= 学生基本信息表.学生学号 WHERE (((学生基本信息表.学生姓名)="张冰冰")); 2 SELECT 学生基本信息表.* FROM 学生基本信息表 WHERE (((学生基本信息表.性别)="男") AND ((学生基本信息表.班级名称)="计算机系")); 3 SELECT 成绩档案表.C语言, 课程表.* FROM 成绩档案表, 课程表; 4 SELECT 学生基本信息表.*, 学生基本信息表.性别, 学生基本信息表.班级名称FROM 学生基本信息表WHERE (((学生基本信息表.性别)<>"男") AND ((学生基本信息表.班级名称)<>"计算机系")); 5 SELECT 学生基本信息表.*, 学生基本信息表.出生日期 FROM 学生基本信息表WHERE (((Month([出生日期]))=9) AND ((Day([出生日期]))=1)); 6 SELECT 学生基本信息表.* FROM 学生基本信息表WHERE (((学生基本信息表.学生姓名) Like "李*")); 3 实验结果 4

数据分析实验报告

数据分析实验报告 【最新资料,WORD文档,可编辑修改】 第一次试验报告 习题1.3 1建立数据集,定义变量并输入数据并保存。 2数据的描述,包括求均值、方差、中位数等统计量。 分析—描述统计—频率,选择如下: 输出:

方差1031026.918399673.8384536136.444百分位数25304.25239.75596.25 50727.50530.501499.50 751893.501197.004136.75 3画直方图,茎叶图,QQ图。(全国居民) 分析—描述统计—探索,选择如下: 输出: 全国居民Stem-and-Leaf Plot Frequency Stem & Leaf 9.00 0 . 122223344 5.00 0 . 56788 2.00 1 . 03 1.00 1 . 7 1.00 2 . 3 3.00 2 . 689

1.00 3 . 1 Stem width: 1000 Each leaf: 1 case(s) 分析—描述统计—QQ图,选择如下: 输出: 习题1.1 4数据正态性的检验:K—S检验,W检验数据: 取显着性水平为0.05 分析—描述统计—探索,选择如下:(1)K—S检验 单样本Kolmogorov-Smirnov 检验 身高N60正态参数a,,b均值139.00

标准差7.064 最极端差别绝对值.089 正.045 负-.089 Kolmogorov-Smirnov Z.686 渐近显着性(双侧).735 a. 检验分布为正态分布。 b. 根据数据计算得到。 结果:p=0.735 大于0.05 接受原假设,即数据来自正太总体。(2)W检验

数据库上机实验8实验报告

上机实验八——完整性约束的实现 一、实习目的: 掌握SQL中实现数据完整性的方法,加深理解关系数据模型的三类完整性约束。 二、实习准备: 1.复习“完整性约束SQL定义” 2.完成习题四第10题中的各项操作的SQL语句。 3.了解SQL Server 中实体完整性、参照完整性和用户自定义完整性的实现手段 三、实习内容: 1.验证习题四第10题四个表结构的SQL语句。 表一:Sstudent CREATE TABLE Sstudent (Sno char(7) NOT NULL PRIMARY KEY, Sname VarChar(20) NOT NULL, Ssex Char(2) NOT NULL DEFAULT('男') check(Ssex IN('男','女')), Sage smallint check(Sage >14 AND Sage<65), Clno Char(5) NOT NULL REFERENCES Cclass(Clno) ON UPDATE CASCADE); 表二:Ccourse CREATE TABLE Ccourse (Cno Char(1) NOT NULL PRIMARY KEY, Cname VarChar(20) NOT NULL, Credit Smallint CHECK(Credit IN(1,2,3,4,5,6)));

表三:Cclass CREATE TABLE Cclass (Clno Char(5) NOT NULL PRIMARY KEY, Speciality VarChar(20) NOT NULL, Inyear Char(4) NOT NULL, Number Integer CHECK(Number>1 AND Number<100), Mointor Char(7) REFERENCES Student(Sno) ); 表四:Ggrade CREATE TABLE Ggrade (Sno Char(7) NOT NULL REFERENCES Student(Sno) ON DELETE CASCADE ON UPDATE CASCADE, Cno Char(1) NOT NULL REFERENCES Course(Cno) ON DELETE CASCADE ON UPDATE CASCADE, Gmark Numeric(4,1) CHECK(Gmark>0 AND Gmark<100), PRIMARY KEY(Sno,Cno)); 2. SQL Server中提供了那些方法实现实体完整性、参照完整体和用户自定义完整性 答:实体完整性:是通过主码的定义(PRIMARY KEY)来实现的; 参照完整性:是利用外部码(REFERENCES)的说明,以限制相关表中某些属性的取值,当用户违反规则时,提供三种:RESTRICT(限制策略),CASCADE(级联策略),SET NULL(置空策略); 用户自定义完整性:check约束,对元组的CHECK约束

MATLAB第六次上机实验报告

MATLAB第六次上机实验报告 0210901班学号2009210811 姓名:李贤凤Quiz 3.1 >> a=20; >> b=-2; >> c=0; >> d=1; >> a>b ans = 1 >> b>d ans = >> a>b&c>d ans = >> a==b ans = >> a&b>c ans = >> ~~b ans = 1 >> a=2; >> b=[1 -2;-0 10]; >> c=[0 1;2 0]; >> d=[-2 1 2;0 1 0]; >> ~(a>b) ans = 0 0 0 1 >> a>c&b>c ans = 1 0 0 1 >> c<=d ??? Error using ==> <= Matrix dimensions must agree.

>> a=2; >> b=3; >> c=10; >> d=0; >> a*b^2>a*c ans = >> d|b>a ans = 1 >> (d|b)>a ans = >> a=20; >> b=-2; >> c=0; >> d='Test'; >> isinf(a/b) ans = >> isinf(a/c) Warning: Divide by zero. (Type "warning off MATLAB:divideByZero" to suppress this warning.) ans = 1 >> a>b&ischar(d) ans = 1 >> isempty(c) ans = Quiz3.2 1.% Script file : Sqrt_x.m % Purpose: % This program is used to calculate the square root of a randem number % Record of revisions: % Date Programmer Description of change % === ======== ================ % 10/22/2010 lixianfeng Original code

C程序设计上机实验报告((完整版))

C语言程序设计上机实验报告 学院:机械工程学院 班级:机自161213 姓名:刘昊 学号:20162181310 实验时间:2017 年3 月6 号 任课老师:张锐

C语言程序设计上机实验报告 实验一 一、实验名称: C 程序的运行环境和运行C程序的方法 二、实验目的:了解在 程序 C 编译系统上如何编辑、编译、连接和运行一个 C 三、实验内容: (1). (2). (3). 输入并运行一个简单的C程序。 设计程序,对给定的两个数求和。 设计程序,对给定的两个数进行比较,然后输出其中较大的数。 四、源程序代码: 代码1: 运行结果1:

程序分析1: 该程序用来判断所输入的整数是否为一个素数,如果一个数能被除了 1 和它本身整除,还能被其它数整除,那么它就不是一个素数,因此,用for 循环来进行整除过程的简写。 代码2: 运行结果2:

程序分析2: 简单的使用printf() 和scanf() 函数进行简单的数据运算。代码3: 运行结果3:

程序分析3: 使用if 语句进行判断。 五.实验总结 C语言程序设计上机实验报告 实验二 一、实验名称:顺序结构程序设计 二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法, 熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。 三、实验内容: (1). 编写程序,实现小写字母转大写。

(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。 (3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。 (4). 编写程序,实现单字符getchar 和putchar 输入输出。 (5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。 四、源程序代码 代码1: 运行结果1: 程序分析1:

软件工程实验报告第三次

实验报告 课程名称:软件工程实验名称:用PowerDesigner建模工具绘制数据流图班级:学生姓名:学号: 指导老师评定:签名: 一、实验环境 Windows 2000、Rational Software公司的Rational Rose应用软件 二、实验目的 1)了解Rational Rose工具软件的组成及功能 2)掌握用Rational Rose画用例图的具体的使用方法 三、实验内容 1)设计用例图(Use Case框图) 2)用Rational Rose在Use Case视图中创建Use Case框图。 四、实验要求 建立一个Use Case框图,并给出“预订教室”的用例描述。 1) 背景 某大学需要一个教室预订系统,将空闲的教室提供给师生做学术报告或班级活动。师生可使用该系统预订所需的教室,以便让管理员在恰当的时间开放教室、准备好多媒体设备。 2) 功能要求 2.1) 管理员可使用该系统增加用户、删除用户。 2.2) 管理员可向系统中增加或删除供预订的教室,设置任一教室可使用的时间段。 2.2) 师生可登录系统、修改密码。 2.3) 师生在登录后,可浏览给定时间段的空闲(供预订的且未被预订的)教室;选择教室和使用时间段,预订教室。 2.4) 管理员可浏览任意时间段内的教室预订情况。 3) 性能要求 3.1) 教室占用的时间段精确到“课时”。 3.2) 支持最多10000人同时在线使用系统,确保系统稳定流畅。 五、实验步骤 Use Case框图表示整个机构提供的功能,可以用来回答下列一些问题:公司是干什么的?为什么要建立这个系统?还有那些人使用这些系统。Use Case框图在业务建模活动期间大量用于设置系统情景和形成创建使用案例的基础。 1)如何使用Rational Rose画Use Case框图 S1:点击“开始”在“程序”中找到“Rational rose”点击“Rational Rose Enterprise Edition”进入该软件。

《数据库技术与应用》实验报告

《数据库技术与应用》上机实验报告 目录: 一、概述 二、主要上机实验内容 1.数据库的创建 2.表的创建 3.查询的创建 4.窗体的创建 5.报表的创建 6.宏的创建 三、总结 一、概述 (一)上机内容: 第七周:熟悉Access界面,数据库和表的创建,维护与操作 1. 熟悉Access的启动,推出,界面,菜单,工具栏等; 2. 练习使用向导创建数据库、创建空数据库; 3. 练习创建表结构的三种方法(向导、表设计器、数据表)、表中字段属性设置; 4. 练习向表中输入不同类型的数据; 5. 练习创建和编辑表之间的关系; 6. 练习表的维护(表结构、表内容、表外观) 7. 练习表的操作(查找、替换、排序、筛选等) 第八周:练习创建各种查询 1.选择查询(单表、多表、各种查询表达式) 2.参数查询 3.交叉表查询 4.操作查询(生成查询、删除查询、更新查询、追加查询) 第十周:练习创建各种类型的窗体 1.自动创建纵栏式窗体和表格式窗体; 2.向导创建主|子窗体

3.图表窗体的创建 4.练习通过设计器创建窗体 5.练习美化窗体 第十三周:练习创建各种类型的报表 1.自动创建纵栏式报表和表格式报表; 2.向导创建报表(多表报表、图表报表、标签报表) 3.练习通过设计视图创建报表(主|子报表、自定义报表) 4.练习在报表中添加计算字段和分组汇总数据 第十五周:综合应用 1.了解Access数据库系统开发的一般方法; 2.课程内容的综合练习; 3.编写上机实验报告、答疑 (二)上机完成情况 第七周:熟悉Access界面,数据库和表的创建,维护与操作 完成了创建表,向表中输入不同类型的数据,创建和编辑表之间的关系,进行了表的维护,修改了表的结构、内容、外观,最后进行了表的操作,查找、替换、排序、筛选等。 已完成 第八周:练习创建各种查询 练习选择查询、参数查询、交叉表查询,然后练习并操作查询,生成查询、删除查询、更新查询、追加查询等。 已完成 第十周:练习创建各种类型的窗体 自动创建纵栏式窗体和表格式窗体,向导创建主|子窗体和图表窗体,练习通过设计器创建窗体,美化窗体。 基本完成 第十三周:练习创建各种类型的报表 自动创建纵栏式报表和表格式报表,向导创建报表,练习通过设计视图创建报表,在报表中添加计算字段和分组汇总数据。 已完成 第十五周:综合应用

C++上机实验报告实验六

实验六 实验目的 1.掌握运算符重载的方法 2.学习使用虚函数实现动态多态性 实验要求 1.定义Point类,有坐标_x,_y两个成员变量;对Point类重载“++”(自增)、“――”(自减)运算符,实现对坐标值的改变。 2.定义一个车(vehiele)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop 等成员函数。观察虚函数的作用。 3. (选做)对实验4中的People类重载“==”运算符和“-”运算符,“==”运算符判断两个people类对象的id属性是否相等;“-”运算符实现People类对象的赋值操作。 实验内容及实验步骤 1.编写程序定义Point类,在类中定义整型的私有成员变量_x_y,定义成员函数Point& operator++();Point operator++(int);以实现对Point类重载“++”(自增)运算符,定义成员函数Point& operator--();Point operator--(int);以实现对Point类重载“--”(自减)运算符,实现对坐标值的改变。程序名:1ab8_1.Cpp #include using namespace std; class Point { public: Point(); Point(int x,int y); ~Point(){} //Point类析构函数 Point& operator++(); //公有成员函数 Point operator++(int); Point&operator--(); Point operator--(int); void Show(); private: int _x; //私有数据成员 int _y; }; Point::Point(){ //Point类构造函数 _x=0;_y=0;} Point::Point(int x,int y) //Point类构造函数 { _x=x; _y=y; }

数据分析与挖掘实验报告

数据分析与挖掘实验报告

《数据挖掘》实验报告 目录 1.关联规则的基本概念和方法 (1) 1.1数据挖掘 (1) 1.1.1数据挖掘的概念 (1) 1.1.2数据挖掘的方法与技术 (2) 1.2关联规则 (5) 1.2.1关联规则的概念 (5) 1.2.2关联规则的实现——Apriori算法 (7) 2.用Matlab实现关联规则 (12) 2.1Matlab概述 (12) 2.2基于Matlab的Apriori算法 (13) 3.用java实现关联规则 (19) 3.1java界面描述 (19) 3.2java关键代码描述 (23) 4、实验总结 (29) 4.1实验的不足和改进 (29) 4.2实验心得 (30)

1.关联规则的基本概念和方法 1.1数据挖掘 1.1.1数据挖掘的概念 计算机技术和通信技术的迅猛发展将人类社会带入到了信息时代。在最近十几年里,数据库中存储的数据急剧增大。数据挖掘就是信息技术自然进化的结果。数据挖掘可以从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的,人们事先不知道的但又是潜在有用的信息和知识的过程。 许多人将数据挖掘视为另一个流行词汇数据中的知识发现(KDD)的同义词,而另一些人只是把数据挖掘视为知识发现过程的一个基本步骤。知识发现过程如下: ·数据清理(消除噪声和删除不一致的数据)·数据集成(多种数据源可以组合在一起)·数据转换(从数据库中提取和分析任务相关的数据) ·数据变换(从汇总或聚集操作,把数据变换和统一成适合挖掘的形式) ·数据挖掘(基本步骤,使用智能方法提取数

据模式) ·模式评估(根据某种兴趣度度量,识别代表知识的真正有趣的模式) ·知识表示(使用可视化和知识表示技术,向用户提供挖掘的知识)。 1.1.2数据挖掘的方法与技术 数据挖掘吸纳了诸如数据库和数据仓库技术、统计学、机器学习、高性能计算、模式识别、神经网络、数据可视化、信息检索、图像和信号处理以及空间数据分析技术的集成等许多应用领域的大量技术。数据挖掘主要包括以下方法。神经网络方法:神经网络由于本身良好的鲁棒性、自组织自适应性、并行处理、分布存储和高度容错等特性非常适合解决数据挖掘的问题,因此近年来越来越受到人们的关注。典型的神经网络模型主要分3大类:以感知机、bp反向传播模型、函数型网络为代表的,用于分类、预测和模式识别的前馈式神经网络模型;以hopfield 的离散模型和连续模型为代表的,分别用于联想记忆和优化计算的反馈式神经网络模型;以art 模型、koholon模型为代表的,用于聚类的自组

相关文档
最新文档