C#方法,結(jié)構(gòu)體,枚舉

一個(gè)方法是把一些相關(guān)的語(yǔ)句組織在一起,用來(lái)執(zhí)行一個(gè)任務(wù)的語(yǔ)句塊。每一個(gè) C# 程序至少有一個(gè)帶有 Main 方法的類。

要使用一個(gè)方法需要:
定義方法
調(diào)用方法

class MainClass
{
    //----------------方法-------------------//
    //方法:就是功能,一個(gè)特殊的代碼段
    //方法定義格式:
    //方法不能嵌套定義,不能在方法內(nèi)部再去定義方法,但方法可以嵌套調(diào)用
    /*返回值類型 方法名稱(參數(shù)列表)  
     * {
     *     方法體(多行代碼)
     * }
     * 返回值類型:方法返回?cái)?shù)據(jù)的數(shù)據(jù)類
     * 參數(shù)列表:我們需要傳個(gè)方法的參數(shù)
     * 
     * 根據(jù)參數(shù)和返回值的有無(wú),將方法分為四類
     *     無(wú)參數(shù)無(wú)返回值方法
     *     有參數(shù)無(wú)返回值方法
     *     無(wú)參數(shù)有返回值方法
     *     有參數(shù)有返回值方法
     * */
    //無(wú)參數(shù) 無(wú)返回值方法

    static void PrintNumber()
    {
        //輸出1-100
        for (int i = 1; i <= 100; i++)
            Console.Write (i+"\t");
    }


    //有參數(shù)無(wú)返回值方法
    //n:形式參數(shù)---形參
    static void PrintNumber1(int n)
    {
        //n 代表傳進(jìn)來(lái)的值
        for (int i = 1; i <= n; i++)
            Console.Write (i + "\t");
    }
    //多方法有多個(gè)參數(shù)時(shí),多個(gè)參數(shù)之間用逗號(hào)隔開(kāi)
    //每個(gè)參數(shù)必須有數(shù)據(jù)類型
    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");
    }


    //無(wú)參數(shù)有返回值方法
    //由用戶輸出5個(gè)正整數(shù),返回5個(gè)中的最大者
    static int GetmaxNumber()
    {
        int max = -1;
        for(int i=1;i<=5;i++)
        {
            Console.Write("請(qǐng)輸入第{0}個(gè)數(shù):",i);
            int num = int.Parse(Console.ReadLine());
            if (num > max)
                max = num;
        }
        //將return后面表達(dá)式的結(jié)果,返回個(gè)方法的調(diào)用者
        //結(jié)束方法
        return max;
    }


    //有參數(shù)有返回值
    //由用戶輸入指定個(gè)數(shù)的正整數(shù),返回這些正整數(shù)中的最大者
    static int GetmaxNumber1(int count)
    {
        int max = -1;
        for(int i=1;i<=count;i++)
        {
            Console.Write("請(qǐng)輸入第{0}個(gè)數(shù):",i);
            int num = int.Parse(Console.ReadLine());
            if (num > max)
                max = num;
        }
        return max;
    }


    //方法間的嵌套調(diào)用
    static int GetmaxNumber3()
    {
        int max = GetmaxNumber1 (5);
        return max;

    }



    public static void Main (string[] args)
    {
        //無(wú)參數(shù)無(wú)返回值的調(diào)用
        //調(diào)用格式:方法名稱();
        //PrintNumber();

        //有參數(shù)無(wú)返回值的調(diào)用
        //調(diào)用格式:方法名稱(實(shí)際參數(shù)--實(shí)參)
        //實(shí)參數(shù)據(jù)類型必須和形參類型保持一致
        //PrintNumber1(10);

        //PrintNumber2 (16,27);

        //定義一個(gè)方法
        //int[] a={6,5,4,3,2,1};
        //shuzu(a);

        //無(wú)參數(shù)有返回值方法的調(diào)用
        //調(diào)用格式:變量名 = 方法名稱();
        //int max = GetmaxNumber3();
        //Console.WriteLine ("the max value is " + max);
        //返回值可以不接受,相當(dāng)于丟失返回值


        //有參數(shù)有返回值的調(diào)用
        //調(diào)用格式:變量名 = 方法名稱(實(shí)際參數(shù)--實(shí)參)
        //int max=GetmaxNumber1(5);
        //Console.WriteLine ("the max value is " + max);

//--------------------------------------結(jié)構(gòu)體-------------------------------------------//

public struct Person
{
    public string name;
    public string sex;
    public  int age;
    public float height;
}
        //定義結(jié)構(gòu)體變量
        //結(jié)構(gòu)體類型 結(jié)構(gòu)體類型變量名稱;
        //使用默認(rèn)初始化方法初始化所以成員
        Person p = new Person();
        //訪問(wèn)結(jié)構(gòu)體變量成員
        //格式:變量名稱.成員名稱;
        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 = "英語(yǔ)";
        a.sex = "男";
        a.position = "年級(jí)主任";
        Console.WriteLine ("subject={0}\nsex1={1}\nposition={2}", a.subject, a.sex, a.position);

        //結(jié)構(gòu)體成員還是結(jié)構(gòu)體變量,訪問(wèn)方式
        Person p1 = new Person ();
        p1.b.bust = 36f;
        p1.b.walst = 30;
        p1.b.hips = 36;

//-----------------------------------------枚舉------------------------------------------//

// enum 定義枚舉類型關(guān)鍵字
//Season 新的枚舉類型
public enum Season
{
    Spring,
    Summer,
    Autumn,
    Winter

}
//每一個(gè)枚舉成員都對(duì)應(yīng)一個(gè)整形值
//第一個(gè)成員默認(rèn)值為0
//后面每一個(gè)成員的值為前一個(gè)成員的值+1

//成員的值可以自定義
//自定義成員前面的成員的值保持不變
//后面成員的值為前一個(gè)成員的值+1


        //定義一種數(shù)據(jù)類型
        //一一列舉
        //定義枚舉變量:枚舉類型名稱 變量名稱
        //枚舉變量的值必須是枚舉類型的成員
        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
}

//輸入對(duì)應(yīng)星期,Sunday=0,Monday=1,以此類推。輸出對(duì)應(yīng)星期的活動(dòng)。

        Week w=Week.Sunday;
        int i;int
        //Console.WriteLine (w);
        Console.Write("請(qǐng)輸入星期:");
        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!");
    }
}

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 指針是C語(yǔ)言中廣泛使用的一種數(shù)據(jù)類型。 運(yùn)用指針編程是C語(yǔ)言最主要的風(fēng)格之一。利用指針變量可以表示各種數(shù)據(jù)結(jié)構(gòu); ...
    朱森閱讀 3,612評(píng)論 3 44
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 4,190評(píng)論 1 10
  • 來(lái)源與:阿里云棲 禁止用于商業(yè)用途 ps:如果需要電子書(shū) 評(píng)論你們郵箱 我會(huì)發(fā)給你們 下面感覺(jué)還是有點(diǎn)亂 目錄 一...
    小向資源網(wǎng)閱讀 7,838評(píng)論 0 12
  • 枚舉類型的目的 1.枚舉類型使代碼更具可讀性,理解清晰,易于維護(hù) 2.如果枚舉符號(hào)和對(duì)應(yīng)的整數(shù)值發(fā)生變化,只需修改...
    petit_prince閱讀 771評(píng)論 0 0
  • 不斷學(xué)習(xí),不斷創(chuàng)新!
    膠州寶龍DDM徐雅閱讀 193評(píng)論 0 0

友情鏈接更多精彩內(nèi)容