栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

.NET程序设计 实验二 C#面向对象编程

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

.NET程序设计 实验二  C#面向对象编程

计算机学院实验报告 课程名称 .NET程序设计 实验名称 实验二 C#面向对象编程 专业 软件工程

一.实验目的
1.练习如何创建类和对象。
2.练习如何为定义的类编写相应的方法。
3.练习如何通过属性访问对象中的数据。
4.练习如何创建基类及其派生类。
二.实验内容
1.编写一个控制台应用程序,定义并使用一个时间类,该类包含时、分、秒字段与属性,具有将时间增加1秒、1分和1小时的方法,具有分别显示时、分、秒和同时显示时分秒的方法。
2.编写一个控制台应用程序,程序中有两个类定义,一个是创建程序时系统自动创建的类Class1,一个是用户自定义的Student类,要求该类包含私有字段:学号(字符串)、姓名(字符串)和性别(字符),具有三个属性:学号(读写)、姓名(只读)、性别(读写),具有有参构造方法、具有同时显示学生个人信息的方法。在Class1类的Main方法中完成以下功能:
(1)从键盘上输入一个学生的个人信息(学号、姓名、性别)。
(2)修改该学生的学号和性别。
(3)打印修改前后该学生的个人信息。
3.编写一个控制台应用程序,定义和使用cylinder类,cylinder类的构造方法被传递了两个double值,分别表示圆柱体的半径和高度。用cylinder类计算圆柱体的体积,并存储在一个double变量中。在cylinder类中包含一个方法vol(),用来显示每个cylinder对象的体积。
4.编写一个控制台应用程序,程序中有两个类定义,一个是创建程序时系统自动创建的类Class1,一个是用户自定义的Student类,要求该类包含私有实例字段:学号(字符串)、姓名(字符串)、成绩(double)以及私有静态字段:学生人数、学生总成绩、学生平均成绩,具有有参构造方法、显示学生个人信息的公有实例方法和显示学生人数、总成绩及平均成绩的公有静态方法。在Class1类的Main方法中完成以下功能:
(1)从键盘上依次输入三个学生的个人信息(学号、姓名、成绩)。
(2)统计全部学生的人数、总成绩和平均成绩。
(3)打印学生们的个人信息及全部学生的人数、总成绩和平均成绩。
三、实验代码
1.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{

    class Timer
    {
       
        public int hour;
        public int minute;
        public int second;

        //构造函数
        public Timer(int hour, int minute, int second)
        {
            this.hour = hour;
            this.minute = minute;
            this.second = second;
        }

   
        public int Hour
        {
            get
            {
                return hour;
            }
            set
            {
                hour = value;
            }
        }

        public int Minute
        {
            get
            {
                return minute;
            }
            set
            {
                minute = value;
            }
        }

        public int Second
        {
            get
            {
                return second;
            }
            set
            {
                second = value;
            }
        }

     
        public void AddHour()
        {
            if (Hour < 23)
            {
                Hour++;
            }
            else
            {
                Hour = 0;
            }

        }

     
        public void AddMinute()
        {
            if (Minute < 59)
                Minute++;
            else
            {
                AddHour();
                Minute = 0;
            }
        }

    
        public void AddSecond()
        {
            if (Second < 59)
                Second++;
            else
            {
                AddMinute();
                Second = 0;
            }
        }

        public void DisplayHour()
        {
            Console.WriteLine("小时:{0}", hour);
        }


        public void DisplayMinute()
        {
            Console.WriteLine("分钟:{0}", minute);
        }

        public void DisplaySecond()
        {
            Console.WriteLine("秒钟:{0}", second);
        }

        public void DisplayTime()
        {
            Console.WriteLine("当前时间为:{0}时{1}分{2}秒", hour, minute, second);
        }

        static void Main(string[] args)
        {
            System.DateTime currentTime = new System.DateTime();
            currentTime = System.DateTime.Now;
            int hours = currentTime.Hour;
            int minutes = currentTime.Minute;
            int seconds = currentTime.Second;

            Timer hms = new Timer(hours, minutes, seconds);
            Console.WriteLine("同时显示时分秒:");
            hms.DisplayTime();
            Console.WriteLine("");

            Console.WriteLine("分别显示时分秒:");
            hms.DisplayHour();
            hms.DisplayMinute();
            hms.DisplaySecond();
            Console.WriteLine("");

            Console.WriteLine("小时加一:");
            hms.AddHour();
            hms.DisplayHour();
            Console.WriteLine("");

            Console.WriteLine("分钟加一:");
            hms.AddMinute();
            hms.DisplayMinute();
            Console.WriteLine("");

            Console.WriteLine("秒钟加一:");
            hms.AddSecond();
            hms.DisplaySecond();
            Console.WriteLine("");

            Console.Write("更改后的时间为:");
            hms.DisplayTime();
            Console.WriteLine("");

            Console.ReadLine();
           
        }
    }

}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    class Student
    {
        private string stuno;
        private string name;
        private string sex;

        public string Stuno
        {
            get
            {
                return stuno;
            }
            set
            {
                stuno = value;
            }
        }

        public string Name
        {
            get
            {
                return name;
            }
        }

        public string Sex
        {
            get
            {
                return sex;
            }
            set
            {
                sex = value;
            }
        }

        public Student(string stuno, string name, string sex)
        {
            this.stuno = stuno;
            this.name = name;
            this.sex = sex;
        }

        public void StudentInfo()
        {
            Console.WriteLine("学生信息如下");
            Console.WriteLine("学号:{0}", stuno);
            Console.WriteLine("姓名:{0}", name);
            Console.WriteLine("性别:{0}", sex);
        }
    }
    class Class1
    {
        static void Main(string[] args)
        {
            Console.WriteLine("请输入学生的学号:");
            string stuno = Console.ReadLine();
            Console.WriteLine("请输入学生的姓名:");
            string name = Console.ReadLine();
            Console.WriteLine("请输入学生的性别:");
            string sex = Console.ReadLine();

            Student student = new Student(stuno, name, sex);
            student.StudentInfo();
            Console.WriteLine();

            //修改学生信息
            student.Stuno = "164574";
            student.Sex = "男";
            
            Console.WriteLine("修改后的学生信息为:");
            student.StudentInfo();
            Console.WriteLine();
            Console.ReadLine();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication2
{
    class Cylinder
    {
        private double radius;
        private double height;
        public double Radius
        {
            get
            {
                return radius;
            }
            set
            {
                radius = value;
            }
        }
        public double Height
        {
            get
            {
                return height;
            }
            set
            {
                height = value;
            }
        }
        public Cylinder(double r, double h)
        {
            radius = r;
            height = h;
        }
        public double Volume()
        {
            return System.Math.PI * radius * radius * height;
        }
        static void Main(string[] args)
        {
            double r, h;
            Console.WriteLine("圆的半径:");
            r = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine("圆的高:");
            h = Convert.ToDouble(Console.ReadLine());
            Cylinder cylinder = new Cylinder(r, h);
            Console.WriteLine(string.Format("体积是 {0}", cylinder.Volume()));
            Console.ReadLine();
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace StudentGrade
{
    class Student
    {
        private string stuno;
        private string name;
        private double grade;
        private static int studentNumber = 0;
        private static double sumGrade = 0;
        private static double avgGrade = 0;

        public Student(string stuno,string name,double grade){
            this.stuno = stuno;
            this.name = name;
            this.grade=grade;
            studentNumber++;
            sumGrade += grade;
        }

        public void studentInfo()
        {
            Console.WriteLine("学号:{0}", stuno);
            Console.WriteLine("姓名:{0}", name);
            Console.WriteLine("成绩:{0}", grade);
        }

        public static void sumInfo()
        {
            Console.WriteLine("学生总人数:{0}", studentNumber);
            Console.WriteLine("学生总成绩:{0}", sumGrade);
            avgGrade=sumGrade/studentNumber;
            Console.WriteLine("平均成绩{0}", avgGrade);
        }
    }
    class Class2
    {
        static void Main(string[] args)
        {
            Student[] student = new Student[3];
            string stuno;
            string name;
            double grade;
            for (int i = 0; i < 3; i++)
            {
                Console.WriteLine("请输入第{0}个学生的学号", i + 1);
                stuno = Console.ReadLine();
                Console.WriteLine("请输入第{0}个学生的姓名", i + 1);
                name = Console.ReadLine();
                Console.WriteLine("请输入第{0}个学生的成绩", i + 1);
                grade = Convert.ToDouble(Console.ReadLine());
                student[i] = new Student(stuno, name, grade);
            }
            for (int j = 0; j < 3; j++)
            {
                student[j].studentInfo();
            }
            Student.sumInfo();
            Console.ReadLine();
        }
    }
}

四、实验结果
1.

3.

4.

五、实验总结

代码资源下载链接:https://download.csdn.net/download/XIARIANNUAN/13137627

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/923174.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号