搜档网
当前位置:搜档网 › 第三次上机实验参考答案

第三次上机实验参考答案

第三次上机实验参考答案
第三次上机实验参考答案

第三次上机实验参考答案

1、类对象的定义

【项目要求】定义一个圆类,计算圆的面积和周长。

(1)控制台应用程序的参考代码如下:

namespace SY3_1

{

class Program

{

static void Main(string[] args)

{

double r;

Console.Write("请输入圆的半径:");

r = Convert.ToDouble(Console.ReadLine());

Circle c1 = new Circle(r);

Console.WriteLine("圆周长 = {0}\n 圆面积 = {1}", c1.getCircumference(), c1.getArea());

Console.ReadLine();

}

}

class Circle

{

private double radius;

public Circle(double r)

{

radius = r;

}

public double getArea()

{

return Math.PI * radius * radius;

}

public double getCircumference()

{

return 2 * Math.PI * radius;

}

}

}//定义一个圆类,计算圆的面积和周长。

(2)用面向对象的思想实现Windows 应用程序,用户输入圆的半径,点击计算按钮能输出圆的面积和周长。界面如图3-2 所示。

图 3-1 圆类求面积和周长

参考代码如下:

namespace SY3_2

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

double r;

r = Convert.ToDouble(tbRadius.Text);

Circle c1 = new Circle(r);

tbArea.Text = c1.getArea().ToString("F2");

tbPeri.Text = c1.getCircumference().ToString("F2");

}

class Circle

{

private double radius;

public Circle(double r)

{

radius = r;

}

public double getArea()

{

return Math.PI * radius * radius;

}

public double getCircumference()

{

return 2 * Math.PI * radius;

}

}

}

}

//用面向对象的思想实现Windows 应用程序,用户输入圆的半径,点击计算按钮能输出圆的面积和周长。

图 3-2 圆类求面积和周长

2、类的继承

【项目要求】编写一个程序,计算球、圆柱和圆锥的表面积和体积。

(1)定义一个基类圆,至少含有一个数据成员半径;

(2)定义基类的派生类球、圆柱、圆锥,都含有求体积的方法,可以都在构造方法中实现,也可以将求体积和输出写在一个方法或两个方法中,请比较使用;

(3)定义主方法,求球、圆柱和圆锥的表面积和体积。

参考代码如下:

namespace SY3_3

