本科实验报告
课程名称:软件开发环境与工具
实验项目:CASE工具PowerDesigner的使用实验地点:
专业班级:学号:
学生姓名:
指导教师:
2013年10 月
实验名称实验一CASE工具PowerDesigner的使用
实验目的和要求
目的:
安装PowerDesigner,并了解、掌握PowerDesigner的主要功能和使用方法。
要求:
1.安装PowerDesigner。
2.了解CDM的主要设计元素和设计过程。
3.熟悉模型转换工具的使用。
4.熟悉PDM的主要设计元素和设计过程。
实验内容
设计学生住宿管理的CDM、PDM(PDM模型最好包括:1、通过CDM模型生成;2、直接建立)。
1.学生管理
(1)建立班级、院、专业CDM、PDM模型;
(2)建立学生信息CDM、PDM模型,包括学号、姓名、院、专业、性别、年级、班级、出生年月、籍贯、住宿费、押金、录入日期及宿舍编号等内容。
2.宿舍管理
建立宿舍信息CDM、PDM模型,包括有宿舍编号、宿舍名称、宿舍电话、应住人数、录入日期等栏目。
3.对学生管理、宿舍管理、班级、院、专业实体(或表)之间建立联系。
主要仪器设备台式或笔记本计算机
实验记录(写出实验内容中1,2,3的CDM图和PDM图)(可分栏或加页)
1、
CDM图
2、
CDM转换为PDM 3、
PDM图
遇到的问题和解决方法
在接触CDM图时候找不到正确的表示方法,以至于不能正确表示对象间的关系。重新分析后画出了要求的图。
心得体会
对PowerDesigner有了初步的了解,能够用PowerDesigner画一些基本的图。
实验名称实验二搭建Visual Studio开发环境,设计Windows控制台应用程序实验目的和要求
目的:
安装Visual Studio 2010,熟悉Visual Studio 2010开发环境。熟练掌握C#的语法、语句结构,并能进行控制台应用程序的编写。
要求:
1.安装Visual Studio 2010。
2.熟悉掌握C#的语法、语句结构。
3.掌握控制台应用程序的设计方法。
实验内容
1.编写控制台程序:输入矩形的长和宽,输出矩形的面积和周长。
2. 编写控制台应用程序,输入正整数n,输出 s=1+(1+2)+(1+2+3)
+…+(1+2+3+…+n)的计算结果。
3. 编写控制台应用程序,输出所有这样的三位数:这个三位数本身恰好等于其每个数字的立方和(例153=13+53+33)。
主要仪器设备台式或笔记本计算机
实验记录(写出实验内容中1,2,3的程序代码和运行结果)(可分栏或加页)
实验1:代码
namespace TEXT2_1
{
class Program
{
static void Main(string[] args)
{
int a, b;
Console.WriteLine("请输入矩形的长:");
a = int.Parse(Console.ReadLine());
Console.WriteLine("请输入矩形的宽:");
b = int.Parse(Console.ReadLine());
int s, l;
s = a * b;
l = 2 * (a + b);
Console.WriteLine("矩形的面积为:{0}",s);
Console.WriteLine("矩形的周长为:{0}",l); }
}
}
实验结果:
实验2:代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TEXT2_2
{
class Program
{
static void Main(string[] args)
{
int n = 0;
int m = 0;
long sum=0;
Console.WriteLine("请输入一个正整数:"); n = int.Parse(Console.ReadLine());
for(int i=0;i<=n;i++)
{
m+=i;
sum+=m;
}
Console.WriteLine("sum={0}", sum);
}
}
}
实验结果:
实验3:代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TEXT2_3
{
class Program
{
static void Main(string[] args)
{
int a, b, c = 0;
int i ;
for (a = 0; a <= 10; a++)
for (b = 0; b <= 10; b++)
for (c = 0; c <= 10;c++ )
{
i = 100 * a + 10 * b + c;
if( (i == a * a * a + b * b * b + c * c * c)&&i>100&&i<1000) {
Console.WriteLine("N={0}", i);
}
}
}
}
}
实验结果:
遇到的问题和解决方法
在编写第三个小实验时候,之顾着做循环,忘记限定条件,以至于输出了0、1、1000等数字,在同学的指导下添加了条件限制才得到正确的结果。
心得体会
初始时候不知道C#的基本语法,连输入输出也不会,在请教同学以后顺利编写出程序。对C#语法也有了初步的了解。
实验名称实验三掌握在Visual Studio 2010中进行Windows Form应用程序的设计方法
实验目的和要求
目的:
熟悉利用C#进行Windows窗体应用程序的设计方法,了解Windows 窗体应用程序的组成。
要求:
1.熟练掌握C#窗体和各种常用控件的属性、方法和事件。
2.掌握C#中使用各种常用控件设计界面的方法。
3.掌握C#中窗体事件处理机制。
实验内容
1. 创建一个Windows窗体应用程序,向其中添加一个窗体,实现用户登录(输入用户名和口令,假设正确的用户名/口令为zy1001_2/10011002),并给出相应的提示信息。规定用户错误输入不超过3次。
2.搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖。要求一次全搬完,问男、女、小孩各多少人?
3. 设计一个窗体,通过一个列表框向组合框中添加项。
主要仪器设备台式或笔记本计算机
实验记录(写出实验内容中1,2,3的程序代码和运行结果)(可分栏或加页)
1、
using System;
using System.Collections.Generic;
using https://www.wendangku.net/doc/6714696288.html,ponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TEXT3_1
{
public partial class Form1 : Form
{
public int count = 0;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void label1_Click(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
}
private void maskedTextBox1_MaskInputRejected(object sender, MaskInputRejectedEventArgs e)
{
}
private void button1_Click_1(object sender, EventArgs e)
{
if ((maskedTextBox1.Text == "zy1001_2") && (maskedTextBox2.Text == "10011002")) MessageBox.Show("输入正确,登录成功!");
else if((maskedTextBox1.Text != "zy1001_2") && (maskedTextBox2.Text != "10011002")) MessageBox.Show("输入错误,请重新输入!");
count++;
if (count == 3)
{
MessageBox.Show("您的错误次数已超过三次,无法登陆!");
button1.Enabled = false;
}
}
private void button2_Click_1(object sender, EventArgs e)
{
Close();
}
}
}
实验结果:2、源代码:
using System;
using System.Collections.Generic;
using https://www.wendangku.net/doc/6714696288.html,ponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TEXT3_2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click_1(object sender, EventArgs e)
{
int man, woman, child;
for (man = 0; man <= 9; man++)
{
for (woman = 0; woman <= 12; woman++)
{
child = 36 - woman - man;
if ((36 == child / 2 + 3 * woman + 4 * man) && child % 2 == 0) {
listBox1.Items.Add(man);
listBox1.Items.Add(woman);
listBox1.Items.Add(child);
}
}
}
}
}
}
实验结果:
3、源代码:
using System;
using System.Collections.Generic;
using https://www.wendangku.net/doc/6714696288.html,ponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace TEXT3_3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
if (listBox1.Text != "")
if (!comboBox1.Items.Contains(listBox1.Text)) comboBox1.Items.Add(listBox1.SelectedItem); }
}
}
实验结果:
遇到的问题和解决方法
开始时候总是显示不出来编译的提示信息,后来请教老师,问同学,才知道该怎么去显示自己编好的提示信息。是要先生成事件,再进行编译。
心得体会
做完这个实验以后,收获很大,知道了怎么编写程序,以及编写以后怎么做才可以运行,与其他语言的程序执行不同。通过做实验,基本可以独自编程了。
实验名称实验四掌握在Visual Studio 2010中进行Web应用程序的设计方法实验目的和要求
目的:
熟悉利用C#进行Web应用程序的设计方法,了解Web应用程序的组成。
要求:
1.掌握开发Web应用程序的步骤。
2.掌握常用的Web服务器控件的使用方法。
3.掌握C#中窗体事件处理机制。
4.掌握C#数据库编程的方法。
实验内容
1.实现教师信息的录入功能,并将教师信息保存在数据库中的teacher表中。教师信息由教师编号、姓名、性别、年龄、民族、职称、职务及教龄组成。设置一个简单的Web应用程序,用来输入教师信息。要求:1)进行各种信息的有效性检验(教师编号、姓名不能为空;年龄在20—65之间;教龄在0—45年之间);2)把输入的完整信息在屏幕上显示出来。(注意:民族、职称、职务通过下拉框输入;性别通过单选按钮组输入)。
2. 创建一个Web应用程序,实现用户登录,检查用户名和口令的合法性(用户的登录信息维护在数据库中的Tuser表中,该表包括两个varchar(10)的字段:username 与password字段),,并给出相应的提示信息。
主要仪器设备台式或笔记本计算机
实验记录(写出实验内容中1,2的程序代码和运行结果)(可分栏或加页)
1、实验代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
public partial class_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
}
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
}
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
}
protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string sex;
if (RadioButton1.Checked)
sex = "男";
else
sex = "女";
Label9.Text = "教师信息,编号:"+ TextBox1.Text + ",姓名:"+ TextBox2.Text + ",性别:" + sex + ",年龄:"
+ TextBox3.Text + ",民族:" + DropDownList1.Text + ",职称:" + DropDownList2.Text + ",职务:"
+ DropDownList3.Text + ",教龄:" + TextBox4.Text;
SqlConnection conn = new SqlConnection(""
);
conn.Open();
string sql = "insert into teacher values('" + TextBox1.Text + "','" + TextBox2.Text +
"','" + sex + "','" + TextBox3.Text + "','" + DropDownList1.SelectedValue + "','" +
DropDownList2.SelectedValue + "','"+ DropDownList3.SelectedValue + "','"+ TextBox4.Text + "')";
SqlCommand comm = new SqlCommand(sql, conn);
comm.ExecuteNonQuery();
comm.Dispose();
conn.Close();
}
实验结果:
数据库中的结果:
2、实验代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
public partial class_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
string username = TextBox1.Text;
string password = TextBox2.Text;
SqlConnection conn = new SqlConnection("");
conn.Open();
SqlCommand cmd = conn.CreateCommand();
https://www.wendangku.net/doc/6714696288.html,mandText = "select * from Tuser where username=@UN"; cmd.Parameters.AddWithValue("UN", username);
SqlDataReader reader = cmd.ExecuteReader();
if (reader.Read() == false)
{
Label4.Text = "查询用户不存在";
return;
}
string realpassword = reader.GetString(1);
if (password == realpassword)
{
Label3.Text = "登陆成功";
}
else
{
Label3.Text = "密码错误"; }
cmd.Dispose();
conn.Dispose();
}
}
实验结果:
遇到的问题和解决方法
初始时候,代码虽然编译没有错误,但是网页总是不能运行。后来请教老师,是因为原来的Button键过期了,导致网页不能正常运行。
心得体会
通过这次试验,更加充分的认识到C#的强大,以及在试验过程中的一些错误该怎么去避免。对今后语言的运用与代码的编写都打下了好的基础。
软件开发实验报告 篇一:软件开发实验报告 本科实验报告 课程名称:软件开发环境与工具实验报告 实验项目:CASE工具PowerDesigner的使用 实验地点:专业班级: 指导教师: XX年10月22日 本科实验报告 课程名称:软件开发环境与工具实验报告 实验项目:搭建Visual Studio开发环境,设计实验地点:致远楼B303指导教师:崔秀娟XX年9月28日 篇二:软件开发平台实验报告 课程设计报告 课程名称: 软件开发平台与工具任课教师: 姓名: 学号: 1. 引言 1.1. 课程设计项目 1.2. 背景简介从编程之初,便免不了和方法,类,接口之类的东西打交道。久而久之,自然会对此进行总结,
由此而产生了开发平台。而今中国的程序员之中,有很大一部分都是编一些企业MIS、政府MIS之类的程序。其主要工作就是对数据进行一下增删改查的操作,对MIS系统做一些基础的管理而已。软件开发平台有两种平台模式:一种是传统的C/S架构模式,一种是现在流行的B/S架构模式。B/S 架构模式是随着互联网的流行,自然又要求以互联网为基础,把这些都网络化,以实现网络资源共享,而不是传统的单机模式。这便激发了软件开发者的创造力,形成了软件开发平台的B/S架构模式(web开发平台)。对于web开发平台,我的个人理解是: 1.以web 2.0为基础,基于互联网的B/S架构的软件。它本身也是一个软件,只不过不是最终的软件产品,而是用于二次开发的软件。 2.用于实现各类业务系统,如CRM、MIS、ERP、HIS、OA 等等的开发。web开发平台本身就是一个二次开发平台,他不同于诸如eclipse等这样的开发工具,需要写大量的代码来完成各个业务模块,二次开发平台只需要设计好自己的数据结构,进行一些简单的配置、拖拉等操作就可以完成业务系统的开发。 3.能够快速的实现各种报表包括复杂的图表报表的设计制作,传统的编码式开发需要自己去编写想要的各种报表,而运用开发平台就简单多了,可以很轻松的配置出各种报表。
电子科技大学软件开发 环境实验报告 Coca-cola standardization office【ZZ5AB-ZZSYT-ZZ2C-ZZ682T-ZZT18】
本实验总体目的是,通过使用huffman编码算法从而实现文件的压缩和解压,以达到使学生掌握并灵活运用分割函数的三项原则。 五、实验内容: 本实验要求实现一个exe程序。这个程序按照huffman编码方式,同时包含了压缩功能和解压功能。用户通过以下命令进行压缩: C:\> –c uncompress_filename compress_filename 上述命令中,是程序名,-c表示要进行压缩。uncompress_filename是要压缩的文件名,可以包含路径信息,而compress_filename是压缩之后的文件名,同样可以包含路径信息。用户可以通过如下命令进行解压: C:\> –u compress_filename uncompress_filename 上述命令中,-u表示要执行解压命令。compress_filename是要解压的文件名,可以包含路径信息;uncompress_filename就是解压后所得到的文件,同样可以包含路径信息。 提示:在实现程序时,需要考虑如何存储huffman树或者编码表或者词频表等等。 本实验要求实现两个版本的程序,一是C语言版本的,二是C++版本的。对这两个版本的要求如下: 对于每一个版本的程序,需要在实验报告中给出函数调用关系图、流程处理关系 图以及它们的文字说明等内容; 对于每一个版本的程序,都需要在实验报告中给出源代码。为了便于查重,代码 中注释的比例要占到总行数的20%; C++版本的程序,需要给出类关系图。 实验报告的评分标准,包括以下几个方面: 实验报告是否规范
自学考试计算机系列课程实践性环节实验报告本 课程名称互联网软件开发及应用 实验学期 1 至 2 学年第 1 学期 年级 10级专业计算机网络及应用 学生姓名邓希良考号 010********* 指导教师 实验最终成绩 重庆大学计算机学院制
一、实验目的 锻炼和培养学生的实际操作技能和动手能力,使学生通过上机实验,加深对课堂所学理论的理解,最终达到综合锻炼和提高的目的。 二、实验内容 a) 建立一个表单,包含多个对象(文本框、密码框、单选、多选、下拉选择、多行文本输入域等),表单提交时对数据进行验证; b)建立与a)中表单对象对应的数据库和表 c)表单提交的数据在另外的页面中显示并用Session保存 d)通过Session把数据传送到下一个页面后写入到数据库中; e)从数据库中读取信息并在网页中显示出来 三、实验步骤(设计) 步骤 1 创建一个包含文本框、密码框、单选、多选、下拉选择、多行文本输入域的表单。