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

.NET-.NET基础(练习检测)

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

.NET-.NET基础(练习检测)

.NET..NET基础.练习检测.职业技能
  • 0. 目录
  • 2. .NET Test
    • 2.1 测试题目
    • 2.2 测试解答

0. 目录 2. .NET Test 2.1 测试题目

基础语法练习

  1. 使用C#语法实现冒泡排序输出到控制台上。
    排序内容:var doubleList = new double[] { 20.3, 11.4, 33.1, 45.2, 50.1, 60.5 };

基础对象练习

  1. 定义一个集合,类型为时间类型。要求集合内容为从今天开始按索引加一天 (累加的天数为10天),日期
    按降序排序。新建控制台应用程序输出刚刚的集合到前台并格式化日期为(2019-xx-xx),判断如果日
    期day为偶数,则通过报错的方法输出到控制台上,并不影响接下去的输出。错误内容为:当天为偶数
    位,日期2019-xx-xx
    要求:集合的产生过程必须通过程序,排序、判断日期是否为偶数 必须用LINQ
  2. 分别生成斐波那契数列的第40个元素、第48个元素
  3. 生成10个含数字字母的随机字符串

接口、抽象类、继承、多态的综合运用

  1. 新建接口类,定义属性、方法
  2. 新建抽象类,定义字段、属性、普通方法、虚方法、抽象方法
  3. 新建A类继承接口,实现其所有成员
  4. B类继承A类,重写A类的方法
