C#实验报告解析.doc_第1页
C#实验报告解析.doc_第2页
C#实验报告解析.doc_第3页
C#实验报告解析.doc_第4页
C#实验报告解析.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学 生 实 验 报 告(理工类)课程名称:C#程序设计实验 专业班级:11计算机科学与技术(单) 学生学号: 1105201022 学生姓名: 姜飞 所属院部: 信息技术学院 指导教师: 蔡群 20 13 20 14 学年 第 1 学期 金陵科技学院教务处制实验项目名称:C#概述 实验学时: 2 同组学生姓名: 实验地点: 1416 实验日期: 实验成绩: 批改教师: 批改时间: 1、 实验目的1、 熟悉Visual Studio.NET2010的基本操作方法。2、 掌握了C#应用程序的基本操作过程。3、 掌握简单窗体控件:Label、TextBox和Button的基本用法。4、 初步理解C#程序的特点。2、 实验要求1、 熟悉Windows系统的基本操作。2、 认真阅读本章相关内容,尤其是案例。3、 实验前进行程序设计,完成源程序的编写任务。4、 反复操作,直到不需要参考教材、能熟练操作为止。3、 实验设备及环境设备:奔腾4及奔腾4以上计算机环境:Visual Studio .NET 20104、 实验任务1、设计一个简单的C#控制台应用程序,逐行显示自己的学号、姓名、专业等信息。2、设计一个C# Windows窗体应用程序,实现个人信息(包括学号、姓名、性别、年龄、专业等)的输入操作。5、 核心代码1、namespace 11class Program static void Main(string args) Console.WriteLine(my number is:1105201022); Console.Write(n); Console.WriteLine(my name is:姜飞);Console.Write(n); Console.WriteLine(my major is:计算机); Console.Write(n); Console.Read();实验结果:my number is:1105201022my name is:姜飞my major is:计算机2、private void btnConfirm_Click(object sender,EventArgs e)MessageBox.Show(”学号:”+txtNumber.Text + ”,姓名:”+txtName.Text +”,性别:”+txtSex.Text +”,年龄:”+txtAge.Text +”,专业:”+txtMajor.Text):实验结果:学号:1105201022 姓名:姜飞性别:女年龄:21专业:计算机科学与技术6、 实验体会本次实验是初次接触c#程序设计,感觉很陌生,但在实验过程中,却也体会到了很多乐趣。例如对c#中输入输出的方法不熟练,经常把write和writeline等用错地方,但随着语句越写越多,也会发现其实C#编程还是很方便很有意思的。另外本次实验,我掌握了简单窗体控件:label、textbox、button的基本用法等,在以后的实验中,我觉得会更加有趣,学到的东西也会越来越丰富。实验项目名称:C#程序设计基础 实验学时: 2 同组学生姓名: 实验地点: 1416 实验日期: 实验成绩: 批改教师: 批改时间: 一、实验目的1、理解C#的值类型、常量和变量的概念。2、掌握C#常用运算符以及表达式的运行规则。3、了解C#的引用类型,理解数据类型转换、装箱和拆箱的区别。2、 实验要求1、 熟悉Visual Studio.NET2010的基本操作方法。2、 认真阅读本章相关内容,尤其是案例。3、 实验前进行程序设计,完成源程序的编写任务。4、 反复操作,直到不需要参考教材、能熟练操作为止。3、 实验设备及环境设备:奔腾4及奔腾4以上计算机环境:Visual Studio .NET 20104、 实验任务1、设计一个简单的Windows应用程序,在文本框中随意输入一个日期,单击“确定”按钮时显示“这一天是星期几”。2、设计一个简单的计算器,实现两个数的加、减、乘、除、求幂等计算。3、设计一个简单的Windows程序,输入多个数字,然后排序并输出。5、 核心代码1、namespace _21 public partial class Form1 : Form public Form1()InitializeComponent();enum Weekday 星期天,星期一,星期二,星期三,星期四,星期五,星期六 ;private void button1_Click(object sender, EventArgs e) DateTime dt = Convert.ToDateTime(textDate.Text); Weekday wd = (Weekday)dt.DayOfWeek; lab.Text = 这一天是+wd+.;实验结果:在文本框中输入2013-11-14,则显示:这一天是星期四。2、private void button1_Click(object sender, EventArgs e) double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); label3.Text += a + 加 + b + 的和是 ; label3.Text += a + b+.; private void button2_Click(object sender, EventArgs e) double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); label3.Text += a + 减 + b + 的差是; label3.Text += a - b + .; private void button3_Click(object sender, EventArgs e) double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); label3.Text += a + 乘 + b + 的积是; label3.Text += a * b + .; private void button4_Click(object sender, EventArgs e) double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); label3.Text += a + 除 + b + 的商是; label3.Text += a /b + .; private void button5_Click(object sender, EventArgs e) double a = Convert.ToDouble(textBox1.Text); double b = Convert.ToDouble(textBox2.Text); label3.Text += a + 的 + b + 次方是; label3.Text += Math.Pow(a, b) + .; 实验结果: a:3 b:3 3加3的和是6 3减3的差是0 3乘3的积是9 3除3的商是1 3的3次方是273、float a = new float5;int i=0;private void btnAdd_Click(object sender ,EventArgs e)ai = Convert.ToSingle(txtNumber.Text);lblShow.Text + = ai + “”; i+;private void btnSort_Click(object sender ,EventArgs e)Array.Sort(a);lblShow.Text + =”n排序之后为:”;lblShow.Text + =a0+” ”+a1+” ”+a2+” ”+a3+” ”+a4;实验结果:输入5个数据:2.5 4.8 1.7 3.3 4.1,则输出:排序之前为:2.5 4.8 1.7 3.3 4.1排序之后为:1.7 2.5 3.3 4.1 4.86、 实验体会通过本次C#实验,我对C#Windows应用程序有了进一步的了解,比上次实验更加熟练地运用窗体中的label、button和txtBox等控件。并且了解了C#的值类型、常量和变量的概念,掌握了C#常用运算符以及表达式的运行规则等。而且自己设计窗体界面,也让我对C#的实验更加感兴趣。实验项目名称:C#程序的流程控制 实验学时: 2 同组学生姓名: 实验地点: 1416 实验日期: 实验成绩: 批改教师: 批改时间: 一、实验目的1、理解分支和循环的逻辑意义。2、掌握C#的if、switch分支语句的使用方法。3、掌握C#的while、do/while、for、foreach等循环语句的使用方法。2、 实验要求1、熟悉Visual Studio.NET2010的基本操作方法。2、认真阅读本章相关内容,尤其是案例。3、实验前进行程序设计,完成源程序的编写任务。4、反复操作,直到不需要参考教材、能熟练操作为止。3、 实验设备及环境设备:奔腾4及奔腾4以上计算机环境:Visual Studio .NET 20104、 实验任务1、修改上机实验2的第三个实验任务,将输入的n个数字,通过for语句排序并输出。注意,不允许使用Array.Sort()方法排序。2、设计一个Windows应用程序,实现如下功能。(1)输入学生姓名和考试成绩并保存到结构体数组中。(2)使用foreach语句最高分并输出对应的姓名。3、设计一个Windows应用程序,输入一行字符,检索是否存在重复的双字词汇,输出重复的次数。五、核心代码1、namespace _31 public partial class Form1 : Form public Form1() InitializeComponent(); double a = new double50; int i = 0; private void button1_Click(object sender, EventArgs e) ai = Convert.ToDouble (textBox1.Text); label2.Text += ai + ; i+; private void button2_Click(object sender, EventArgs e) double t; int j = 0,k; label3.Text += n排序之后为:; for(j=0;ji-1;j+) for (k=j+1;k ak) t = aj; aj = ak; ak = t; for (j = 0; j i; j+) label3.Text += aj + ; 实验结果:输入5个数据:2.5 4.8 1.7 3.3 4.1,则输出:排序之前为:2.5 4.8 1.7 3.3 4.1排序之后为:1.7 2.5 3.3 4.1 4.82、namespace -32 public partial class Form1 : Form public Form1()InitializeComponent(); struct student public string name; public float score; student persons = new student10; int i = 0; private void button1_Click(object sender, EventArgs e) = textBox1.Text; personsi.score = Convert.ToSingle(textBox2.Text); lblShow.Text += + + personsi.score+ ; i+; private void button2_Click(object sender, EventArgs e) float t=0; string j=null ; foreach (student c in persons) if (t c.score) t = c.score; j = ; lblShow.Text = 最高分: + j + + t; 实验结果:输入:张三65添加 李四78添加 王二 84 添加 钱一 80 则显示学生成绩:张三65李四78王二 84钱一 80 最高分:王二 84 3、 private void button1_Click(object sender, EventArgs e) int n = 0; string words = new string10; int times = new int10; for (int i = 0; i textBox1.Text.Length - 2; i+) bool isSame = false; string source = textBox1.Text.Substring(i, 2); int j = i + 2; while (j textBox1.Text.Length - 2) string target = textBox1.Text.Substring(j, 2); if (source = target) timesn+; if (Array.IndexOf(words, target) = -1) isSame = true; wordsn = target; j+; if (isSame) n+; Label1.Text = string.Format(一共有0个重复的词汇!n其中,, n); for (int i = 0; i = 60) second = second % 60; minute+; if (minute = 60) minute = minute % 60; hour+; 实验结果:在text1、text2、text3中分别输入21、49、25,则获取当前时间21:49:25,按+即加1秒,隔几秒不点+后,再按+则加相应的值。3、namespace _43 class Program private static StudentList stulist;static void Main(string args); stulist=new StudentList(); Student stu1=new Student(“1105303001”,”zhangsan”,90,85,89); Student stu2=new Student(“1105303002”,”lisi”,75,85,94); Student stu3=new Student(“1105303003”,”wanger”,90,79,80); Student stu4=new Student(“1105303004”,”qianyi”.30,50,55); Student stu5=new Student(“1105303005”,”sunwu”,45,67,38); stulist.Add(stu1); stulist.Add(stu2); stulist.Add(stu3); stulist.Add(stu4); stulist.Add(stu5); string str; str=Console.ReadLine(); if(str.Equal(“语文”)|str.Equals(“数学”)|str.Equals(“英语”) stulist.searchSubject(str); else stulist.searchName(str); Console.ReadLine();Class Student private string number; private string name; private float chinese; private float math; private float english; public Student(string number,string name,float chinese,float math,float english) this.number=number; =name; this.chinese=chinese; this.math=math; this.english=english; public string Number get return this.number; public string Name get return ; public float Chinese set this.chiese=value; get return this.chinese; public float Math set this.math=value; get return this.math; public float English set this.english=value; get return this.english; public float Total get return chinese+math+english; Class StudentList private Listlist=new List(); private float chieseAver; private float mathAver; private float englishAver; private float totalAver; public void Add(Student s) this.list.Add(s); public float ChineseAver get float s=0; foreach(Student stu in list) s+=stu.Chinese; chineseAver=s/list.Count; return chineseAver; public float MathAver get float s=0; foreach(Student stu in list) s+=stu.Math; mathAver=s/list.Count; return mathAver; public float EnglishAver get float s=0; foreach(Student stu in list) s+=stu.English; englishAver=s/list.Count; return englishAver; public float TotalAver get float s=0; foreach(Student stu in list) s+=stu.Total; totalAver=s/list.Count; return totalAver; public void searchName(string name) foreach(Student stu in list) if(stu.Name.Equals(name) Console.WriteLine(“学号:0,姓名:1,语文:2,数学:3,英语:4”,stu.Number,stu.Name,stu.Chinese,stu.Math,stu.English); public voic searchSubject(string subject) switch(subject) case”语文”; float max=0; foreach(Student stu in list) if(maxstu.Chinese) max=stu.Chinese; if(stu.Chinese60) Console.WriteLine(string.Format(“学号:”+stu.Number+”姓名:0,语文:1”,stu.Name,stu.Chinese); Console.WriteLine(“最高分0”,max); break; case”数学”; float max1=0; foreach(Student stu in list) if(max1stu.Math) max1=stu.Math; if(stu.Math60) Console.WriteLine(string.Format(“学号:”+stu.Number+”姓名:0,语文:1”,stu.Name,stu.Math); Console.WriteLine(“最高分0”,max1); break; case”英语”; float max2=0; foreach(Student stu in list) if(max2stu.English) max2=stu.English; if(stu.English60) Console.WriteLine(string.Format(“学号:”+stu.Number+”姓名:0,语文:1”,stu.Name,stu.English); Console.WriteLine(“最高分0”,max2); break; 实验结果:输入:zhangsan之后,按查询,则显示:264六、实验体会 本次实验主要是围绕对象、类、构造和析构函数的,而之前在其它语言中我们也学习过,这次实验让我更加理解面向对象的概念,掌握了C#的定义类和创建对象的方法,理解了构造函数和析构函数的作用机制。实验项目名称:面向对象的高级程序设计 实验学时: 2 同组学生姓名: 实验地点: 1416 实验日期: 实验成绩: 批改教师: 批改时间: 一、实验目的1、区别静态类与非静态类,掌握静态字段、静态方法和静态构造函数的定义方法。2、理解类的继承性与多态性,掌握其应用方法。3、理解抽象类、接口的概念,掌握抽象类与接口的定义及使用方法。4、理解分部类和命名空间的概念,掌握分部类和命名空间的使用方法。二、实验要求1、熟悉Visual Studio.NET 2010 的基本操作方法。2、认真阅读本章相关内容,尤其是案例。3、实验前进行程序设计,完成源程序的编写任务。4、反复操作,直到不需要参考教材、能熟练操作为止。三、实验设备及环境设备:奔腾4及奔腾4以上计算机环境:Visual Studio .NET 2010四、实验任务1、设计一个Windows应用程序,在该程序中首先构造一个学生基本类,再分别构造小学生、中学生、大学生等派生类,当输入相关数据,单击不同的按钮(“小学生”、“中学生”、“大学生”)时将分别创建不同的学生对象,并输出当前的学生总人数,该学生的姓名、学生类型和平均成绩。要求如下:(1)每个学生都有的字段为姓名、年龄。(2)小学生的字段还有语文、数学,用来表示这两科的成绩。(3)中学生在此基础上增加英语成绩。(4)大学生分为必修课和选修课两项成绩。(5)学生类提供方法来统计自己的总成绩并输出。(6)通过静态成员自动记录学生总人数。(7)成员初始化能通过构造函数完成。2、设计一个Windows应用程序,在该程序中定义平面图形抽象类和其派生类圆、矩形和三角形。该程序实现的功能包括:输入相应图形的参数,如矩形的长和宽,单击相应的按钮,根据输入参数创建图形类并输出该对象的面积。3、声明一个接口IPlayer,包含5个接口方法:播放、停止、暂停、上一首和下一首。设计一个Windows应用程序,在该程序中定义一个MP3播放器类和一个AVI播放器类,以实现该接口,最后创建相应类的实例测试程序,如果单击AVI按钮后,再单击“播放”按钮则应显示“正在播放AVI视频!”。五、核心代码1、控件属性设置控件属性设置Label1姓名:Button1小学生Label2年龄:Button2中学生Label3语文/必修课:Button3大学生Label4数学/选修课:Label6Label5英语:public abstract class Student protected string name; protected int age; public static int number; public Student(string name, int age) = name; this.age = age; number+; public string Name get return name; public abstract double Average(); public class Pupil : Student protected double chinese; protected double math; public Pupil(string name, int age, double chinese, double math) : base(name, age) this.chinese = chinese; this.math = math; public override double Average() return (chinese + math) / 2; public class Middle : Pupil protected double english; public Middle(string name, int age, double chinese, double math, double english) : base(name, age, chinese, math) this.chinese = chinese; this.math = math; this.english = english; public override double Average() return (chinese +ma

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论