C#基礎入門(方法的9個練習題)元旦放假的作業

元旦給自己的作業,基本都是以前做過的,只是都封裝到方法裏面使用,後面幾題的方式在傳參和返回有所偷懶。接着開始第八天的總結項目:飛行棋!

class Program
{
    static void Main(string[] args)
    {
        //// 79、用方法來實現:有一個字符串數組:{ "馬龍", "邁克爾喬丹", "雷吉米勒", "蒂姆鄧肯", "科比布萊恩特" },請輸出最長的字符串。
        //string[] strs = { "馬龍", "邁克爾喬丹", "雷吉米勒", "蒂姆鄧肯", "科比布萊恩特" };
        //string str = GetStr(strs);
        //Console.WriteLine(str);
        //Console.ReadKey();

        ////80.用方法來實現:請計算出一個整姓數組的平均值,保留兩位小數
        //int[] nums = { 1, 2,8 };
        //double avg1 = GetAvg(nums);
        //Console.WriteLine(avg1);
        //string str = avg1.ToString("0.00");
        //double avg = Convert.ToDouble(str);
        //Console.WriteLine(avg);
        //Console.ReadKey();

        // 81、寫一個方法,用來判斷用戶輸入的數字是不是質數 再寫一個方法 要求用戶只能輸入數字 輸入有誤就一直讓用戶輸入數字
        //while (true)
        //{
        //    Console.WriteLine("請輸入一個整數,判斷出是不是質數");
        //    string num = Console.ReadLine();
        //    int number = GetShuZi(num);
        //    bool b = GetZhiShu(number);
        //    Console.WriteLine(b);
        //    Console.ReadKey();
        //

        /*95、接受輸入後判斷其等級並顯示出來。判斷依據如下:等級 ={
            優 (90~100分);良 (80~89分)
        //;中 (60~69分);差 (0~59分);}*/
        //Console.WriteLine("請出入成績,判斷出等級給你");
        //string str = Console.ReadLine();
        //int number = GetShuZi(str);
        //string str1 = GetLevel(number);
        //Console.WriteLine(str1);
        //Console.ReadKey();

        /*  97、請將字符串數組{ "中國", "美國", "巴西", "澳大利亞","加拿大" }
              中的內容反轉*/
        //string[] strs = { "中國", "美國", "巴西", "澳大利亞", "加拿大" };
        //GetS(strs);
        //Console.ReadKey();

        /*98寫一個方法 計算圓的面積和周長  面積是 pI*R * R  周長是 2 * Pi * r*/
        //Console.WriteLine("輸入圓的半徑");
        //string str = Console.ReadLine();
        //double n = GetShuZi(str);
        //double mianJi;
        //double zhouChang;
        //GetMianJi(n, out mianJi, out zhouChang);
        //Console.WriteLine("圓的面積是{0},周長是{1}", mianJi, zhouChang);
        //Console.ReadKey();

        /*100、計算任意多個數間的最大值(提示:params)。*/
        //GetMax(1, 9, 22, 23, 93, 54, 89, 77);
        //Console.ReadKey();

        //101、請通過冒泡排序法對整數數組{ 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 }實現升序排序。
        //int[] nums = { 1, 3, 5, 7, 90, 2, 4, 6, 8, 10 };
        //GetNums(nums);
        //Console.ReadKey();

        //103用方法來實現:請計算出一個整型數組的平均值。{ 1, 3, 5, 7, 93, 33, 4, 4, 6, 8, 10 }。要求:計算結果如果有小數,則顯示小數點後兩位(四捨五入)。
        //int[] nums = { 1, 3, 5, 7, 93, 33, 4, 4, 6, 8, 10 };
        //GetAvg1(nums);
        //Console.ReadKey();

        //102將一個字符串數組輸出爲 | 分割的形式,比如“梅西 | 卡卡 | 鄭大世”(用方法來實現此功能)
        string[] strs = { "梅西", "卡卡", "鄭大世" };
        string str = GetSizi(strs);
        Console.WriteLine(str);
        Console.ReadKey();
    }

    #region 79題所使用的方法
    /// <summary>
    /// 取字符串數組裏面長度最大的字符串返回
    /// </summary>
    /// <param name="s">傳入的字符串</param>
    /// <returns>返回長度最大的字符串</returns>
    public static string GetStr(string[] s)
    {
        string str = s[0];
        for (int i = 0; i < s.Length; i++)
        {
            if (s[0].Length < s[i].Length)
            {
                str = s[i];
            }
        }
        return str;
    }
    #endregion

    #region 80的方法
    /// <summary>
    /// 求整數數組的平均值
    /// </summary>
    /// <param name="ns">整數數組</param>
    /// <returns>返回平均值</returns>
    public static double GetAvg(int[] ns)
    {
        double sum = 0;
        for (int i = 0; i < ns.Length; i++)
        {
            sum += ns[i];
        }
        return sum / ns.Length;
    }
    #endregion