2.2 测试解答
  • 使用C#语法实现冒泡排序输出到控制台上。

    排序内容:var doubleList = new double[] { 20.3, 11.4, 33.1, 45.2, 50.1, 60.5 };

    public override void StartSort()
    {
    
        bool flag;
        for (int i = 0; i < SortArrayData.Length; i++)
        {
            flag = false;
            for (int j = SortArrayData.Length - 1; j > i; j--)
            {
                if (SortArrayData[j - 1] > SortArrayData[j])
                {
                    Replace(j - 1, j);
                    flag = true;
                }
            }
               
            if (flag == false)
            {
                break;
            }
        }
            
        PrintDate(SortArrayData);
    }
    
    public void Replace(int num1, int num2)
    {
        double temp = SortArrayData[num1];
            SortArrayData[num1] = SortArrayData[num2];
            SortArrayData[num2] = temp; 
    }
        
    public override void PrintDate(double[] sortArrayData)
    {
        for (int i = 0; i < sortArrayData.Length; i++)
        {
            Console.Write(sortArrayData[i] + " ");
        }
    
        Console.WriteLine();
    }
    

  • 定义一个集合,类型为时间类型。要求集合内容为从今天开始按索引加一天 (累加的天数为10天),日期

    按降序排序。新建控制台应用程序输出刚刚的集合到前台并格式化日期为(2019-xx-xx),判断如果日

    期day为偶数,则通过报错的方法输出到控制台上,并不影响接下去的输出。错误内容为:当天为偶数

    位,日期2019-xx-xx

    要求:集合的产生过程必须通过程序,排序、判断日期是否为偶数 必须用LINQ

    public static void DatetimeControl()
    {
                //定义一个集合,类型为时间类型
        List dateTimes = new List();
    
        DateTime today = DateTime.Now;
    
        //要求集合内容为从今天开始按索引加一天 (累加的天数为10天)
        for (int i = 1; i <= 10; i++)
        {
        	dateTimes.Add(today.AddDays(i));            }
    
    		//日期按降序排序
            var newlist = from p in dateTimes orderby p descending select p;
    
            //新建控制台应用程序输出刚刚的集合到前台并格式化日期为(2019-xx-xx)
            foreach (var date in newlist)
            {
                Console.WriteLine(date.ToString("yyyy-MM-dd"));
            }
    
    		//判断如果日期day为偶数,则通过报错的方法输出到控制台上,并不影响接下去的输出
            foreach (var date in newlist)
            {
            	try
                {
                    if (date.Day % 2 == 0)
                    {
                    	throw new Exception();
                    }
                }
                catch (Exception)
                {
                    Console.WriteLine("当天为偶数位,日期" + date.ToString("yyyy-MM-dd"));
                }
            }
        }
    }
    

  • 分别生成斐波那契数列的第40个元素、第48个元素
    方法1-栈方法
    public static void Fibonacci_Stack(long num)
    {
    	Stack stack = new Stack();
    
        stack.Push(0);
        stack.Push(1);
    
    	for (int i = 0; i < num - 1; i++)
        {
        	long f2 = stack.Pop();
            long f1 = stack.Pop();
            long next = f1 + f2;
    
            stack.Push(f1);
            stack.Push(f2);
            stack.Push(next);
        }
    
            Console.WriteLine(stack.Pop());
    }
    
    方法2-递归方法
    public static void Fibonacci_Recursion(long num)
    {
    	Console.WriteLine(GetFibonacciSequence(num));
    }
    
    private static long GetFibonacciSequence(long value)
    {
    	if (value == 0 || value == 1)
        {
        	return 1;
        }
        
        return (GetFibonacciSequence(value - 1) + GetFibonacciSequence(value - 2));
    }
    

  • 生成10个含数字字母的随机字符串
    GUID方法
    public static void GenerateRandomString()
    {
        for (int i = 0; i < 10; i++)
        {
             var guid = Guid.NewGuid().ToString("N");
             Console.WriteLine(guid.Substring(0, 9));
        }
    }
    
    随机种子
    public static void GenerateRandomStringForSeed()
    {
        string randomString = string.Empty;
    
        for (int i = 0; i < 10 ; i++)
        {
            for (int j=0 ; j<10;j++)
            {
                randomString += RandomSeed();
            }
            Console.WriteLine(randomString);
            randomString = null;
        }
    }
    
    public static string RandomSeed()
    {
    	Random random = new Random(Guid.NewGuid().GetHashCode());
        int dice = random.Next(0,3);
    
    	string color = string.Empty;
    	
        switch (dice)
        {
        	case 0://数字
            {
            	color = ((char)random.Next(48, 58)).ToString();
                break;
            }
            case 1://大写字母
            {
            	color = ((char)random.Next(65, 91)).ToString();
                break;
            }
            case 2://小写字母
            {
            	color = ((char)random.Next(97, 123)).ToString();
                break;
            }
        }
    
    	return color;
    }
    

  • 新建接口类,定义属性、方法
    interface I_Sort
    {
    	string Sort_Category { get; set; }
    
        void StartSort();
    }
    
  • 新建抽象类,定义字段、属性、普通方法、虚方法、抽象方法
    public abstract class Sort: I_Sort
    {
    	private string sortCategory;
        private int sortnum;
        private double[] sortArrayData;
    
        public Sort()
        {
    
        }
    
    	public Sort(int sortnum)
        {
        	this.sortnum = sortnum;
        }
    
        public Sort(double[] sortArrayData)
        {
            this.sortArrayData = sortArrayData;
        }
    
        public int SortNum
        {
            get
            {
                return this.sortnum;
            }
            set
            {
                this.sortnum = value;
            }
        }
    
        public double[] SortArrayData
        {
            get
            {
                return this.sortArrayData;
            }
            set
            {
                this.sortArrayData = value;
            }
        }
        
        public string Sort_Category { 
        	get 
        	{
        		return sortCategory;
        	}
        	set 
       		{
        		sortCategory = value;
       		} 
    	}
    
    	public Sort(int sortNum,double[] sortArrayData)
    	{
    		SortNum = sortNum;
        	SortArrayData = sortArrayData;
    	}
    
    	public virtual void StartSort()
    	{
    
    	}
    
    	public abstract void PrintDate(double[] sortArrayData);
    }
    
  • 新建A类继承接口,实现其所有成员
    public abstract class Sort: I_Sort
    {
    	private string sortCategory;
        private int sortnum;
        private double[] sortArrayData;
    
        public Sort()
        {
    
        }
    
    	public Sort(int sortnum)
        {
        	this.sortnum = sortnum;
        }
    
        public Sort(double[] sortArrayData)
        {
            this.sortArrayData = sortArrayData;
        }
    
        public int SortNum
        {
            get
            {
                return this.sortnum;
            }
            set
            {
                this.sortnum = value;
            }
        }
    
        public double[] SortArrayData
        {
            get
            {
                return this.sortArrayData;
            }
            set
            {
                this.sortArrayData = value;
            }
        }
        
        public string Sort_Category { 
        	get 
        	{
        		return sortCategory;
        	}
        	set 
       		{
        		sortCategory = value;
       		} 
    	}
    
    	public Sort(int sortNum,double[] sortArrayData)
    	{
    		SortNum = sortNum;
        	SortArrayData = sortArrayData;
    	}
    
    	public virtual void StartSort()
    	{
    
    	}
    
    	public abstract void PrintDate(double[] sortArrayData);
    }
    
  • B类继承A类,重写A类的方法
    public class BubbleSort : Sort, I_Replace
    {
        double[] SortArrayData;
        tring Replace_category = string.Empty;
    
        public BubbleSort(double[] sortArrayData) :
           base(sortArrayData)
        {
            this.SortArrayData = sortArrayData;
        }
    
        public string Replace_Category
        {
            get
            {
                return Replace_category;
            }
    
    		set
            {
                this.Replace_category = value;
            }
        }
          
        public override void StartSort()
        {
    
            bool flag;
            for (int i = 0; i < SortArrayData.Length; i++)
            {
            	flag = false;
                for (int j = SortArrayData.Length - 1; j > i; j--)
                {
                    if (SortArrayData[j - 1] > SortArrayData[j])
                    {
                        Replace(j - 1, j);
                        flag = true;
                    }
                }
    
    			if (flag == false)
                {
                    break;
                }
            }
    
            PrintDate(SortArrayData);
        }
    
    	public void Replace(int num1, int num2)
        {
        	double temp = SortArrayData[num1];
            SortArrayData[num1] = SortArrayData[num2];
            SortArrayData[num2] = temp; 
        }
    
        public override void PrintDate(double[] sortArrayData)
        {
            for (int i = 0; i < sortArrayData.Length; i++)
            {
                Console.Write(sortArrayData[i] + " ");
            }
    
    		Console.WriteLine();
        }
    }
    
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/955680.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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