黑馬程式員——C語言——基本運算

來源:互聯網
上載者:User

標籤:

基本運算分為:算術運算,賦值運算,自增自減運算,關係運算,邏輯運算,三目運算。

一、 算術運算

      1、加法運算:用“+”號表示,還可以表示正數

      2、減法運算:用“—”號表示,還可以表示負數

      3、乘法運算:  用“*”而不是“x”表示

      4、除法運算:  用“/”而不是“÷”表示(整數除以正數,結果仍然是整數)

      5、取餘運算: 用“%”號表示,兩側都是整數,並且最後的加號或減號由%左側的整數決定。

      6、類型轉換:

         ①   自動類型轉換

                int a = 10.6;

                int b = 10.5 + 1.7;

              自動將大類型轉換為了小類型,會丟失精度

         ② 自動型別提升

             int b = 10.5 + 10;

              將右邊的10提升為了double類型

              double b = 1.0 / 2;

              解決除法的精度問題

        ③  強制類型轉換

            double a = (double)1 / 2;

            double b = (double)(1 / 2);

算術運算代碼舉例如下:

           

 1 #include <stdio.h> 2  3 int main() 4 { 5     //1.算數運算子的基本使用 6     int a = 10 + 1 + 2 - 3 + 5; 7      8     int b = -10; 9     10     int c = 10 * b;11     12     int d = 10 / 2;13     14     // 取餘運算(模運算)15     // %兩邊都是整數16     // %取餘結果的正負性只跟%左邊的數值有關17     int e = 10 % -3;18     printf("%d\n", a);19     printf("%d\n", b);20     printf("%d\n", c);21     printf("%d\n", d);22     printf("%d\n", e);23     24     // 自動類型轉換(double->int)25     int m = 10.8;26     27     // 強制類型轉換(double->int)28     int n  = (int) 10.5;29     printf("%d\n",m );30      31     32     // 自動型別提升(int->double)33     double x = 10.6 + 6;34 35     double y = 1 / 3;36     37     double z = (double)3/2;38     39     printf("e的值是%f\n", z);40     41     42     return 0;43 }

啟動並執行結果為:

二、賦值運算

     1、 簡單賦值

             

 1 #include <stdio.h> 2  3 int main() 4 { 5     //簡單賦值 6     int a = 10; 7      8     int b; 9      b= 6;10     return 0;11 }

     2、 複合賦值

         

1     // 複合賦值運算2     a += 5; // a = a + 5;3     4     a *= 5; // a = a * 5;5     6     a += 5 + 6 + 4; // a = a + (5 + 6 + 4);

三、 自增自減運算

  自增運算子++,例如(a++,++a);自減運算子,; // a -= 1; a = a - 1; 13

四、 關係運算

    1、 真假性。在C語言中,條件成立為“真”,條件不成立為“假”,並且規定“0”表示假,任何其他非零值都表示真。

    2、 關係運算的運算結果:關係運算的結果只有兩種,即真假。條件成立,為真,預設值為1;不成立,為假,預設值為0

    3、 特別注意:

       ①  關係運算子的優先順序低於算術運算子

       ②  關係運算子中==、!=的優先順序相等,<、<=、>、>=的優先順序相等,且前者的優先順序低於後者

       ③  關係運算子的結合順序是從左至右。

關係運算代碼如下:

 1 #include <stdio.h> 2  3 int main() 4 { 5    6     int a = 10; 7      8     int b = 11; 9     10     // 條件成立就返回1,真11     // 條件不成立就返回0,假12     int result = b >= a;13     14     printf("%d\n", result);15      16    17 }

五、邏輯運算

     1、 邏輯與(表示符號&&)

          “條件A&&條件BB”

            當條件A和條件B都成立時,結果為真,即值為1,否則為假

           例如

1     邏輯與 條件1 && 條件22     3      int a  =  10>3 && 7<6;4     5     int a = 0 && 10;6     7     printf("a=%d\n", a);

     2、 邏輯或(表示符號||)

           “條件A||條件B”

            當條件A和條件B只要一個成立時,結果為真,即值為1,否則為假

            例如

 

 1 // 邏輯或 條件1 || 條件2 2      3      4     int a = 10; 5     int b = 10; 6      7     int c = (a<5) || (b++ - 10); 8      9     // a = 1010     // b = 1111     // c = 012     printf("a=%d, b=%d, c=%d\n", a, b, c);

      3、 邏輯非(表示符號 !)

         “!條件A”

        對條件A進行取反:若條件A成立,結果就為假,即值為0,否則為真。

 1  // 邏輯非 !條件 2     // 如果條件成立,就返回0;如果條件不成立,就返回1 3      4      5      6     7     int a = !!10; 8      9     printf("a=%d\n", a);10   11     

六、三目運算子

      三目運算子,運算格式: 條件 ? 數值1 : 數值2

1 // 三目運算子  條件 ? 數值1 : 數值22 3 int a = !100 ? 9 : 89;4 5 printf("a=%d\n", a);

 

黑馬程式員——C語言——基本運算

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.