{

class MyCircle

{

double r;

public MyCircle(double r)

{

this.r = r;

}

}

class MyBall : MyCircle

{

double volumn;

public MyBall(double r) : base(r)

{

volumn = Math.PI * r * r * r;

Console.WriteLine("球的体积是:{0}", volumn);

}

}

class MyCylinder : MyCircle

{

double volumn;

public MyCylinder(double r, double h): base(r)

{

}

public void calvolumn(double r, double h)

{

volumn = Math.PI * r * r * h;

}

public void print()

{

Console.WriteLine("圆柱体的体积是:{0}", volumn);

}

class MyCone : MyCircle

{

double h, volumn;

public MyCone(double r, double h): base(r)

{

this.h = h;

}

public void calvolumn(double r, double h)

{

volumn = Math.PI * r * r * h / 3;

Console.WriteLine("圆锥体的体积是:{0}", volumn);

}

}

public class Test

{

public static void Main()

{

Console.Write("请输入球半径:");

double r = Convert.ToDouble(Console.ReadLine());

MyBall mb = new MyBall(r);

Console.Write("请输入圆柱体高度:");

double h = Convert.ToDouble(Console.ReadLine());

MyCylinder mc = new MyCylinder(r, h);

mc.calvolumn(r, h);

mc.print();

Console.Write("请输入圆锥体高度:");

double h2 = Convert.ToDouble(Console.ReadLine());

MyCone mo = new MyCone(r, h2);

Console.WriteLine("h2={0},r={1}", h2, r);

mo.calvolumn(r, h2);

Console.ReadLine();

}

}

}

图3-3求球、圆柱和圆锥的表面积和体积

3、文本文件的字节读写

【项目要求】设计一个如图3-4所示的应用程序,要求:

(1)单击【打开文件】按钮后,弹出一个通用对话框,选择文件后文件内容显示在文本框中;(2)单击【保存文件】按钮后,弹出一个通用对话框,确定文件名后保存;

(3)单击【查找下一个】按钮后,就在文本文件中查找单词“SOA”,找到后以高亮度显示。若再次单击【查找下一个】按钮,则继续查找。

图3-4文本文件的字节读写

参考代码如下:

namespace SY3_4

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

int index = 0;

private void btOpen_Click(object sender, EventArgs e)

{

openFileDialog1.FileName = "*.txt";

openFileDialog1.InitialDirectory = "c:\\";

openFileDialog1.Filter = "Text Files(*.Txt|*.Txt|All Files(*.*)|*.*";

openFileDialog1.FilterIndex = 1;

openFileDialog1.ShowDialog();

if (openFileDialog1.FileName == null || openFileDialog1.FileName.Equals(""))

return;

int a;

FileStream fs = new FileStream(openFileDialog1.FileName, FileMode.Open, FileAccess.Read);

tbInfo.Text = "";

a = fs.ReadByte();

while (a != -1)

{

tbInfo.Text += ((char)a).ToString();

a = fs.ReadByte();

}

fs.Close();

}

private void btSave_Click(object sender, EventArgs e)

{

saveFileDialog1.InitialDirectory = "c:\\";

saveFileDialog1.Filter = "Text Files(*.Txt|*.Txt|All Files(*.*)|*.*";

saveFileDialog1.FilterIndex = 1;

saveFileDialog1.ShowDialog();

if (openFileDialog1.FileName == null || openFileDialog1.FileName.Equals(""))

return;

byte a;

FileStream fs = new FileStream(saveFileDialog1.FileName, FileMode.OpenOrCreate, FileAccess.Write);

for (int i = 0; i < tbInfo.Text.Length; i++)

{

a = (byte)tbInfo.Text[i];

fs.WriteByte(a);

}

fs.Flush();

fs.Close();

}

private void btSeach_Click(object sender, EventArgs e)

tbInfo.Focus();

index = tbInfo.Text.IndexOf("SOA", index);

if (index >= 0)

{

tbInfo.SelectionStart = index;

tbInfo.SelectionLength = 3;

index++;

}

else

MessageBox.Show("找不到!");

}

private void btClose_Click(object sender, EventArgs e)

{

Application.Exit();

}

}

}

//(1)单击【打开文件】按钮后,弹出一个通用对话框,选择文件后文件内容显示在文本框中;//(2)单击【保存文件】按钮后,弹出一个通用对话框,确定文件名后保存;

//(3)单击【查找下一个】按钮后,就在文本文件中查找单词“SOA”,找到后以高亮度显示。若再次单击【查找下一个】按钮,则继续查找。

上机实验内容及实验报告要求

上机实验内容及实验报告要求 本文从网络收集而来,上传到平台为了帮到更多的人,如果您需要使用本文档,请点击下载按钮下载本文档(有偿下载),另外祝您生活愉快,工作顺利,万事如意! 上机实验内容及实验报告要求 一、《软件技术基础》上机实验内容 1.顺序表的建立、插入、删除。 2.带头结点的单链表的建立(用尾插法)、插入、删除。 二、提交到个人10M硬盘空间的内容及截止时间 1.分别建立二个文件夹,取名为顺序表和单链表。 2.在这二个文件夹中,分别存放上述二个实验的相关文件。每个文件夹中应有三个文件(.C文件、.OBJ 文件和.EXE文件)。 3.截止时间:12月28日(18周周日)晚上关机时为止,届时服务器将关闭。 三、实验报告要求及上交时间(用A4纸打印) 1.格式: 《计算机软件技术基础》上机实验报告 用户名se××××学号姓名学院 ①实验名称: ②实验目的:

③算法描述(可用文字描述,也可用流程图): ④源代码:(.C的文件) ⑤用户屏幕(即程序运行时出现在机器上的画面): 2.对C文件的要求: 程序应具有以下特点:A可读性:有注释。 B交互性:有输入提示。 C结构化程序设计风格:分层缩进、隔行书写。 3.上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。请注意:过时不候哟! 四、实验报告内容 0.顺序表的插入。 1.顺序表的删除。 2.带头结点的单链表的插入。 3.带头结点的单链表的删除。 注意:1.每个人只需在实验报告中完成上述4个项目中的一个,具体安排为:将自己的序号对4求余,得到的数即为应完成的项目的序号。 例如:序号为85的同学,85%4=1,即在实验报告中应完成顺序表的删除。 2.实验报告中的源代码应是通过编译链接即可运

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类;

