第二单元练习 第一题和第十一题

第一题

animal类

class Animal
    {
        private bool m_sex;
        private int m_age;
        public bool Sex
        {
            get { return m_sex; }
            set { m_sex = value; }
        }
        public int Age
        {
            get { return m_age; }
            set { m_age = value; }
        }
        public Animal()
        {
            Sex = false;
        }
        public virtual void Introduce()
        {
            if (Sex == true)
                Console.WriteLine("This is a male Animal!");
            else
                Console.WriteLine("This is a female Animal!");
        }
    }
    class Dog : Animal
    {
        public Dog()
        {
            Sex = true;
        }
        public override void Introduce()
        {
            if (Sex == true)
                Console.WriteLine("This is a male Dog!");
            else
                Console.WriteLine("This is a female Dog!");
        }
    }
    class Cat : Animal
    {
        public override void Introduce()
        {
            if (Sex == true)
                Console.WriteLine("This is a male Cat!");
            else
                Console.WriteLine("This is a female Cat!");
        }
    }

主函数

Animal ani = new Animal();
            ani.Introduce();
            Dog dog = new Dog();
            dog.Introduce();
            Cat cat = new Cat();
            cat.Introduce();
            Console.WriteLine("按回车键结束");
            Console.ReadKey();

第十一题

animal类

class Animal
    {
        private bool m_sex;
        private string m_sound;
        public bool Sex
        {
            get { return m_sex; }
            set { m_sex = value; }
        }
        public string Sound
        {
            get { return m_sound; }
            set { m_sound = value; }
        }
        public Animal()
        {
            m_sex = false;
            m_sound = "Howl";
        }
        public virtual string Roar()
        {
            return Sound;
        }
    }
    class Dog : Animal
    {
        public Dog()
        {
            Sex = true;
            Sound = "Wow...";
        }
        public override  string Roar()
        {
            return "Dog:" + Sound;
        }
    }
    class Cat : Animal
    {
        public Cat()
        {
            Sound = "Miaow...";
        }
        public override string Roar()
        {
            return "Cat:" + Sound;
        }
    }
    class Cow : Animal
    {
        public Cow()
        {
            Sound = "Moo...";
        }
        public override string Roar()
        {
            return "Cow:" + Sound;
        }
    }

主函数

Animal animal;
            Dog dog = new Dog();
            animal = dog;
            Console.WriteLine(animal.Roar());
            Cat cat = new Cat();
            animal = cat;
            Console.WriteLine(animal.Roar());
            Cow cow = new Cow();
            animal = cow;
            Console.WriteLine(animal.Roar());
            Console.WriteLine("按回车键结束");
            Console.ReadKey();

时间: 2024-10-27 02:58:35

第二单元练习 第一题和第十一题的相关文章

找出数组中两个只出现一次的数字 【微软面试100题 第六十一题】

题目要求: 一个整型数组里除了两个数字机之外,其他的数字都出现了两次. 请写程序找出这两个只出现一次的数字.要求时间复杂度O(N).空间复杂度O(1). 参考资料:剑指offer第40题. 题目分析: 已知: 1.两个相同的数字异或的结果为0,即a^a = 0. 2.两个不相同的数字异或的结果的二进制中某一位为1,则这两个数字的二进制中对应位一个为0,一个为1.如3^2 = 1,对于最低位的二进制,3的最低位二进制为1,2的最低位二进制位0,则结果1的最低位二进制肯定为1. 假设原数组中只出现一

华为上机题汇总(十一)

华为上机题汇总(十一) 注:编译环境为Visual Studio 2012,答案仅供参考. 目录 华为上机题汇总十一 目录 第五十一题 第五十二题 第五十三题 第五十四题 第五十五题 第五十一题 51.子串分离 题目描述: 通过键盘输入任意一个字符串序列,字符串可能包含多个子串,子串以空格分隔.请编写一 个程序,自动分离出各个子串,并使用','将其分隔,并且在最后也补充一个','并将子 串存储. 如果输入"abc def gh i d",结果将是abc,def,gh,i,d, 要求实现

