C#中都有那些常用的運算子

來源:互聯網
上載者:User

瞭解完C#資料類型與變數之後,我們還會遇到變數之間的運算,如計算兩個數的和等等運算。那麼C#中都有那些常用的運算子呢(本篇只介紹基本常用運算子,其他運算子在後續知識點中用到時會介紹)?那麼。。。往下看吧!

      一.  算數運算子

            1.基本算數運算子

           說到算數運算子,我們首先就應該可以想到我們數學中一些常用的運算子例如:加 減 乘 除 求餘!

            那麼在C# 這些運算子都是如何表示的呢?            

運算子名稱

C#運算子號

加法

+

減法

-

乘法

*

除法

/

求餘

%

            知道C#基本運算子的表示之後我們該如何去使用呢?那麼我們來看段代碼來看下什麼是運算式。

1    int a = 10; //定義一個整形變數a 值為10 2    int b = 20; //定義一個整形變數b 值為20 3    4    //定義一個變數c 值為變數 a+b 5    int c = a + b; //一組運算子所表述的程式碼片段簡稱運算子 6   7    //定義一個變數c1 值為變數 a1-b1 8    int c1 = a - b; 9   10    //定義一個變數c2 值為變數 a2*b2 11    int c2 = a * b; 12 13    //定義一個變數c3 值為變數 a3/b3 14    int c3 = a / b; 15 16    //定義一個變數c4 值為變數 a4%b4 17    int c4 = a % b; 18 19    Console.WriteLine("a + b = {0}",c); 20    Console.WriteLine("a - b = {0}", c1); 21    Console.WriteLine("a * b = {0}", c2); 22    Console.WriteLine("a / b = {0}", c3); 23    Console.WriteLine("a % b = {0}", c4);

             上段代碼我們主要闡述了兩個知識點,一個是基本運算子加法的使用以及什麼是運算式。那麼我們來分析一下。

             我們來看第五行代碼來看C#中運用基本算數運算子非常簡單,跟我們數學上計算加法一樣,首先看(a + b)等同於(10 + 20)計算完成後將計算結果賦給等號左邊的變數,這樣就完成了一個基本的算數加法運算,那麼進行一個加法運算的代碼描述的程式碼群組合,我們就可以看做是C#中的運算式。

             分析完一個那麼後面的大家一定都可以推出來了吧?那麼我們來看看啟動並執行結果吧

           

            結果是否在你的預料之中呢?

            2.自增運算子與自減運算子

               瞭解完基本運算子之後我們在來看一種很有用的運算子:自增運算付與自減運算子!

運算子名稱

C#運算子號

自增加

++

自增減

--

             那麼自增符號與自減運算子是什麼意思呢? 廢話不多說,看代碼:

1             int a = 1; 2             a++; // a = a + 1 3             int b = a; 4             a--; // a = a - 1 5             int c = a; 6 7             Console.WriteLine("a++ : {0}", b); 8             Console.WriteLine("a-- : {0}", c);

           好的那麼我們在分析一下:

          首先來看第二行a++;自增符號++等於本身加1, 那麼a = 1 ,執行a++後(a 自身加1),a自身的值為2

          那麼在來看第四行a--;自薦符號--等於本身減1,那麼a此時已經等於2,執行a--後(a自身減1),a自身的值為1

          分析完之後還是讓結果來驗證答案吧!

         

      二.  賦值運算子

            看完基本的算數運算子我們在來看一下什麼是賦值運算子,其實在上邊的例子中我們已經使用了賦值運算子,那什麼是賦值運算子,對了就是為變數賦值的符號,也就是我們上邊例子中的等號。

          那麼賦值運算子就只有等號一個嗎?答案錯,C#還為我們提供了一些方便我們簡化運算式的複製運算子,如下表:

運算子名稱

C#運算子號

等號賦值

=

加等號賦值

+=

減等號賦值

-=

乘等號賦值

*=

求餘等號賦值

%=

              那麼這些等號都代表什麼意思呢?其實很簡答,來看一段代碼跟上邊例子坐下比較我們會發現,這些賦值運算子就是幫我們簡化了運算式而已。

1             int a = 10; 2             a = a + 10; //將a 的值賦予 a(10) + 10 3             //運算完成後a = 20 4             Console.WriteLine(" a=a+10; a={0}",a); 5 6             a = 10; //在將a還原回10 7             a += 10; //等同於 a = a + 10; 將a 的值賦予 a(10) + 10 8             //運算完成後a還是等於 20 9             Console.WriteLine(" a+= 10; a={0}", a);

            還是來分析一下:

            1到4行大家一定都可以看明白,那麼直接看地7行,你想對了,其實 a+=10 等同與 a=a+10 只是這個運算子簡化了運算式。 那麼還是用事實來證明吧。

 

      .  運算子優先順序以及括弧的運用

       說完運算子與表達我們來看看運算子之間的優先順序,什麼是優先順序?  其實優先順序就是當我們運算式中出現多個運算子時,應該先執行哪個運算子,就好比數學中的先乘除後加減,那麼C#中也不例外也是先乘除後加減。關於更多的優先順序我不打算在這裡介紹,因為我們完全可以使用括弧來提示運算式的優先順序()。對運算子優先順序感興趣可以參考C#相關書籍。那麼還是用一個例子來描述下C#中加減乘除的優先順序吧!

1             int a = 10 * 2 - 10 / 2 + 3;//那麼根據先乘除後加減的原則我們得到的結果應該是 18 2             Console.WriteLine("10 * 2 - 10 / 2 + 3 結果為:{0}", a);

     那麼還是來分析一下,根據先乘除後加減的法則我們來看:

     首先計算10 * 2  結果是20

     在計算 10 / 2 結果是5

     那麼這個時候 運算式編程 20 - 5 + 3 ,這裡要注意 加和減屬於同一層級運算子所以哪個在前面先運算

     這個時候執行 20 - 5 結果是 15

     在執行 15 + 3 結果為18 繼續用事實來證明我的分析。

    

     那麼好,這個時候我要是想讓10 * 3 在讓2 + 3 在去讓10除怎麼辦? 不知道?代碼告訴你:     

1 int a = 10 * 3 - 10 / (2 + 3);//這個時候()中的運算子優先順序最高所以先執行括弧中的運算式 2             Console.WriteLine("10 * 3 - 10 / (2 + 3) 結果為:{0}", a);

      繼續來分析一下,根據括弧優先順序最高的法則我們來看:

      首先執行(2 + 3) 結果是 5

      在執行 10 * 3  結果為 30

      此時運算式為 30 - 10 / 5 除號優先順序高 先運算除法 運算式為 30 - 2

      那麼結果為28  看真相吧!

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.