PPT操作练习 上机实验报告

PPT操作练习上机实验报告 一、实验目的 ①掌握演示文稿制作的基本过程②按时文稿播放的基本操作 . 实验步骤:一、准备工作 1、在自己文件夹里建一个课件文件夹→双击打开此文件夹→建一个名为“素材”的文件夹。 2、搜集素材:包括声音、图片、影像、文字等,都存在“素材”文件夹内。 二、建立演示文稿 1、启动PowerPoint:双击桌面上的PowerPoint图标→选择“空演示文稿”→确定→选一版式→确定→选空白页→确定 2、保存:点“文件”菜单→保存→单击“保存位置”后面的“▼”→打开自己建的课件文件夹→在“文件名称”后面的框中输入文件名(中国山水画的意境)→保存。 3、关闭:点“X”按钮。 三、修饰、制作演示文稿 1打开已保存的课件:找到自己制作的课件保存的位置,双击打开课件。 (1)输入文字:插入→文本框→水平→到空白片按住鼠标左键拖动鼠标,在适当位置处松开→在所形成的方框内输入“体味中国传统文化的魅力”→输完后到框外空白处单击左键即可。 (2)修改文字:用鼠标将文字选中→设置“宋体、36、黑色”等。 在此输入一行字“____领略中国山水画的意境”并自定义动画:选中图标→右键→自定义动画→在“效果”下面的“动画和声音”处单击“▼”,选择一种动画。 (3)然后在当前页面插入音乐:插入→影片和→声音文件中的声音→在“素材”文件夹选一声音→确定→自动播放(放映幻灯片时声音自动播放)在插入的声音图标上点右键→编辑声音对象→单击“循环播放,直到停止”前的“□”,则埋单循环播放,否则只播放一次。 (4)设置声音播到第“4”张幻灯片后停止:单击声音图标→在图标上点右键→自定义动画→在“按动画顺序播放”前的“□”单击→继续幻灯片的放映→在下面的框内输入“4”→确定 2、插入新幻灯片:插入→新幻灯片→空白版式→确定。 3、插入艺术字:插入→图片→艺术字→选择简单版式→确定→输入文字→宋体、24号→确定。

第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..."<

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

上机实验七——视图的建立及操作 一、实习目的: 掌握创建、删除、和查询视图的方法,验证可更新视图和不可更新视图。 二、实习准备: 1.复习第三章3.6节视图 2. 完成习题三第16题中的各项操作的SQL语句。 3.了解可更新视图和不课更新视图 三、实习内容:验证习题三第16题中的各项操作的SQL语句。 ①建立01311班选修了1号课程的学生视图Stu_01311_1 CREATE VIEW Stu_01311_1 AS SELECT * FROM Grade WHERE Cno='1'AND Sno in( SELECT Sno FROM Student WHERE Clno='01311') WITH CHECK OPTION ②建立01311班选修了1号课程并且成绩不及格的学生视图Stu_01311_2 CREATE VIEW Stu_01311_2 AS SELECT * FROM Grade