经典算法题每日演练——第二十一题 十字链表

原文:经典算法题每日演练--第二十一题 十字链表 上一篇我们看了矩阵的顺序存储,这篇我们再看看一种链式存储方法“十字链表”,当然目的都是一样,压缩空间. 一:概念 既然要用链表节点来模拟矩阵中的非零元素,肯定需要如下5个元素(row,col,val,down,right),其中: row:矩阵中的行. col:矩阵中的列. val:矩阵中的值. right:指向右侧的一个非零元素. down:指向下侧的一个非零元素. 现在我们知道单个节点该如何表示了,那么矩阵中同行的非零元素的表示不就是一个单链

.C#认证考试试题汇编:第一单元:1,11 第二单元:1,11

第一单元1,11 好久没用异或都快忘了,就让我们一起来了解哈啥子事异或 说的这个,就不经意让我想起书上的几种交换值得方法了 我这儿说的交换的方法是,不使用第三个变量来交换,而是两个 实现条件是C a=100,b=10;第一种 缺点可能会如果超出范围溢出a=a+b; a=110,b=10b=a-b; b=100,a=110a=a-b; a=-10,b=100b=100,a=10;第二种 缺点可能会如果超出范围溢出a=a*b;a=1000,b=10b=a/b;b=100,a=1000a=a/b;a=

数据结构第二单元练习题答案

数据结构第二单元练习题答案 一.选择 1.树最适合用来表示(  ) A.有序数据元素      B.无序数据元素 C.元素之间具有分支层次关系的数据 D.元素之间无联系的数据 2.在下述结论中,正确的是(  ) ①只有一个结点的二叉树的度为0;  ②二叉树的度为2:  ③二叉树的左右子树可任意交换; ④深度为K的完全二叉树的结点个数小于或等于深度相同的满二叉树. A.①②③     B.②③④    C.②④     D.①④ 3.以下说法正确的是(  ) A.任何一棵二叉树中至少有一个结点的度

BUAA_OO 第二单元总结

BUAA_OO 第二单元总结 写在前面 ? 多线程(multi-threading)是指从软件或硬件上实现多个线程并发执行的技术.现代处理器普遍具有多核的特点,支持同一时间执行多个线程,使用多线程技术可以提高程序并发度,整体提高处理性能.因此掌握多线程程序设计技术是CS学习必不可少的一部分. ? 多线程程序设计包括线程协同控制.线程安全保证以及线程程序设计模式等.本文主要总结OO课程第二单元所学的有关多线程程序设计的知识,实践体会,以及技术注记,以备后用. 第五次作业 ? 第五次作业实现了一个单

OO第二单元单元总结

总述 OO的第二单元主题是电梯调度,与第一单元注重对数据的输入输出的处理.性能的优化不同,第二单元的重心更多的是在线程安全与线程通信上.这此次单元实验之前,我并未对线程有过了解,更谈不上“使用经验”,整体上第二单元三个实验也做的较为吃力.三次实验,也算是对线程的一步步入门吧,以及由于对于线程不是很熟悉,所以我总是下意识的把程序分割,尽量减少通信量. 第一次实验 基本需求:单电梯.无捎带要求.基本无性能要求. 基本实现:一个主线程或者一个主线程与一个电梯线程 我采用的方法是使用一个主线程,因为实际

第二单元总结

######第二单元###### #########################linux系统结构####################### 1. linux系统结构是倒树型 2. /bin                ##二进制可执行文件也就是系统命令 /sbin               ##系统管理命令存放位置 /boot               ##启动分区,负责系统启动 /dev                ##设备管理文件 /etc                #

第二单元练习题

<<<第二单元练习>>> 1.用命令和正则表达式按照要求建立文件 *)用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6) *)这些文件都包含在root用户桌面的study目录中 *)用一条命令建立8个文件redhat_versionX(x的范围为1-8) *)redhat_virsionX这些文件都包含在/mnt目录中的VERSION中 2.管理刚才信建立的文件要求如下 *)用一条命令把redhat_versi