1、C#实习作业 信息系统开发工具课程实习 题 目:课程实习 院 系:工商管理学院 专 业:信息管理与信息系统 学 生 姓 名: 指 导 教 师: 2015年 12月 31日1.实习背景1.1 C#的发展背景C#是微软公司在2000年6月发布的一种新的编程语言,主要由安德斯海尔斯伯格(Anders Hejlsberg)主持开发,它是第一个面向组件的编程语言,其源码会编译成msil再运行。它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,并且新增了许多功能及语法糖,而且它是微软公司.NET windows网络框架的主角。C#读作C Sharp。最初它有个更酷的名字,叫做COOL。
2、微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#。在1998年,Delphi语言的设计者Hejlsberg带领着Microsoft公司的开发团队,开始了第一个版本C#语言的设计。在2000年9月,国际信息和通信系统标准化组织为C#语言定义了一个Microsoft公司建议的标准。最终C#语言在2001年得以正式发布。2000年6月26日微软在奥兰多举行的“职业开发人员技术大会”(PDC 2000)上,发表新的语言C#。C#语言取代了Visual J+,语言本身深受 Java、C 和 C+ 的影响。C#是兼顾系统开发和应用开发的最佳实用语言,并且很有可能成为编
3、程语言历史上的第一个“全能”型语言。看过这篇简史,不要把C#看成年轻后生了只要是“马拉多纳”,就早晚当“球王”。C#1.0,纯粹的面向对象。1998年底,微软正在忙于新一代COM的设计工作,COM一直是组件化开发中非常成功的一种技术;但由于它仅提供了二进制层面上的统一,因此无法将类型信息和用于支持基础平台和开发工具的信息放到组件中,Java逐步走向成熟。微软学习Java的做法,将虚拟机的概念引入到了COM领域;同时,微软提出了“元数据”的概念,用于描述组件的类型信息和工具支持信息,并决定将其放入到组件当中。2000年2月份,微软才正式将COOL语言更名为C#。据说起这个名字是因为C#开发小组的
4、人很讨厌搜索引擎,因此把大部分搜索引擎无法识别的“#”字符作为该语言名字的一部分;还有一种说法是在音乐当中“#”是升调记号,表达了微软希望它在C的基础上更上一层楼的美好愿望当然这些都只是传说,无从考证。又是历经了一系列的修改,微软终于在2000年7月发布了C#语言的第一个版本。1.2 C#的优势(1) 完全面向对象。(2) 支持分布式,之所以有C#,是因为微软相信分布式应用程序是未来的趋势,即处理过程分布在客户机和服务器上。所以C#一出生就注定了能很好解决分布式问题。(3)跟Java类似,C#代码经过编译后,成为了一种IL(中间语言)。在运行时,再把IL编译为平台专用的代码。(4) 健壮,C#
5、在检查程序错误和编译与运行时错误一点也不逊于Java,C#也用了自动管理内存机制。(5) C#不像Java那样完全摒弃了指针和手动内存管理。C#默认情况下是不能使用指针的,程序员在有必要时可以打开指针来使用。这样可以保证编程的灵活性。(6) 安全性:C#的安全性是有.net平台来提供的。C#代码编译后成为IL语言。是一种受控代码,.net提供类型安全检查等机制保证代码是安全的。(7)可移植性:由于C#使用类似Java的中间语言机制。使得C#也跟Java类似,可以很方便的移植到其他系统。在运行时,再把中间代码编译为适合特定机器的代码。(8)解释性:C#也是一种特殊的解释性语言。(9)高性能:C#
6、把代码编译成中间语言后,可以高效的执行程序。(10)多线程:与Java类似,可以由一个主进程分出多个执行小任务的多线程。(11) 组件模式:C#很适合组件开发,各个组件可由其他语言实现的,然后集成在.net中。2.实习内容2.1课程实习一、visual studio 2010下控制台应用程序实例2.1.1实习目的1、了解所用的计算机系统的基本操作方法,学会独立使用该系统;2、了解在该系统上如何编辑、编译、连接和运行一个C#程序;3、通过运行简单的C#程序,初步了解C#程序的特点。2.1.2实习内容1、在visual studio 2010编辑环境下编辑范例中给出的程序、编译并运行。2、设定如下
7、题目要求学生独立完成:编写一个C#程序,输入a, b, c,d四个值,输出其中最小者。根据上述题目要求编程并上机调试运行。 static void Main(string args) int a = new int4; int min; for (int i = 0; i 4; i+) Console.WriteLine(请输入第0个数:,i+1); ai = Int32.Parse(Console.ReadLine(); min = a0; for (int j = 0; j 4; j+) if (aj = 0; i-) myArray29 - i = myArray1i; /一维数组逆序存
8、放 Console.WriteLine(原数组为:); foreach (int a in myArray1) Console.WriteLine(a); Console.WriteLine(逆序存放后的数组为:); foreach (int b in myArray2) Console.WriteLine(b); Console.ReadLine(); (2)枚举的使用: class Program enum month January, February, March, April, May, June, july, August, September, October, November
9、, December ; static void Main(string args) Console.WriteLine(请输入1-12的月份 :); int i = int.Parse(Console.ReadLine(); yuefen(i); public static void yuefen(int i) switch (i) case 1: Console.WriteLine(month.January); break; case 2: Console.WriteLine(month.February); break; case 3: Console.WriteLine(month.
10、March); break; case 4: Console.WriteLine(month.April); break; case 5: Console.WriteLine(month.May); break; case 6: Console.WriteLine(month.June); break; case 7: Console.WriteLine(month.july); break; case 8: Console.WriteLine(month.August); break; case 9: Console.WriteLine(month.September); break; ca
11、se 10: Console.WriteLine(month.October); break; case 11: Console.WriteLine(month.November); break; case 12: Console.WriteLine(month.December); break; Console.ReadLine(); 2.3课程实习三、C#中的类型转换、字符处理2.3.1实习目的1、掌握C#中的类型转换、字符处理;2、掌握装箱和拆箱操作。3、掌握C#中字符处理基本操作,如字符串的裁剪、替换和移除等。2.3.2实习内容在控制台下运行并调试装箱和拆箱操作、字符串的裁剪、替换和移
12、除操作。 (1)装箱与拆箱 namespace ConsoleApplication1 class Program static void Main(string args) Box(); UnBox(); Console.ReadLine(); static void Box() int i =12; object obj = i; i = 5; Console.WriteLine(obj=0,i=1, obj,i); static void UnBox() object objvalue = 20; int value = (int)objvalue; objvalue = 52; Con
13、sole.WriteLine(obj=0,i=1, objvalue, value); (2)字符串的裁剪、替换和移除namespace ConsoleApplication2 class Program static void Main(string args) String s1 = 明天你好,; String s2 = 世界你好,; String s3 = Happy Everdayr; String newString = s1.Replace(明, 世); String newString2 = s3.Substring(0,5); String newString1=s3.Remo
14、ve(0,5); String str = new String3; Console.WriteLine(从s3截取的子串:0,newString2); Console.WriteLine(s1替换后的结果:0,newString); Console.WriteLine(s1+s2=01,s1,s2); Console.WriteLine(s3删除后的结果:0,newString1); Console.ReadLine(); 2.4课程实习四、Winform编程常用控件2.4.1实习目的1、掌握Winform编程中常用控件的使用;2、掌握Winform编程中基本控件的常用属性和事件。2.4.2
15、实习内容 利用.Net自带的常用控件,设计并实现一个简单的应用程序界面,要求用到button按钮、文本框、下拉列表框等基本控件以及基本的事件方法。namespace WindowsFormsApplication1 public partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) string id = this.textBox1.Text; string name = this.textBox2.Text;
16、 string sex = ; if (radioBox1.Checked = true) sex += 男n; if (radioBox2.Checked = true) sex += 女n; string bumen = boBox1.Text; string aihao = ; if (checkBox1.Checked = true) aihao += 看书 n; if (checkBox2.Checked = true) aihao += 跑步n; if (checkBox3.Checked = true) aihao += 其他n; MessageBox.Show(员工编号:+id
17、+n员工姓名:+name+n员工性别:+sex+n员工部门:+bumen+n员工爱好:+aihao+ ); private void 男_CheckedChanged(object sender, EventArgs e) 2.5课程实习五、Winform编程实例2.5.1实习目的1、掌握Winform编程中常用控件的使用;2、掌握Winform编程中模态对话框和非模态对话框的使用。2.5.2实习内容利用.Net自带的常用控件,设计并实现一个用户登录窗体,当用户登录成功,进入系统的主界面,主界面要求实现模态窗体风格。namespace WindowsFormsApplication2 publ
18、ic partial class Form1 : Form public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) String username = textBox1.Text; String password = textBox2.Text; if (username = sad & password = 123) Form2 s = new Form2(); s.ShowDialog() private void button2_Click(object se
19、nder, EventArgs e) textBox1.Clear(); textBox2.Clear(); 2.6课程实习六、类的定义和使用2.6.1实习目的1、掌握C#中类的定义和使用;2、掌握类的继承、多态和封装特性。2.6.2实习内容根据自己对面向对象程序设计思想的理解和对C#语法的掌握,自定义几个相关类,并实现类的继承、多态和封装特性。(1)多态性(封装性):namespace PolymorphisnTest class Program static void Main(string args) Console.WriteLine(导员讲话:大家安静一下,我们现在开始开班会); C
20、lass CArray = new Class3; CArray0 = new Monitor(); CArray0.Say(班长:); CArray0.Foo(); CArray1 = new Student(); CArray1.Say(学生:); CArray1.Foo(); Console.ReadKey(); class Class string Name = ; public virtual void Say(string name) this.Name = name; public virtual void Foo() Console.WriteLine(Name + 考试周快到
21、了,任何人都不能作弊!); class Monitor:Class string Name = ; public override void Say(string name) /base.Say(name); this.Name = name; public override void Foo() Console.WriteLine(Name+大家填写一下承诺书。); class Student : Class string Name = ; public override void Say(string name) /base.Say(name); this.Name = name; pub
22、lic override void Foo() Console.WriteLine(Name + 知道了。); (2)继承性(封装性):namespace Video class Program static void Main(string args) Program p = new Program(); p.PlayVideo(); Console.ReadLine(); public void PlayVideo() VideoShow vw; vw = new DVD(); Console.WriteLine(vw.playVideo(); vw = new VCD(); Consol
23、e.WriteLine(vw.playVideo(); public abstract class VideoShow /不能被实例化 public abstract string playVideo(); public class VCD:VideoShow public override string playVideo() return 正在播放VCD; public class DVD : VideoShow public override string playVideo() return 正在播放DVD; 2.7课程实习七、.Net数据库连接操作2.7.1实习目的1、掌握.Net连
24、接数据库的基本操作;2、掌握Winform控件操作数据库的方法。2.7.2实习内容 利用对数据库知识的掌握,自定义简单的数据库和相关表格,并能利用.Net中数据控件与数据库进行连接和相应操作,实现数据展示、数据的增删改查操作。(1)数据库连接namespace WindowsFormsApplication2 public class DataBaseHelper public static SqlConnection getSqlConnection() SqlConnection conn = new SqlConnection(); try conn.ConnectionString =
25、 data source=.;initial catalog=XueSheng;persist security info=False;user id=sa;password=123456;packet size=4096; conn.Open(); conn.Close(); catch throw new Exception(无法连接数据库服务器。); return conn; #region 根据sqlstr执行增、删、改 public static int GetNonQueryEffectedRow(string sqlstr) SqlConnection conn = getSql
26、Connection(); try conn.Open(); SqlCommand cmd = new SqlCommand(sqlstr, conn); return cmd.ExecuteNonQuery(); catch (Exception ex) throw new Exception(ex.ToString(); finally conn.Close(); conn.Dispose(); /根据sqlstr执行增、删、改 #region 根据sqlstr获取DataSet public static DataSet GetDataSet(string sqlstr) SqlConn
27、ection conn = getSqlConnection(); try conn.Open(); SqlDataAdapter sda = new SqlDataAdapter(sqlstr, conn); DataSet ds = new DataSet(); sda.Fill(ds); return ds; catch (Exception ex) throw new Exception(ex.ToString(); finally conn.Close(); conn.Dispose(); | (2)学生信息的增删改查 namespace WindowsFormsApplication2 public partial class Form1 : Form public Form1() InitializeComponent(); / 学号 public string _xuehao get; set; / 姓名 p
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2