WHERE Cno='1'AND Gmark<60 AND Sno in( SELECT Sno FROM Student WHERE Clno='01311') WITH CHECK OPTION ③建立视图Stu_year,由学生学号、姓名、出生年份组成 CREATE VIEW Stu_year AS SELECT Sno,Sname,year=2001-Sage FROM Student ④查询1990年以后出生的学生姓名 SELECT Sname FROM Student WHERE 2001-Sage<1990; ⑤查询01311班选修了1号课程并且成绩不及格的学生的学号、姓名、出生年份SELECT Sno,Sname,2014-Sage FROM Student WHERE Clno=01311 AND EXISTS(

计算机上机实验内容及实验报告要求(完整版)

报告编号:YT-FS-1915-76 计算机上机实验内容及实验报告要求(完整版) After Completing The T ask According To The Original Plan, A Report Will Be Formed T o Reflect The Basic Situation Encountered, Reveal The Existing Problems And Put Forward Future Ideas. 互惠互利共同繁荣 Mutual Benefit And Common Prosperity

计算机上机实验内容及实验报告要 求(完整版) 备注:该报告书文本主要按照原定计划完成任务后形成报告,并反映遇到的基本情况、实际取得的成功和过程中取得的经验教训、揭露存在的问题以及提出今后设想。文档可根据实际情况进行修改和使用。 一、《软件技术基础》上机实验内容 1.顺序表的建立、插入、删除。 2.带头结点的单链表的建立(用尾插法)、插入、删除。 二、提交到个人10m硬盘空间的内容及截止时间 1.分别建立二个文件夹,取名为顺序表和单链表。 2.在这二个文件夹中,分别存放上述二个实验的相关文件。每个文件夹中应有三个文件(.c文件、.obj 文件和.exe文件)。 3.截止时间:12月28日(18周周日)晚上关机时为止,届时服务器将关闭。 三、实验报告要求及上交时间(用a4纸打印)

1.格式: 《计算机软件技术基础》上机实验报告 用户名se××××学号姓名学院 ①实验名称: ②实验目的: ③算法描述(可用文字描述,也可用流程图): ④源代码:(.c的文件) ⑤用户屏幕(即程序运行时出现在机器上的画面): 2.对c文件的要求: 程序应具有以下特点:a 可读性:有注释。 b 交互性:有输入提示。 c 结构化程序设计风格:分层缩进、隔行书写。 3.上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。请注意:过时不候哟! 四、实验报告内容 0.顺序表的插入。 1.顺序表的删除。

数字图像处理上机实验三

医学图像处理实验三1、计算图像的梯度,梯度值和梯度角。 I=imread('C:\Users\Administrator\Desktop\cat.jpg'); B=rgb2gray(I); C=double(B); e=1e-6;%10^-6 [dx,dy]=gradient(C);%计算梯度 G=sqrt(dx.*dx+dy.*dy);%梯度幅值 figure,imshow(uint8(G)),title('梯度图像'); pha=atan(dy./(dx+e)) figure,imshow(pha,[]) 图 1

图 2 梯度角图 2、计算图像边缘检测,用滤波器方式实现各种算子。 (1)Roberts算子 clear; I=imread('C:\Users\admin\Desktop\mao.jpg'); B=rgb2gray(I); [m,n]=size(B); nB=B; robertsnum=0;%经roberts算子计算得到的每一个像素的值robertsthreshold=0.6;%设定阈值 for j=1:m-1;%进行边界提取 for k=1:n-1 robertsnum=abs(B(j,k)-B(j+1,k+1))+abs(B(j+1,k)-B(j,k+1)); if(robertsnum>robertsthreshold) nB(j,k)=255; else nB(j,k)=0; end end end subplot(1,2,1);imshow(B);title('原图'); subplot(1,2,2);imshow(nB,[]);title('Robert算子处理后的图像');

软基第三次上机实验报告

软基第三次上机实验报告 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);

《大学计算机基础》上机实验报告

《大学计算机基础》 上机实验报告 班级: 姓名: 学号: 授课教师: 日期:年月日

目录 一、Windows操作系统基本操作......................................................... - 1 - 二、Word文字处理基本操作 .............................................................. - 4 - 三、Excel电子表格基本操作 ............................................................ - 6 - 四、PowerPoint幻灯片基本操作....................................................... - 8 - 五、网页设计基本操作 ...................................................................... - 9 - 六、Access数据库基本操作 ............................................................ - 10 - 上机实验作业要求: ○1在实验报告纸上手写并粘贴实验结果; ○2每人将所有作业装订在一起(要包封面); ○3全部上机实验结束后全班统一上交; ○4作业内容不得重复、输入的数据需要有差别。

实验名称一、Windows操作系统基本操作 实验目的1、掌握Windows的基本操作方法。 2、学会使用“画图”和PrntScr快捷键。 3、学会使用“计算器”和Word基本操作。 实验内容1、日历标注 利用“画图”和Word软件,截取计算机上日历的图片并用文字、颜色、图框等标注出近期的节假日及其名称,并将结果显示保存在下面(参考下面样图)。 运行结果是: 主要操作步骤是: 2、科学计算 利用“计算器”和Word软件,计算下列题目,并将结果截图保存在下面(参考样图)。 ○1使用科学型计算器,求8!、sin(8)、90、74、20、67、39、400、50.23、ln(785)的平均值、和值,并用科学计数法显示。 运行结果是: ②将以下十、八、十六进制数转换为二进制数:(894.8125)10、(37.5)8、(2C.4B)16 运行结果是:(需要下载使用“唯美计算器”) ○3计算下列二进制数的加法与乘法:101.1+11.11;1101*1011 运行结果是:(参考样图) 写出主要操作步骤: 3、实验心得体会

