美文网首页
C#方法,结构体,枚举

C#方法,结构体,枚举

作者: 高坂 | 来源:发表于2017-06-05 21:02 被阅读0次

    一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块。每一个 C# 程序至少有一个带有 Main 方法的类。

    要使用一个方法需要:
    定义方法
    调用方法

    class MainClass
    {
        //----------------方法-------------------//
        //方法:就是功能,一个特殊的代码段
        //方法定义格式:
        //方法不能嵌套定义,不能在方法内部再去定义方法,但方法可以嵌套调用
        /*返回值类型 方法名称(参数列表)  
         * {
         *     方法体(多行代码)
         * }
         * 返回值类型:方法返回数据的数据类
         * 参数列表:我们需要传个方法的参数
         * 
         * 根据参数和返回值的有无,将方法分为四类
         *     无参数无返回值方法
         *     有参数无返回值方法
         *     无参数有返回值方法
         *     有参数有返回值方法
         * */
        //无参数 无返回值方法
    
        static void PrintNumber()
        {
            //输出1-100
            for (int i = 1; i <= 100; i++)
                Console.Write (i+"\t");
        }
    
    
        //有参数无返回值方法
        //n:形式参数---形参
        static void PrintNumber1(int n)
        {
            //n 代表传进来的值
            for (int i = 1; i <= n; i++)
                Console.Write (i + "\t");
        }
        //多方法有多个参数时,多个参数之间用逗号隔开
        //每个参数必须有数据类型
        static void PrintNumber2(int start,int end)
        {
            for (int i = start; i <= end; i++)
                Console.Write (i + "\t");
        }
    
        static void shuzu(int [] arr)
        {
            int temp;
            int min=0;
            for (int i = 0; i < arr.Length-1; i++) 
            {
                min = i;
                for (int j = i; j < arr.Length; j++) 
                {
                    if (arr [min] > arr [j])
                        min = j;
                
                }
                temp = arr [i];
                arr [i] = arr [min];
                arr [min] = temp;
            }   
            for (int i = 0; i < arr.Length; i++)
                Console.Write (arr [i] + "\t");
        }
    
    
        //无参数有返回值方法
        //由用户输出5个正整数,返回5个中的最大者
        static int GetmaxNumber()
        {
            int max = -1;
            for(int i=1;i<=5;i++)
            {
                Console.Write("请输入第{0}个数:",i);
                int num = int.Parse(Console.ReadLine());
                if (num > max)
                    max = num;
            }
            //将return后面表达式的结果,返回个方法的调用者
            //结束方法
            return max;
        }
    
    
        //有参数有返回值
        //由用户输入指定个数的正整数,返回这些正整数中的最大者
        static int GetmaxNumber1(int count)
        {
            int max = -1;
            for(int i=1;i<=count;i++)
            {
                Console.Write("请输入第{0}个数:",i);
                int num = int.Parse(Console.ReadLine());
                if (num > max)
                    max = num;
            }
            return max;
        }
    
    
        //方法间的嵌套调用
        static int GetmaxNumber3()
        {
            int max = GetmaxNumber1 (5);
            return max;
    
        }
    
    
    
        public static void Main (string[] args)
        {
            //无参数无返回值的调用
            //调用格式:方法名称();
            //PrintNumber();
    
            //有参数无返回值的调用
            //调用格式:方法名称(实际参数--实参)
            //实参数据类型必须和形参类型保持一致
            //PrintNumber1(10);
    
            //PrintNumber2 (16,27);
    
            //定义一个方法
            //int[] a={6,5,4,3,2,1};
            //shuzu(a);
    
            //无参数有返回值方法的调用
            //调用格式:变量名 = 方法名称();
            //int max = GetmaxNumber3();
            //Console.WriteLine ("the max value is " + max);
            //返回值可以不接受,相当于丢失返回值
    
    
            //有参数有返回值的调用
            //调用格式:变量名 = 方法名称(实际参数--实参)
            //int max=GetmaxNumber1(5);
            //Console.WriteLine ("the max value is " + max);
    

    //--------------------------------------结构体-------------------------------------------//

    public struct Person
    {
        public string name;
        public string sex;
        public  int age;
        public float height;
    }
            //定义结构体变量
            //结构体类型 结构体类型变量名称;
            //使用默认初始化方法初始化所以成员
            Person p = new Person();
            //访问结构体变量成员
            //格式:变量名称.成员名称;
            Console.WriteLine(p.age);
            Console.WriteLine (p.name);
    
    
            p.name = "五更琉璃";
            p.age = 14;
            p.sex = "女";
            p.height = 1.45f;
            Console.WriteLine ("name={0},sex={1},age={2},height={3}", p.name, p.sex, p.age, p.height);
            Console.WriteLine ();
    
            teacher a = new teacher ();
            a.subject = "英语";
            a.sex = "男";
            a.position = "年级主任";
            Console.WriteLine ("subject={0}\nsex1={1}\nposition={2}", a.subject, a.sex, a.position);
    
            //结构体成员还是结构体变量,访问方式
            Person p1 = new Person ();
            p1.b.bust = 36f;
            p1.b.walst = 30;
            p1.b.hips = 36;
    

    //-----------------------------------------枚举------------------------------------------//

    // enum 定义枚举类型关键字
    //Season 新的枚举类型
    public enum Season
    {
        Spring,
        Summer,
        Autumn,
        Winter
    
    }
    //每一个枚举成员都对应一个整形值
    //第一个成员默认值为0
    //后面每一个成员的值为前一个成员的值+1
    
    //成员的值可以自定义
    //自定义成员前面的成员的值保持不变
    //后面成员的值为前一个成员的值+1
    
    
            //定义一种数据类型
            //一一列举
            //定义枚举变量:枚举类型名称 变量名称
            //枚举变量的值必须是枚举类型的成员
            Season s = Season.Spring;
            Console.WriteLine (s);
    
            s += 1;
            Console.WriteLine (s);
    
            //只能是Season成员
    
            //枚举成员的引用
            //枚举类型名称.成员名称
            //Season.summer;
    
            switch (s) 
            {
            case Season.Spring:
                Console.WriteLine ("Spring");
                break;
            case Season.Summer:
                Console.WriteLine ("Summer");
                break;
            case Season.Autumn:
                Console.WriteLine ("Autumn");
                break;
            case Season.Winter:
                Console.WriteLine ("Winter");
                break;
            default:
                Console.WriteLine ("Error Input");
                break;
            }
    

    //自定义枚举类型,星期枚举类型

    public enum Week
    {
        Sunday=0,
        Monday,
        Tuesday,
        Wednesday,
        Thursday,
        Friday,
        Saturday
    }
    

    //输入对应星期,Sunday=0,Monday=1,以此类推。输出对应星期的活动。

            Week w=Week.Sunday;
            int i;int
            //Console.WriteLine (w);
            Console.Write("请输入星期:");
            i = int.Parse (Console.ReadLine ());
            w += i;
            switch (w) 
            {
            case Week.Sunday:
                Console.WriteLine ("rest");
                break;
            case Week.Monday:
                Console.WriteLine ("work");
                break;
            case Week.Tuesday:
                Console.WriteLine ("work");
                break;
            case Week.Wednesday:
                Console.WriteLine ("work");
                break;
            case Week.Thursday:
                Console.WriteLine ("work");
                break;
            case Week.Friday:
                Console.WriteLine ("work");
                break;
            case Week.Saturday:
                Console.WriteLine ("rest");
                break;
            default:
                Console.WriteLine ("Error Input");
                break;
            }
    
    
            Console.WriteLine ("Hello World!");
        }
    }
    

    }

    相关文章

      网友评论

          本文标题:C#方法,结构体,枚举

          本文链接:https://www.haomeiwen.com/subject/pzjwfxtx.html