C#——算術運算符和數據類型轉換

.
.
一、算術運算符

算數運算符號:+ - * / %(取餘數 取模)

算術表達式:由算數運算符連接起來的式子(變量最先聲明,然後賦值,最後使用)

例子:計算兩值之和:

            int num1 = 100;//定義變量num1
            int num2 = 20;//定義變量num2

            Console.WriteLine(num1 + num2);
            Console.ReadKey();

例子:計算T-shirt和褲子總價格:

            練習2:某商店T恤(T - shirt)的價格爲35/,褲子(trousers)的價格爲120/.小明在該店買了3件T恤和2條褲子,請計算並顯示小明應該付多少錢 ?

            int T_shirt = 35;
            int trousers = 120;
            int sum = 3 * T_shirt + 2 * trousers;
            double result = sum * 0.88

            Console.WriteLine("總價格爲 " + sum);
            Console.WriteLine(result);
            Console.ReadKey();

二、佔位符

            練習6:美女吃水果問題
            Console.WriteLine("美女,你喜歡吃神馬水果");
            string str = Console.ReadLine();

            Console.WriteLine("哈哈,這麼巧,我也喜歡吃{0},我叫{1}", str, "老蘇");
            Console.ReadKey();

            string name = "老牛";
            Console.WriteLine("姓名:{0}", name);//{0}代表佔位符,後面表示佔位符所表示的內容
            Console.ReadKey();

佔位符是{0},從0開始

例子:使用佔位符給一個運算的結果保留三位小數:

            練習5:求10 / 3(Remainder)要想得到3.333的處理.

            int num1 = 10;

            int num2 = 3;

            double remainder = num1 * 1.0 / num2;

            //如要保留幾位小數,而不是要無限循環數,應該用佔位符,
            //且在佔位符內寫出要保留的位數即0.000或者0.00000
            Console.WriteLine("{0:0.000}", remainder);
            Console.ReadKey();
           

三、隱式轉換與顯式轉換

1、隱式轉換——類型之間自動轉換

int轉double,隱式轉換,多小數

int類型的數據可以自動的轉換成double類型的數據 或者說,int類型的數據可以隱式轉換成double類型的數據

要求:
參與運算(算術運算和賦值運算)的操作數和結果類型必須一致,不一致要滿足下面的條件,纔可以轉換。

兩種類型兼容:如果int和double都是數字類型、目標類型大於源類型:例如:double>int

對於表達式:如果一個操作數爲double型,則整個表達式可提升爲double型

例題:

            int a = 10, b = 3;

            int mod = a % b;

            double quo = a / b;        //因爲 a和b都是整數類型,因此即便是做了除運算,結果也要整數
            double quo = a * 1.0 / b;  //隱式轉換int類型轉double類型

            Console.WriteLine(mod);
            Console.WriteLine(quo);

            Console.ReadKey();

            //問題:雖然是不同類型之間,爲什麼不報錯?
            //答案:隱式轉換

2、顯式轉換——強制類型轉換

double轉int,顯示轉換,丟精度

            double num1 = 303.6;

            int num2 = 303;//double類型的數據轉換爲int類型的數據丟精度
            int number2 = 90;
            double number1 = number2;//隱式轉換,自動將int類型的數據轉換成double類型的數據

            int num = (int)num1;//顯示轉換,或者說  強制類型轉換
            //括號裏面寫要轉換成的數據類型
            Console.WriteLine(num);
            Console.ReadKey();
         
			double num1 = 90.45;
            int num = (int)num1;

            Console.WriteLine(num);
            Console.ReadKey();

            //int number = (int)"3.14";//狗只能是狗,強制類型轉換,數據類型一定要相兼容        

Convert方法

Convert不再僅是內存級別的轉換,而是考慮數據意義的轉換。Convert是一個加工、改造的過程

通過 Convert.ToInt32(能轉換成int類型的數據)來把其他類型數據轉換成int類型

例題:

			//讓用戶輸入姓名 語文 數學 英語 三門課的成績
			//然後給用戶顯示:XX,你的總成績爲XX分,平均成績爲XX分
 

            Console.WriteLine("請輸入姓名");//定義字符串類型

            string name = Console.ReadLine();//用於接收用戶的輸入.要定義一個字符串變量來接收並存儲用戶輸入的值.

            Console.WriteLine("請輸入語文成績");

            string strchinese = Console.ReadLine();

            Console.WriteLine("請輸入數學成績");

            string strmath = Console.ReadLine();

            Console.WriteLine("請輸入英語成績");

            string strenglish = Console.ReadLine();


            double Chinese = Convert.ToDouble(strchinese);//把字符串類型的語文成績轉換爲double類型的數據

            double math = Convert.ToDouble(strmath);//同上

            double english = Convert.ToDouble(strenglish);

            double sum = Chinese + math + english;//計算總成績

            double avg = sum / 3;
            
			//通過佔位符,將數據依次顯示出來,並對平均值的精度做出要求
            Console.WriteLine("{0}你好,您的總成績爲{1},您的平均成績爲{2:0.0}" ,name,sum,avg);           

            Console.WriteLine("{0:0.0}", 34.555); //存在四捨五入,顯示34.6
            Console.ReadKey();

小編的話:在每天都是自考和軟考交織的間隙中,稍稍地看了幾集,內容奉上,還會更新,敬請期待!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章