R语言上机实验三

理学院实验报告 班级:学号:姓名:实验编号: 实验三:概率和分布的R实现 一、实验目的与要求: 1、会用R给出常见分布的概率密度、概率、分位数和随机数。 2、会利用sample命令进行随机抽样,prod,choose命令计算概率。 3、会利用R绘制各类分布的图形。 4、会利用choose,prod命令计算古典概率。 二、实验内容: 1.从一副扑克牌(52张)中随机抽5张,求下列概率 (1) 抽到的是10,J,Q,K,A; > 4/choose(52,5) [1] 1.539077e-06 (2) 抽到的是同花顺。 > 9*choose(4,1)/choose(52,5) [1] 1.385169e-05 注:同花顺是指5张同一色牌能按从小到大连续排序,如2<3<4<5<6,3<4<5<6<7,…,10 x<-rbinom(1000,1,0.5) > x (2)用函数ifelse( )将上面随机数中的0替换成-1; > ifelse(x==0,-1,1 )

(3)用函数cumsum( )作出累积和; > y<-ifelse(x==0,-1,1 ) > cumsum(y)

(4)使用命令plot( ) 作出随机游动的示意图. > plot(cumsum(y))

3.在同一个图形中画出统计的四大分布密度曲线(dnorm, dchisq, dt, df),注意不同分布有不 同的线型、颜色和宽度,还有图形都要在同一方框中,最后用图例说明(legend)。 > curve(dnorm(x,0,1),xlim=c(-1,5),ylim=c(0,0.5),col=1,lwd=1,lty=1) > curve(dchisq(x,1),xlim=c(-1,5),ylim=c(0,0.5),lwd=2,lty=2,col=2,add=T) > curve(dt(x,1),xlim=c(0,8),ylim=c(0,0.5),lwd=3,lty=3,col=3,add=T) > curve(dt(x,1,1),xlim=c(0,8),ylim=c(0,0.5),lwd=4,lty=4,col=4,add=T) > legend('topright',c("dnorm","dchisp","dt","df"),lty=c(1,2,3,4),col=c(1,2,3,4),lwd=c(1,2,3,4)) > curve(dnorm(x,0,1),xlim=c(-1,5),ylim=c(0,0.5),col=1,lwd=1,lty=1) > curve(dchisq(x,1),xlim=c(-1,5),ylim=c(0,0.5),lwd=2,lty=8,col=2,add=T) > curve(dt(x,1),xlim=c(0,8),ylim=c(0,0.5),lwd=5,lty=3,col=7,add=T) > curve(dt(x,1,1),xlim=c(0,8),ylim=c(0,0.5),lwd=4,lty=4,col=4,add=T) > legend('topright',c("dnorm","dchisp","dt","df"),lty=c(1,8,3,4),col=c(1,2,7,4),lwd=c(1,2,5,4)) > 4. 除本章给出的标准分布外, 非标准的随机变量X的抽样可通过格式点离散化方法实现.

数据库上机实验报告

数据库实验 (第三次) 题目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. 试比较连接查询和嵌套查询 有些嵌套查询是可以用连接来代替的,而且使用连接的方式,性能要比 嵌套查询高出很多 当查询涉及多个关系时,用嵌套查询逐步求解结构层次清楚,易于构造,具有结构化程序设计的优点。但是相比于连接运算,目前商用关系数据库管理系统对嵌套查询的优化做的还不够完善,所以在实际应用中,能够用连接运算表达的查询尽可能采用连接运算。

C程序设计上机实验报告11

C程序设计实验报告 实验名称:指针与字符串学时安排:2课时 实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 一、实验目的 1. 掌握通过指针操作字符串的方法; 二、实验设备介绍 软件需求: Visual C++ 6.0或CFree3.5以上版本 硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU 处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。 三、实验内容 1.输入一个字符串t和一个正整数m,讲t中从第m个(m小于字符串长度)字符开始的全部字符复制的字符串s中,再输出字符串s。要求用字符指针定义并调用函数strmcpy(s, t, m),它的功能是将字符串t中从第m个字符开始的全部字符复制到字符串s中。示例如下:Input a string: happy new year! Input an integers: 7 Output is: new year! 2. 编写一个函数delchar(s, c),该函数将字符串s中出现的所有c字符删除。自己定义main 函数,并在其中调用delchar(s,c)函数。D此大锅饭 3. 改正程序error08_ 4.cpp中的错误。函数strc的作用是将字符串s连接到t的尾部。在

