C#测试(二)

一.单选题

1.在C#中,从属性的读写特性上来进行分类,可以划分为以下三种,除了()。

A.只读属性

B.只写属性

C.读写属性

D.不可读不可写的属性

2.以下类MyClass的属性count属于()属性

cs 复制代码
class MyClass
{ 
    int i;
    int count
    { 
        get{ 
            return i;
        }
    }    
}

A.只读

B.只写

C.可读写

D.不可读不可写

3.在类A中定义了属性y:

cs 复制代码
class A
{ 
    public int y;
    { 
        get{ 
            return 1; 
        }
        set {}
    }
}

并试图通过下列代码来实现对属性y的访问:

cs 复制代码
A b=new A();
b.y=2;
int x=b.y;

对此,下列说法正确的是()

A.属性y可读可写,因此变量x的值为2

B.属性y可读,但不可写,因此语句"b.y=2;"是错误的

C.属性y可写,但不可读,因此语句"int x=b.y;是错误的

D.属性y可读可写,变量x的值为1

五. 程序题

  1. 本题实现一个员工类Emlployee,该类包含两个私有字段员工姓名name和出生年份birthyear,一个静态字段员工人数employeeNum。要求补全员工类Emlployee代码, 使该类有一个公共的读写属性Name,一个只读属性Age,一个构造函数:给姓名name和出生年份birthyear通过参数赋值,并且每新建一个员工,员工人数employeeNum加一
cs 复制代码
using System;

namespace ConsoleApplication1
{ 
    public class Emlployee  //员工类
    {
        private string name; //员工姓名
        private int birthyear; //出生年份
        public static int employeeNum=0;  //员工数量

        /* 你的代码写在这里 ,提交时交完整程序,不能只提交该函数*/
    }

    public class myCaller
    {
        public static void Main(string[] args)
        {
            string name;
            int birthYear;
            //Console.Write("请输入一共有多少个员工:");
            int num = Convert.ToInt32(Console.ReadLine());
            Emlployee[] emp = new Emlployee[num];
            for (int i=0;i<num;i++)
            {
                //Console.Write("请输入员工姓名:");
                name = Console.ReadLine();
                //Console.Write("请输入员工出生年份:");
                birthYear = Convert.ToInt32(Console.ReadLine());
                emp[i] = new Emlployee(name,birthYear);
            }

            for (int i = 0; i < num; i++)
            { 
                Console.WriteLine("姓名:" + emp[i].Name + ";    年龄:" + emp[i].Age + ";");
            }
            Console.WriteLine("员工数:" + Emlployee.employeeNum);
        }
    }
}
cs 复制代码
using System;

namespace ConsoleApplication1
{ 
    public class Emlployee  //员工类
    {
        DateTime dt = DateTime.Now;
        private string name; //员工姓名
        private int birthyear; //出生年份
        public static int employeeNum=0;  //员工数量

        /* 你的代码写在这里 ,提交时交完整程序,不能只提交该函数*/
        public  string Name{
            get{
                return name;
            }
            set{
                name=value;
            }
        }

        public int Age{
            get{
                return Convert.ToInt32(dt.Year)-birthyear;
            }
        }
        
        public Emlployee(string name,int birthYear){
            this.name=name;
            this.birthyear=birthYear;
            Emlployee.employeeNum++;
        }
    }

    public class myCaller
    {
        public static void Main(string[] args)
        {
            string name;
            int birthYear;
            //Console.Write("请输入一共有多少个员工:");
            int num = Convert.ToInt32(Console.ReadLine());
            Emlployee[] emp = new Emlployee[num];
            for (int i=0;i<num;i++)
            {
                //Console.Write("请输入员工姓名:");
                name = Console.ReadLine();
                //Console.Write("请输入员工出生年份:");
                birthYear = Convert.ToInt32(Console.ReadLine());
                emp[i] = new Emlployee(name,birthYear);
            }

            for (int i = 0; i < num; i++)
            { 
                Console.WriteLine("姓名:" + emp[i].Name + ";    年龄:" + emp[i].Age + ";");
            }
            Console.WriteLine("员工数:" + Emlployee.employeeNum);
        }
    }
}
相关推荐
唐青枫14 小时前
别再乱用 StartNew:C#.NET TaskFactory 任务调度实战详解
c#·.net
Artech1 天前
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider——赋予Agent从经验中学习的能力
ai·c#·agent·memory·maf
Scout-leaf3 天前
C#摸鱼实录——IoC与DI案例详解
c#
咕白m6253 天前
使用 C# 在 Excel 中应用多种字体样式
后端·c#
Artech3 天前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf
2601_962072554 天前
李梦娇常识4600问|题库|打印版
sql·华为od·华为·c#·华为云·.net·harmonyos
m0_547486664 天前
《C#语言程序设计与实践》 全套PPT课件
c语言·c#·c语言程序设计
叶帆4 天前
【YFIOs】用C#开发硬件之设备上云
开发语言·unity·c#
IT方大同4 天前
(嵌入式操作系统)信号量
嵌入式硬件·c#
z落落4 天前
C# FileStream文件流读取文件
开发语言·c#