    #region 81.1的方法先判斷用戶輸入能不能被轉爲數字,不能就讓用戶重新輸入
    /// <summary>
    /// 判斷用戶輸入能不能被轉爲數字
    /// </summary>
    /// <param name="s">傳入用戶輸入爲參數</param>
    /// <returns>返回轉換後的數字</returns>
    public static double GetShuZi(string s)
    {
        while (true)
        {
            try
            {
                double n = Convert.ToInt32(s);
                return n;
            }
            catch
            {
                Console.WriteLine("輸入的內容不能被轉換爲數字,請重新輸入!");
                s = Console.ReadLine();
            }
        }
    }
    #endregion
    #region 81.2能被轉爲數字後判斷是否是質數
    /// <summary>
    /// 判斷被轉換後的數字是不是質數
    /// </summary>
    /// <param name="n">轉換後的數字</param>
    /// <returns>返回是不是質數</returns>
    public static bool GetZhiShu(int n)
    {
        if (n < 2)
        {
            return false;
        }
        else
        {
            for (int i = 2; i < n; i++)
            {
                if (n % i == 0)
                {
                    return false;
                }
            }
            return true;
        }
    }
    #endregion

    #region 95方法
    /// <summary>
    /// 給用戶輸入的數字分級
    /// </summary>
    /// <param name="n">用戶輸入的數字</param>
    /// <returns>返回等級</returns>
    //public static string GetLevel(int n)
    //{
    //    while (true)
    //    {
    //        string s = "";
    //        if (n >= 90 && n <= 100)
    //        {
    //            s = "優";
    //            return s;
    //        }
    //        else if (n >= 80 && n <= 89)
    //        {
    //            s = "良";
    //            return s;
    //        }
    //        else if (n >= 60 && n <= 79)
    //        {
    //            s = "中";
    //            return s;
    //        }
    //        else if (n >= 0 && n <= 59)
    //        {
    //            s = "差";
    //            return s;
    //        }
    //        else
    //        {
    //            s = "輸入不對,請重新輸入";
    //            n = GetShuZi(Console.ReadLine());
    //        }
    //    }
    //}
    #endregion

    #region 97方法
    /// <summary>
    /// 反轉字符串數組的字符
    /// </summary>
    /// <param name="ss">需要反轉的字符串</param>
    public static void GetS(string[] ss)
    {
        string temp = "";
        for (int i = 0; i < ss.Length / 2; i++)
        {
            temp = ss[i];
            ss[i] = ss[ss.Length - i - 1];
            ss[ss.Length - i - 1] = temp;
        }
        for (int i = 0; i < ss.Length; i++)
        {
            Console.WriteLine(ss[i]);
        }
    }
    #endregion

    #region 98求圓的面積和周長
    public static void GetMianJi(double r, out double n1, out double n2)
    {
        n1 = 3.14 * r * r;
        n2 = 3.14 * r * 2;
    }
    #endregion

    #region 100的方法
    /// <summary>
    /// 求多個數字之間的最大值
    /// </summary>
    /// <param name="ns"></param>
    /// <returns></returns>
    public static void GetMax(params int[] ns)
    {
        int max = ns[0];
        for (int i = 0; i < ns.Length; i++)
        {
            if (max < ns[i])
            {
                max = ns[i];
            }
        }
        Console.WriteLine(max);
    }
    #endregion

    #region 101的方法
    /// <summary>
    /// 使用方法實現冒泡排序
    /// </summary>
    /// <param name="nums">傳入的數組</param>
    public static void GetNums(int[] nums)
    {
        for (int i = 0; i < nums.Length - 1; i++)
        {
            for (int j = 0; j < nums.Length - i - 1; j++)
            {
                if (nums[j] > nums[j + 1])
                {
                    int temp = nums[j];
                    nums[j] = nums[j + 1];
                    nums[j + 1] = temp;
                }
            }
        }
        //Array.Sort(nums);
        for (int i = 0; i < nums.Length; i++)
        {
            Console.WriteLine(nums[i]);
        }
    }
    #endregion

    #region 103的方法
    /// <summary>
    /// 求數組的平均值,並保留兩位小數,四捨五入
    /// </summary>
    /// <param name="nums">傳入的數組參數</param>
    public static void GetAvg1(int[] nums)
    {
        int sum = 0;
        for (int i = 0; i < nums.Length; i++)
        {
            sum += nums[i];
        }
        double avg = sum * 1.0 / nums.Length;
        string str = avg.ToString("0.00");
        double avg1 = Convert.ToDouble(str);
        Console.WriteLine("平均值是:{0}", avg1);
    }
    #endregion

    #region 102的方法
    /// <summary>
    /// 把字符串數組用|分割輸出,最後一個不加|
    /// </summary>
    /// <param name="strs">傳入的字符串數組</param>
    public static string GetSizi(string[] strs)
    {
        string name = null;
        for (int i = 0; i < strs.Length - 1; i++)
        {
            name += strs[i] + "|";
        }
        return name + strs[strs.Length - 1];
        #endregion
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章