主函数中输入两个字符串s和t,调用strc完成字符串的连接。输入输出结果如下所示:World! Hello HelloWorld! 要求把正确的代码(按规范缩进)写入报告,并以注释的方式说明错误原因。 注释示例如下: int i; /*循环控制变量不能定义为double类型*/ 4. 编程判断输入的一串字符是否为“回文”,如果是输出“Yes”,否则输出“No”。所谓“回文”,是指顺读和倒读都一样的字符串。如“XYZYX”和“xyzzyx”都是回文。 四、程序清单 第一题 #include void strmcpy(char str[],char t[],int m){ int i=0,n; char *s; s=str; for(s+=m-1;*s!=0;s++) { t[i]=*s; i++; } printf("Output is:"); for(n=0;n

上机实验三-创建数据库

上机实验三:创建数据库 1.题目 分别使用SQL Server 2005管理控制台和Transact-SQL语句,按要求创建、修改和删除用户数据库。 (1)创建数据库MYDB 数据库名为MYDB; 数据库包含一个数据文件,逻辑文件名为MYDB_data,文件的初始大 小为3MB,最大容量为10MB,自动增长时文件容量递增值为2MB; 事务日志文件的逻辑文件名为MYDB_log,文件的初始大小为5MB,最 大容量为15MB,自动增长时文件容量递增值为1MB。 (2)修改数据库 添加一个数据库文件,逻辑文件名为MYDB1_data,文件的初始大小为 2MB,最大容量为10MB,自动增长时文件容量递增值为2MB; 将事务日志文件的初始容量改为20MB,最大容量为50MB,自动增长 时文件容量递增值5MB. (3)分离数据库 (4)附加数据库 (5)删除数据库 将上述所建立的数据库删除。

2.练习 分别使用SQL Server 2005管理控制台和Transact-SQL语句,按要求创建、修改和删除用户数据库。 (1)创建数据库student 数据库名为student; 数据库包含一个主数据文件,逻辑文件名为student_data,文件的初始大 小为5MB,最大容量为15MB,自动增长时文件容量递增值为2MB; 一个次数据文件,逻辑文件名为student1_data,文件的初始大小为5MB, 最大容量为20MB,自动增长时文件容量递增值为15%; 一个事务日志文件,逻辑文件名为student_log,文件的初始大小为3MB, 最大容量为10MB,自动增长时文件容量递增值为1MB。 (2)修改数据库 向数据库中添加一个文件组studentgroup,并向该文件组中添加一个数 据库文件,逻辑文件名为student2_data,文件的初始大小为2MB,最大容量为8MB,自动增长时文件容量递增值为1MB; 将事务日志文件的初始容量改为20MB,最大容量为60MB,自动增长 时文件容量递增值为5MB; 从数据库中删除文件组studentgroup; 将数据库student改名为newstudent。 (3)分离数据库 (4)附加数据库 (5)删除数据库 将上述所建立的数据库删除。 按照课件内容,练习与数据库创建与管理有关的SQL语句。

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

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

实验一基本运算器实验 1.实验目的 (1)了解运算器的组成原理 (2)掌握运算器的工作原理 2.实验内容 输入数据,根据运算器逻辑功能表1-1进行逻辑、移位、算术运算,将运算结果填入表1-2。 表 1-1运算器逻辑功能表 表1-2运算结果表

