文章出處

1、聲明兩個變量:int n1 = 10, n2 = 20;要求將兩個變量交換,最后輸出n1為20,n2為10。

擴展(*):不使用第三個變量如何交換?

用方法來實現:封裝一個方法來做。
* 提示:方法有兩個參數n1,n2,在方法中將n1與n2進行交換,使用ref。

        static void Main(string[] args)
        {
            int n1 = 10, n2 = 20;
            Console.WriteLine("交換之前:n1 = {0}, n2 = {1}", n1, n2);
            //不使用方法來做
            //n1 = n1 + n2;
            //n2 = n1 - n2;
            //n1 = n1 - n2;
            Swap(ref n1, ref n2);
            Console.WriteLine("交換之后:n1 = {0}, n2 = {1}", n1, n2);
            Console.ReadKey();
        }

        static void Swap(ref int n1,ref int n2) 
        {
            n1 = n1 + n2;
            n2 = n1 - n2;
            n1 = n1 - n2;
        }

   上面的Swap方法中,還可以使用另一種方式交換變量。

  n1 = n1 - n2;  // 10 - 20  得到結果:n1 = -10

     n2 = n1 + n2; // 20 + (-10)  得到結果:n2 = 10

     n1 = n2 - n1;  //  10 - (-10)  得到結果:n1 = 20

 

2.  判斷是否是質數(素數)

        static bool IsPrime(int n) 
        {
            if (n < 2) 
            {
                return false;
            }
            else
            {
                for (int i = 2; i < n; i++)
                {
                    if (n % i == 0)
                    {
                        return false;
                    }
                }
                return true;
            }
        }

 

 

3.  四舍五入

  題目會要求,顯示小數點后兩位(四舍五入)

  按照C語言,自寫的算法。先將double類型的數據乘以1000后轉換為int類型;再取出最后一位數字,若大于等于5,

則將給這個int類型的數據加上10;最后將int類型的數據乘以1.0轉換為double類型后,除以1000,得到最終的結果。

        static double Drop4Round5(double d) 
        {
            int n = (int)(d * 1000);
            int nLast = n % 10;
            if (nLast >= 5)
            {
                n += 10;
            }
            n = n/10;
            double db = (1.0 * n) / 100;
            return db;
        }

 

  其實我們可以借助ToString方法更快地解決問題,ToString可以根據指定的格式將double類型的數值轉換為等效字符串表示形式。如1.23456,保留后兩位小數,四舍五入,得到字符串 “1.23”。最后調用Convert類的ToDouble方法即可。

    avg = Convert.ToDouble(avg.ToString("0.00"));

 

  

 


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()