




已阅读5页,还剩26页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据结构实验报告人力资源 11中国矿业大学 管理学院2014年11月目 录实验一 KFC点餐结账程序1实验二 运算符与表达式的使用3实验三 判断输入年份是否为闰年5实验四 switch语句的使用7实验五 循环的嵌套打印九九乘法表9实验六 对用户输入的整数进行排序的程序11实验七 运算符与表达式的使用13实验八 windows基本控件编程19实验九 运算符与表达式的使用26数据结构实验报告实验一 KFC点餐结账程序(实验时间:2014-9-10)(一) 实验目的 熟悉Microsoft Visual Studio2013的基本操作,以肯德基点餐结账程序为例,初步了解代码的使用方法。(二) 实验内容与步骤1.操作步骤打开Visual Studio 2013,依次选择“文件”“新建”“项目”,在对话框中输入项目名称、位置及解决方案名称等,完成创建。2.源代码(关键代码) Console.WriteLine(欢迎来到肯德基!); Console.WriteLine(目前为您提供:); Console.WriteLine(1.黄金烤鸡腿堡-9元); Console.WriteLine(2.原味鸡腿堡-7元); Console.WriteLine(3.老北京鸡肉卷-8元); Console.WriteLine(4.薯条-5元); Console.WriteLine(请输入序号选择所需购买的餐品:); string choice = Console.ReadLine(); Console.WriteLine(请输入购买的份数:); string count = Console.ReadLine(); if (choice =1) Console.WriteLine(您购买了0份黄金炸鸡腿堡,需付1元。, count, int.Parse(count) * 9); ; if (choice = 2) Console.WriteLine(您购买了0份原味鸡腿堡,需付1元。, count, int.Parse(count) * 7); ; if (choice = 3) Console.WriteLine(您购买了0份老北京鸡肉卷,需付1元。, count, int.Parse(count) * 8); ; Console.WriteLine(choice); Console.ReadKey();3.输出结果窗口输入代码后点击页面上方的“启动”,输出结果。 (三) 实验结果与心得以前很少接触代码,刚开始上机接触代码的时候,真的觉得好麻烦,有太多要注意的东西,有一点格式不正确就出不来结果,所以得一遍一遍的试,但当我第一次运行代码成功时,那种喜悦真的是无法言表的,看着自己输入的代码运行出来的每一句话,感觉很神奇,很有趣,于是乐此不疲的试验了好多次。原来觉得枯燥无味的代码在现在觉得也是很有趣的,我觉得以后的课程学下去应该也会很有趣吧。实验二 运算符与表达式的使用(实验时间:2010-9-17)(一) 实验目的 使用C#编写一个小的控制台应用程序的源代码,主要练习C#中自增自减运算符的使用和运算符的优先级的确定。(二) 实验内容与步骤1.操作步骤启动VS2013,新建一个C#的控制台应用程序,项目名称为:Exam2。为了提高实验的独立性,我们将此实验中的任务编写到一个代码中,通过输入编号来选择要执行的任务。2.源代码 Console.WriteLine(实验二:); Console.WriteLine(1.自增自减运算符的使用。); Console.WriteLine(4.运算符的优先级的确定。); do Console.WriteLine(请选择要执行的序号:); var choice = Console.ReadLine(); int a = 0; int b = 0; switch (choice) case 1: Console.WriteLine(+a = 0, +a); Console.WriteLine(b+ = 0, b+); Console.ReadKey(); break; case 4: double g; a+; b+; g = 1 + a+ * 3.0 / b- - 5; Console.WriteLine(1 + a+ * 3.0 / b- - 5=0, g); Console.ReadKey(); break; case q: break ; default: Console.WriteLine(输入的序号不正确!); break; if (choice =q) break ; while (true); Console .ReadKey ();3.输出结果截图(三) 实验结果与心得今天的实验,通过练习自增自减运算符,通过代码的输入,我可以将运算符号加入代码中,然后在程序中运行出来,这是我发现平时我们在计算器中进行的加减乘除计算,原来是通过这样编写代码进行的,这样我在使用计算机的时候就能更加清楚地知道其中的原理了。31实验三 判断输入年份是否为闰年(实验时间:2010-9-21)(一) 实验目的 使用C#编写一个小的控制台或windows应用程序的源代码,主要练习C#中的if语句的使用。(二) 实验内容与步骤1.操作步骤 定义ushort类型变量year,用来保存用户输入的年份. 定义bool类型变量isLeapYear,用来保存判断输入年份是否为闰年的逻辑结果. 在屏幕中输出文本”请输入年份: “,提示用户输入年份. 从键盘读入用户输入的年份,并把输入的年份保存在变量year中,注意进行适当的类型转换(即把数字字符串转换在ushort类型) 使用if语句对用户输入的年份year进行判断,如果输入的年份是闰年,则把变量isLeapYear的值置为true,否则置为false 输出变量isLeapYear的值.2.源代码 Console.WriteLine(实验三:); Console.WriteLine(1.判断输入年份是否为闰年。); do Console.WriteLine(请在每次输入年份前输入序号1以运行程序,输入q将退出:); var choice = Console.ReadLine(); switch (choice) case 1: Console.WriteLine(请输入一个年份:); var year = int.Parse(Console.ReadLine(); if (year % 400 = 0 | (year % 4 = 0 & year % 100 != 0) Console.WriteLine(0是闰年!, year); else Console.WriteLine(0不是闰年!, year); break; case q: break; default: Console.WriteLine(输入的序号不正确!); break; if (choice.ToLower() = q) return; while (true);3.输出结果截图(三) 实验结果与心得今天的实验,是让我们判断输入的年份是否为闰年,首先定义变量类型,然后用判断句型循环,这样在代码中就有了一个循环语句和判断框,当输入年份为闰年时系统会输出年份,当不是闰年时则系统会提醒输入的年份不正确,我们平时的错误操作被提示的原理大概也和这个差不多吧。实验四 switch语句的使用(实验时间:2010-9-28)(一) 实验目的 使用C#编写一个控制台或windows应用程序,用来实现对输入的成绩进行评定。主要考察对switch语句的使用。(二) 实验内容与步骤1.操作步骤 打开VS2008,新建一个语言为C#的控件台应用程序,项目名称为Exam4。 在Main函数中编写代码来完成以下功能: 将以下文本输出到控制台:“请输入分数: ”。 读取用户输入的结果并保存在字符串变量scoreText中。 把输入的数字字符串成绩scoreText转换成float类型,并保存在float型的score变量中,转换的方法为: float score = float.Parse(scoreText); 定义byte型变量level来保存成绩等级,并使用如下方法计算level的值:level = (byte)(score / 10); 使用switch语句,根据输入成绩的等级level,进行相应的操作:l 当level的值为9、10时,输出“成绩优秀!”l 当level的值为7、8时,输出“成绩良好!”l 当level的值为6时,输出“成绩及格!”l 其它情况则输出“不及格!”2.源代码 Console.WriteLine(实验四:); Console.WriteLine(1.判断成绩等级); do Console.WriteLine(请输入分数:); string scoreText = Console.ReadLine(); float score = float.Parse(scoreText); byte level = (byte)(score / 10); switch (level) case 9: Console.WriteLine(成绩优秀); break; case 10: Console.WriteLine(成绩优秀); break; case 8: Console.WriteLine(成绩良好); break; case 7: Console.WriteLine(成绩良好); break; case 6: Console.WriteLine(成绩及格); break; default: Console.WriteLine(不及格); break; while (true);3.输出结果截图(三) 实验结果与心得今天的课程主要目的是使用C#编写一个控制台或windows应用程序,用来实现对输入的成绩进行评定。主要考察对switch语句的使用。通过这个代码的应用,我们可以将输入的分数进行分等级,将所有的分数分为良好优秀等等级,对我们整理汇总很有帮助。实验五 循环的嵌套打印九九乘法表(实验时间:2010-9-28)(一) 实验目的 使用C#编写一个控制台应用程序或windows程序,主要考察对三种循环语句的使用。(二) 实验内容与步骤1.操作步骤 打开VS2008,新建一个语言为C#的控件台应用程序,项目名称为Exam5。 在Main函数中编写代码来完成以下功能:使用for 循环的嵌套形式计算并输出九九乘法表,输出的格式如下:1 * 1 = 11 * 2 = 2 2 * 2 = 41 * 3 = 3 2 * 3 = 6 3 * 3 = 91 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16.9 * 9 = 81 生成并测试程序2.源代码 for (int i = 1; i = 9; i+) for (int j = 1; j = i; j+) Console.Write(i + * + j + = + i * j + t); Console.WriteLine( ); Console.ReadKey();3.输出结果截图(三) 实验结果与心得今天的实验感觉比较复杂,并不是因为难,而是实验的内容太多,输出的数据比较多,不过还好我们用的是循环嵌套语言,这样我们自己需要输入的内容其实不多,通过这样的循环嵌套语言,我们只要输入很少的内容,就能得到完整的九九乘法表,电脑的循环能省去我们很多时间与精力,真的很方便。 实验六 对用户输入的整数进行排序的程序(实验时间:2010-10-8)(一) 实验目的 使用C# 编写一个对用户输入的整数进行排序的程序,并输出排序的结果,排序次序为升序。(二) 实验内容与步骤1.操作步骤 打开VS2008,新建一个名为Exam6-1的Console应用程序项目。 导入 System 命名空间。 定义程序的入口点。程序入口点不获取任何参数,也不返回任何值。 定义一个用来存储用户输入数据的一维数组intArray,并初始化长度为10。 创建方法来完成以下功能: 将以下文本输出控制台:“Please input numbers:”。 从控制台读取用户输入的10个数,并分存储在数组中。 使用简单的算法对用户输入的数据进行升序排序。 输出排序结果。 生成并测试程序 按”F5”键生成并运行程序。2.源代码 int intArray = new int 10; for (int i = 0; i10;i+) Console.WriteLine(Please input numbers0:,i+1); intArrayi = int.Parse (Console.ReadLine(); 升序排序(intArray); Console.ReadKey(); static void 升序排序(int intArray ) int N = intArray.Length ; for (int i=0;i N-1;i+) for (int j=0;j intArrayj+1) int T = intArrayj; intArrayj = intArrayj+1; intArrayj+1 = T ; 3.输出结果截图(三) 实验结果与心得今天的实验,我们需要使用C# 编写一个对用户输入的整数进行排序的程序,并输出排序的结果,排序次序为升序。 也就是说,对于用户输入的所有数据,我们需要将它们进行从小到大排序,这要是让我们人为来做可能需要大量的时间,然而通过电脑,只要我们小小几个代码,就能实现一样的结果,这就是代码的魅力所在。实验七 运算符与表达式的使用(实验时间:2010-10-14)(一) 实验目的 学会定义和使用C# 中的类。定义和使用C# 中的派生类。和运算符的优先级的确定。(二) 实验内容与步骤1.源代码namespace KarelCS public class HrRobot : ur_Robot public HrRobot(int street, int avenue, int direction, int beepers) : base(street, avenue, direction, beepers) public int Currentstreet get return this.street(); public int Currentavenue get return this.avenue(); /public HrRobot / / TODO: Complete member initialization / public void turnRight() turnLeft(); turnLeft(); turnLeft(); public void turnBack() turnLeft(); turnLeft(); public void turnNorth() if (direction() = 0) turnLeft(); if (direction() = 1) turnBack(); if (direction() = 2) turnRight(); public void turnSorth() if (direction() = 0) turnRight(); if (direction() = 3) turnBack(); if (direction() = 2) turnLeft(); public void smartMove() if (direction() = 1) if (street() 1) move(); if (direction() = 3) if (street() 10) move(); if (direction() = 0) if (avenue() 1) move(); public void newmove(int steps) while (steps 0) smartMove(); steps-; public void gotoCenter() (往下是“区中心”的代码) if (Currentstreet5) turnNorth(); /newmove(5 - Currentstreet); while (Currentstreet 5) turnNorth(); turnBack(); /newmove(Currentstreet - 5); while (Currentstreet 5) smartMove(); if (Currentavenue 5) turnNorth(); turnRight(); /newmove(5 - Currentavenue); while (Currentavenue 5) turnNorth(); turnLeft(); /newmove(Currentavenue - 5); while (Currentavenue 5) smartMove(); if (Currentstreet = 5 & Currentavenue = 5) System.Windows.Forms.MessageBox.Show(恭喜您到了中心点。); else System.Windows.Forms.MessageBox.Show(您不在中心点。); public void startToCircle() (往下 这是“开始”按钮的代码) turnNorth(); turnLeft(); if (Currentavenue 1) while (Currentavenue 1) smartMove(); if (Currentavenue = 1) turnNorth(); turnBack(); while (Currentstreet 1) smartMove(); if (Currentstreet = 1 & Currentavenue = 1) turnNorth(); for (int i = 9; i 0; i-) smartMove(); if (Currentstreet = 10 & Currentavenue = 1) turnNorth(); turnRight(); for (int i = 9; i 0; i-) smartMove(); if (Currentstreet = 10 & Currentavenue = 10) turnNorth(); turnBack(); for (int i = 9; i 0; i-) smartMove(); if (Currentstreet = 1 & Currentavenue = 10) turnNorth(); turnLeft(); for (int i = 9; i 0; i-) smartMove(); 2.输出结果截图(三) 实验结果与心得今天的实验,我们的目的是学会定义和使用C# 中的类。定义和使用C# 中的派生类。和运算符的优先级的确定。 在这个实验中,我们需要通过代码的设定,让图表中的机器人实现往左和往右的走动,让机器人在我们的指挥下做出相应的动作,通过这个实验的代码,我知道原来智能机器人的控制也是和我们这个代码一样的控制方法,通过一些程序语言使机器人完成各种动作。当然,只能机器人的程序代码要比我们做的这个简单很多,但是原理是相同的。实验八 windows基本控件编程(实验时间:2010-10-21)(一) 实验目的 了解windows窗体编程,掌握windows窗体基本控件的使用方法。掌握事件驱动的编程模式。 (二) 实验内容与步骤练习 1 建立一个启动窗体步骤: 首先建立一个windows项目Exam8,添加一个窗体命名为form8-1 在属性窗口中,设置FormBorderStyle 属性,选择None 选项; 设置 BackgroundImage 属性,选择相应背景; 设置 Size 属性,设置Width 和 Height 属性; 设置 StartPosition 属性,将其设置为CenterScreen 其余属性均为默认设置 在窗体上放上一个标签控件在Form1的Load事件中继续添加代码: lbl.Text = 航空售票系统; lbl.ForeColor = Color.Chocolate; lbl.BackColor = Color.Blue; Font f = new Font(黑体, 20, FontStyle.Bold); lbl.Font = f;练习 2 多选按钮步骤: 设计窗体 为第一个复选添加 Click事件代码,如下: private void checkBox1_CheckedChanged(object sender, EventArgs e) private void checkBox1_Click(object sender, EventArgs e) private void chkOption_Click(object sender, System.EventArgs e) string s = ; if(chkOptionA.Checked = true) s += chkOptionA.Text + ; if(chkOptionB.Checked = true) s += chkOptionB.Text + ; if(chkOptionC.Checked = true) s +=chkOptionC.Text + ; if(chkOptionD.Checked = true) s += chkOptionD.Text; lblUserAnswer.Text = 您的答案是:+s; private void button1_Click(object sender, EventArgs e) chkOptionA.Checked = false; chkOptionB.Checked = false; chkOptionC.Checked = false; chkOptionD.Checked = false; lblUserAnswer.Text = 请重新选择。; private void button2_Click(object sender, EventArgs e) if (chkOptionA.Checked = true) & (chkOptionC.Checked = true) & (chkOptionD.Checked = true) & (chkOptionB.Checked = false ) MessageBox.Show(答案应该是A/C/D,您的答案是对的。恭喜!); else MessageBox.Show(答案应该是A/C/D,您的答案是错的。很抱歉!下次加油吧。);练习 3 列表框按钮“”的Click事件代码: private void checkedListBox1_SelectedIndexChanged(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) for (int i = chkls待选.CheckedItems.Count - 1; i = 0; i-) lsb已选.Items.Add(chkls待选.CheckedItemsi); chkls待选.Items.Remove(chkls待选.CheckedItemsi); private void 重选_Click(object sender, EventArgs e) chkls待选.Items.Add(lsb已选.SelectedItem ); lsb已选.Items.Remove(lsb已选.SelectedItem);练习 4 窗体调用事件代码: private void label1_Click(object sender, EventArgs e) private void send_Click(object sender, EventArgs e) Form被传递 frm8 = new Form被传递(); frm8.Show(); /frm8.MdiParent = this; frm8.lsb传递.Items.Add(tbname.Text); frm8.lsb传递.Items.Add(tbemail.Text); frm8.lsb传递.Items.Add(cobview.Text); frm8.lsb传递.Items.Add(tbfeedback.Text); private void btclose_Click(object sender, EventArgs e) this.Close();练习5 在项目exam8中添窗体frm8-5,创建如下界面的窗体,四个滚动条分别控制颜色 R(红)、G(绿)、 B(蓝) ,A(透明度)的四个值。实现步骤: (1)创建界面,为控件命名,正确设置属性。其中,三个滚动条的 Min 值为 0 ,Max 为 255 , SmallChange 为 1 ,LargeChange 为 1 。 (2)定义全局变量:int alpha,red,green,blue(3)代码 private void label1_Click(object sender, EventArgs e) private void hSr_Scroll(object sender, ScrollEventArgs e) int aph = vSa.Value; int r = hSr.Value; int g = hSg.Value; int b = hSb.Value; lbl调色板.BackColor = Color.FromArgb(aph, r, g, b); lblred .Text = Convert.ToString (r); lblgreen.Text = Convert.ToString(g ); lblblue.Text = Convert.ToString(b ); lblaph.Text = Convert.ToString(aph ); private void Form6_Load(object sender, EventArgs e) vSa.Value = 50; (三) 实验结果与心得这个实验的目的是了解windows窗体编程,掌握windows窗体基本控件的使用方法。掌握事件驱动的编程模式。在这个实验中,我们坐了五个练习,分别为练习 1 建立一个启动窗体, 练习 2 多选按钮,练习 3 列表框,练习 4 窗体调用,练习5 在项目exam8中添窗体frm8-5,创建如下界面的窗体,四个滚动条分别控制颜色 R(红)、G(绿)、 B(蓝) ,A(透明度)的四个值。不断地练习使我们掌握更多。实验九 运算符与表达式的使用(实验时间:2014-11-5)(一) 实验目的 1. 熟悉ADO .NET、.NET数据提供程序以及DataSet的对象模型;2. 熟悉ADO .NET主要对象的主要方法和属性以及对象之间的关系;3. 掌握使用ADO .NET对SQL Server 2000数据库进行基本操作方法。(二) 实验内容与步骤1.操作步骤(1) 新建窗体frmDataSet;(2) 在窗体上添加按钮button1并在其Click事件中添加代码,使用SqlDataAdapter对象从Customers表中选取全部数据并填充到DataSet的Customers表中,并使用MessageBox输出所有行的CustomerID的值;(3) 在窗体上添加按钮button1并在其Click事件中添加代码,使用DataView对象从名为Customers的表中过滤Country字段为Argentina的行,并按Country字段的升序排序,使用MessageBox输出DataView中所有行的CustomerID的值;(4) 在DataSet对象的Customers表中新加一行,并更新到数据库;(5) 重新实例化SqlDataAdapter并为其指定SelectCommand属性从存储过程Top Most Expensive Products中选取数据填充到DataSet中,将结果绑定到一个DataGridView控件上。2.源代码private void button1_Click(object sender, EventArgs e) string constr = Data Source=(localdb)Projects;Initial Catalog=Northwind;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False; SqlConnection con = new SqlConnection(constr); SqlCommand cmd = new SqlCommand(); cmd
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年方大炭素新材料科技股份有限公司招聘127人笔试参考题库附带答案详解
- 2025年国网新源集团有限公司高校毕业生招聘(第二批)调剂笔试参考题库附带答案详解
- 2025年合肥公交集团有限公司驾驶员招聘180人笔试参考题库附带答案详解
- 2025年中国烟草总公司辽宁省公司人员招聘168人笔试参考题库附带答案详解
- 危险运输安全培训
- 2025内蒙古中材科技(锡林郭勒)风电叶片有限公司招聘32人笔试参考题库附带答案详解
- 危险品安全管理培训
- 地球运动与气候
- 危化安全员培训记录课件
- 嘉兴油车港安全生产培训课件
- 上海市静安区2022-2023学年高一下学期期末数学试题(解析版)
- TPM管理知识培训
- 2023年国家公务员考试申论真题及答案解析(地市级)
- 关于无梁楼盖和梁板式楼盖经济性的比较
- 第十四杂环化合物
- RB/T 306-2017汽车维修服务认证技术要求
- 《数学软件》课程教学大纲
- 《细胞工程学》考试复习题库(带答案)
- 粤教花城版小学音乐歌曲《哈哩噜》课件
- 第六讲:RCEP服务贸易与投资解读课件
- 展筋丹-中医伤科学讲义-方剂加减变化汇总
评论
0/150
提交评论