3.实验原理 本实验的原理如图1-1所示。 运算器内部含有三个独立运算部件,分别为算术、逻辑和移位运算部件,要处理的数据存于暂存器 A 和暂存器 B,三个部件同时接受来自 A 和 B 的数据(有些处理器体系结构把移位运算器放于算术和逻辑运算部件之前,如 ARM),各部件对操作数进行何种运算由控制信号S3…S0和 CN 来决定,任何时候,多路选择开关只选择三部件中一个部件的结果作为 ALU 的输出。如果是影响进位的运算,还将置进位标志 FC,在运算结果输出前,置 ALU 零标志。ALU 中所有模块集成在一片 CPLD 中。 图 1-1 运算器原理图 逻辑运算部件由逻辑门构成,较为简单,而后面又有专门的算术运算部件设计实验,在此对这两个部件不再赘述。移位运算采用的是桶形移位器,一般采用交叉开关矩阵来实现,交叉开关的原理如图1-2所示。 图1-2中显示的是一个 4X4 的矩阵(系统中是一个 8X8 的矩阵)。每一个输入都通过开关与一个输出相连,把沿对角线的开关导通,就可实现移位功能,即: (1)对于逻辑左移或逻辑右移功能,将一条对角线的开关导通,这将所有的输入位与所使用的输出分别相连,而没有同任何输入相连的则输出连接 0。 (2)对于循环右移功能,右移对角线同互补的左移对角线一起激活。例如,在 4 位矩阵中使用‘右1’和‘左3’对角线来实现右循环 1 位。 (3)对于未连接的输出位,移位时使用符号扩展或是 0 填充,具体由相应的指令控制。使用另外的逻辑进行移位总量译码和符号判别。 运算器部件由一片 CPLD 实现。ALU 的输入和输出通过三态门 74LS245 连到 CPU 内总线上,另外还有指示灯标明进位标志 FC 和零标志 FZ。请注意:实验箱上凡丝印标注有马蹄形标记‘’,表示这两根排针之间是连通的。图中除 T4 和 CLR,其余信号均来自于 ALU 单元的排线座,实验箱中所有单元的 T1、T2、T3、T4 都连接至控制总线单元的 T1、T2、T3、T4,CLR 都连接至 CON 单元的 CLR 按钮。T4 由时序单元的 TS4 提供(时序单元的介绍见附录二),其余控制信号均由 CON 单元的二进制数据开关模拟给出。控制信号中除 T4 为脉冲信号外,其余均为电平信号,其中 ALU_B 为低有效,其余为高有效。 暂存器 A 和暂存器 B 的数据能在 LED 灯上实时显示,原理如图1-3 所示(以 A0 为例,其

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:

VB上机实验三(2012-3-26)

《Visual Basic语言》上机实验三 实验名称:数据类型、运算符和表达式 一、实验目的 1.掌握Visual Basic的数据类型和变量定义方法。 2.正确使用Visual Basic的运算符和表达式。 3.掌握Visual Basic常用函数的使用方法。 二、背景知识 1.Visual Basic的数据类型 Visual Basic提供了丰富的数据类型,所有的数据都具有数据类型,如果数据的数值和数据类型不匹配,就会出现错误或者造成内存空间的浪费。Visual Basic将数据类型分为标准数据类型和自定义类型。 标准数据类型包括数值型数据类型、非数值型数据类型和变体数据类型。其中数值型数据类型包括整型、长整型、单精度型、双精度型、货币型、字节型等;非数值类型包括日期型、逻辑型(布尔型)、字符串型和对象型数据类型。 除了以上标准数据类型外,用户还可以根据需要自定义数据类型,称为自定义类型。2.Visual Basic变量的声明 变量用来在程序运行期间临时存储数据。变量名、类型、值称为变量的三要素。变量名表示的是变量在内存中的地址,类型决定了变量在内存中的存储方式和所占内存单元的大小,值指的是变量名所对应内存单元的存储内容。 所谓声明一个变量,就是先将变量的有关信息(变量名和变量的数据类型)告诉程序。变量的声明方式有三种: (1)显式声明:用Dim、Static、Public、Private等声明语句显式声明变量及类型。(2)隐式声明:Visual Basic允许用户在编写应用程序时,不声明变量而直接使用,系统临时为新变量分配存储空间并使用。所有隐式声明的变量都是为变体类型Variant。系统根据程序中赋予变量的值来自动调整变量的类型。 (3)强制类型声明:在程序中用到的变量必须事先声明,要达到此目的,方法是在窗体模块或标准模块的“通用-声明”部分写上语句:Option Explicit,也可以在“工具”菜单中选取“选项”命令,然后在打开的对话框中单击“编辑器”选项卡,再复选“要求变量声明”选项,这样系统就会在新模块中自动插入Option Explicit语句。 3.运算符及优先级 (1)不同类型运算符优先级别如下: 算术运算符>字符串运算符>关系运算符>逻辑运算符 (2)相同类型运算符优先级别如下: ①算术运算符:乘方(^)>负号(-)>乘除(*、/)>整除(\)>求余(Mod)>加减(+、-) ②字符串运算符:优先级别相同 ③关系运算符:所有关系运算符优先级别相同 ④逻辑运算符:逻辑非(Not)>逻辑与(And)>逻辑或(Or) 4.Visual Basic的表达式 表达式是指用运算符或圆括号将运算元素连接起来的一个有意义的式子。 (1)表达式的类型

C上机实验报告 实验四

精品文档 实验四数组、指针与字符串 1.实验目的 1.学习使用数组 2.学习字符串数据的组织和处理 3.学习标准C++库的使用 4.掌握指针的使用方法 5.练习通过Debug观察指针的内容及其所指的对象的内容 6.联系通过动态内存分配实现动态数组,并体会指针在其中的作用 7.分别使用字符数组和标准C++库练习处理字符串的方法 2.实验要求 1.编写并测试3*3矩阵转置函数,使用数组保存3*3矩阵。 2.使用动态内存分配生成动态数组来重新完成上题,使用指针实现函数的功能。 3.编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。 4.使用string类定义字符串对象,重新实现上一小题。 5.定义一个Employee类,其中包括姓名、街道地址、城市和邮编等属性,以及change_name()和display()等函数。Display()显示姓名、街道地址、城市和邮编等属性,change_name()改变对象的姓名属性。实现并测试这个类。 6.定义包含5个元素的对象数组,每个元素都是Employee类型的对象。 7. (选做)修改实验4中的选做实验中的people(人员)类。具有的属性如下:姓名char name[11]、编号char number[7]、性别char sex[3]、生日birthday、身份证号char id[16]。其中“出生日期”定义为一个“日期”类内嵌对象。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、聚集。在测试程序中定义people类的对象数组,录入数据并显示。 3.实验内容及实验步骤 1.编写矩阵转置函数,输入参数为3*3整形数组,使用循环语句实现矩阵元素的行列对调,注意在循环语句中究竟需要对哪些元素进行操作,编写main()函数实现输入、输出。程序名:lab6_1.cpp。 2.改写矩阵转置函数,参数为整型指针,使用指针对数组元素进行操作,在main()函数中使用new操作符分配内存生成动态数组。通过Debug观察指针的内容及其所指的对象中的内容。程序名:lab6_2.cpp。 3.编程实现两字符串的连接。定义字符数组保存字符串,在程序中提示用户输入两个字符串,实现两个字符串的连接,最后用cout语句显示输出。程序名:lab6_3.cpp。用cin实现输入,注意,字符串的结束标志是ASCII码0,使用循环语句进行字符串间的字符拷贝。

管理信息系统上机实验报告实验三 账务处理

实验三账务处理 1、打开入管理信息系统教学演示软件,进入账务处理系统如下图: 2、点击“数据结构”按钮查看数据结构如图示: 3、点击“录入凭证”,录入以下数据, 购入材料—新闻纸10吨,买价72000元,进项税额12240元,搬运费200元,以银行存款—建设银行支付价款,料已入库; 通过工商银行预付某工厂购9吨新闻纸款61690元; 收到晨光印刷厂发来材料—铜板纸10吨,买价46000元,进项税额7820元,料已入库,款暂欠。 以现金支付采购人员差旅费1690元,按材料买价分摊; 根据以上发生的业务制作凭证,在实验报告上,记录制作的凭证数据,并写上各科目的编号。 借:材料—新闻纸72200元

应交税金12240元 贷:银行存款—建设银行84440元 借:预付账款61690元 贷:银行存款--工商银行61690元 借:材料—铜板纸46000元 应交税金7820元 贷:应付账款53820元 借:材料1690元 贷:现金1690元 将以上会计分录录入后截图如下: 4、按Ctrl+W键退出,回到原始界面,再单击“浏览账薄”,查看明细账。 5、将现金改为银行存款—建设银行,将银行存款改为应收账款,截图如下:

6、按Ctrl+W键退出,回到原始界面,再单击“汇总报表”,查看报表。 7、浏览结束后,按退出键回到原界面后,点击“源程序“,截图如下;

8、浏览过后,按退出键结束程序。 9、实验心得:通过账务系统的使用和处理相关信息可知,该系统可以解决企业,工厂在财务上面关于记账,借贷关系的明确的信息,使公式财务状况一面了然,很清晰的被分 析人看明白,也能增加在市面上的透明性。

软件工程实验报告第三次

实验报告 课程名称:软件工程实验名称:用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”进入该软件。

相关主题