美文网首页
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#方法,结构体,枚举

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

  • iOS-Swift-方法、下标、继承

    一. 方法 枚举、结构体、类都可以定义实例方法、类型方法。定义类方法:枚举、结构体使⽤static,类使⽤stat...

  • Swift中mutating关键字

    结构体枚举或者协议中,使用mutating修饰的方法,可以在该方法内部修改结构体,枚举,或者协议的属性变量。 对值...

  • Swift之方法

    1、实例方法实例方法属于特定类实例、结构体实例或者枚举实例的函数这里的方法其实就是函数,只不过放在类、结构体和枚举...

  • Swift方法mutating关键字的本质

    Swift的结构体或者枚举的方法中,如果方法中需要修改当前结构体或者枚举的属性值,则需要再func前面加上muta...

  • 1024

    今天是程序员的节日。 今天由另一名老师代课,讲了第五章的内容,结构体和枚举,对于C#而言,结构体更加像一个C#的类...

  • Swift-方法

    在Swift中,类,结构体,枚举,都能定义实例方法。 结构和枚举可以在Swift中定义方法的事实是与C和Objec...

  • C# 访问修饰符

    C# 【方法】默认访问级别 : private C# 【类】和【结构体】默认访问级别 : internal 1.命...

  • 方法(Methods)

    方法概念: 函数在类,结构体,枚举中就叫方法。 实例方法举例: let counter = Counter()//...

  • iOS开发 - 「Swift 学习」Swift语言标识符命名规则

    Swift中变量、常量、方法、函数、枚举、结构体、类、协议等命名规则: 开发中需要对 变量、常量、方法、函数、枚举...

网友评论

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

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