zoukankan      html  css  js  c++  java
  • .NET程序设计实验2

    1.设计编写一个控制台应用程序,练习类的继承。

    (1) 编写一个抽象类 People,具有”姓名”,”年龄”字段,”姓名”属性,Work 方法。

    (2) 由抽象类 People 派生出学生类 Student 和职工类 Employer,继承 People 类,并

    覆盖Work 方法。

    (3) 派生类 Student 增加”学校”字段,派生类 Employer 增加”工作单位”字段。

    (4) 在 Student 和 Employer 实例中输出各自不同的信息。

    代码示例:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace NET_test2_1
    {
        public abstract class People{
            String name;
            String age;
            public virtual void work()
            {
                
            }
        }
        public class Student : People
        {
            String school;
            public override void work(){
                Console.WriteLine("子类学生学习中");           
        }
        }
        public class Employer : People
        {
            String workspace;
            public override void work()
            {
                Console.WriteLine("子类职工工作中");           
            }
        }
        class Program
        {
            static void Main(string[] args)
            {      
                Student a = new Student();
                Employer b=new Employer();
                a.work();
                b.work();           
                Console.ReadKey();
            }
        }
    }

    运行截图:

    2.编写一个控制台应用程序,输入正方形边长或者半径,计算其周长和面积并输出。

    (1) 编写两个接口,接口 IShape 包含三个方法:initialize, getPerimeter, getArea。分

    别进行初始化、获取边长和面积,其返回值均为 decimal。接口 IDisplayresult 显示计算结果。

    (2) 编写两个类,Square(正方形)和 Circle(圆形),实现 IShape 和 IDisplayresult

    接口。

    代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace NET_test_2_2
    {
        public interface IShape
        {
            void initialize(); //初始化
            decimal getPerimeter();//获取边长
            decimal getArea();//获取面积
        }
        public interface IDisplayresult
        {
            void showresaults();
        }
        public class square : IShape, IDisplayresult   //正方形
        {
            public decimal length;          //边长
            public void initialize()
            {
    
                Console.WriteLine("请输入正方形边长:");
                do
                {
                    length = decimal.Parse(Console.ReadLine());
                    if (length <= 0)
                    {
                        Console.WriteLine("输入错误,边长应大于0,请重新输入:");
                    }
                }while (length <= 0);
            }
            public decimal getPerimeter()    
            {
                decimal Perimeter = 4 * length;
                return Perimeter;
            }
            public decimal getArea()        
            {
                decimal Area = length * length;
                return Area;
            }
            public void showresaults()            
            {
                Console.WriteLine("正方形周长:{0}", getPerimeter());
                Console.WriteLine("正方形面积:{0}", getArea());
            }
        }                               
        public class Circle : IShape, IDisplayresult   //圆形
        {
            decimal radius; const decimal pai = 3.14M;
            public void initialize() //初始化
            {
                Console.WriteLine("请输入圆形半径:");
                do
                {
                    radius = decimal.Parse(Console.ReadLine());
                    if (radius <= 0)
                    {
                        Console.WriteLine("输入错误,半径应大于0,请重新输入:");
                    }
                }
                while (radius <= 0);
            }
            public decimal getPerimeter()    
            {
                decimal Perimeter = 2 * pai * radius;
                return Perimeter;        
            }
            public decimal getArea()        
            {
                decimal Area = pai * radius * radius;
                return Area;
            }
            public void showresaults()             
            {
                Console.WriteLine("圆形周长:{0}", getPerimeter());
                Console.WriteLine("圆形面积:{0}", getArea());
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                square square = new square(); Circle circle = new Circle();
                int i;
                Console.WriteLine("请选择图形:");
                do
                {
                    Console.WriteLine("1.正方形");
                    Console.WriteLine("2.圆形");
                    Console.WriteLine("3.退出");
                    i = int.Parse(Console.ReadLine());
                    switch (i)
                    {
                        case 1:
                            square.initialize();          
                            square.showresaults();               
                            break;
                        case 2:
                            circle.initialize();        
                            circle.showresaults();               
                            break;
                        case 3:                     
                            break;
                        default: Console.WriteLine("输入错误"); break;
                    }
                } while (i != 3);
            }
        }
    }

    运行截图:

  • 相关阅读:
    【网易官方】极客战记(codecombat)攻略-地牢-循环又循环
    【网易官方】极客战记(codecombat)攻略-地牢-焰中舞动
    【网易官方】极客战记(codecombat)攻略-地牢-祸之火焰
    【网易官方】极客战记(codecombat)攻略-地牢-囚犯
    【网易官方】极客战记(codecombat)攻略-地牢-高举之剑
    【网易官方】极客战记(codecombat)攻略-地牢-Kithgard 图书管理员
    【网易官方】极客战记(codecombat)攻略-地牢-注释中的密语
    【网易官方】极客战记(codecombat)攻略-地牢-机会有利
    linux 系统调用之文件操作
    linux系统调用之进程控制
  • 原文地址:https://www.cnblogs.com/zyj3955/p/15409640.html
Copyright © 2011-2022 走看看