天天看点

C#编程入门_表达式和运算符_3

21篇C#博客的配套源码

算术运算符

(+ 加 -减 * 乘 / 除 % 取模 ++ 自增 – 自减)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 运算符和表达式
{
    class Program
    {
        static void Main(string[] args)
        {
            // + = 
            //先计算赋值号的右侧  将右侧的计算结果保存在变量中 
            int ret =  + ;
            Console.WriteLine(ret);
            ret =  - ;
            Console.WriteLine(ret);
            ret =  / ;
            Console.WriteLine(ret);
            //整数除以整数  如果不能整除  计算结果将会是两个整相除的商
            ret =  / ;
            Console.WriteLine(ret);
            //下面的结果也是正确,稍后讲解
            //取整操作 得到的是商
            float retFloat =  / ;
            Console.WriteLine(retFloat);
            Console.WriteLine("retFloat={0}", retFloat);
            double retdouble =  / ;

            Console.WriteLine("retdouble={0}", retdouble);

            /*
             * 除法总结:
             * 整数/整数  得到整数  如果不整除 那么得到的是商
             * float类型的浮点数/整数  得到float类型的浮点数
             * double类型的浮点数/整数  得到double 类型的浮点数
             * 
             * 
             */

            ret =  * ;
            Console.WriteLine(ret);

            //取模操作  也就是得到余数
            ret =  % ;
            Console.WriteLine(ret);
            Console.WriteLine("-----------------------------");
            int num1 = ;
            //num1++;   // 同  num1 = num1 + 1;
            num1 = num1 + ;
            Console.WriteLine(num1);



            Console.WriteLine("*******************************");
            int num2 = ;
            //++num2;  // num2 = num2 + 1;
            num2 = num2 + ;
            Console.WriteLine(num2);

            Console.WriteLine("****num3****");
            int num3 = ;
            //先打印num3的值  再进行加法运算
            Console.WriteLine(num3++);   // 10
            Console.WriteLine("num3={0}",num3);  //11

            int num4 = ;
            //先进行加法运算 然后再打印num4的值
            Console.WriteLine(++num4);


            Console.WriteLine("++++++++++++++++++++++++++++++++");

            int num5 = ;
            //下面的代码等同于 Console.WriteLine(num5++); 
            Console.WriteLine(num5); //10
            num5 = num5 + ;




            int num6 = ;
            //下面的代码等同于  Console.WriteLine(++num6);
            num6 = num6 + ;
            Console.WriteLine(num6);

            /*
             * 总结 :i++  是先使用i 的值  然后在进行i = i+1; 的运算
             * 
             *    ++i 是先进行i=i+1运算  在使用i的值
             */
        }
    }
}
           

赋值运算符

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 赋值运算
{
    class Program
    {
        static void Main(string[] args)
        {
            int num1 = ;
            int num2 = ;
            int ret = num1 + num2;
            Console.WriteLine(ret);


            num1 += num2;  //num1 = num1 + num2;
            Console.WriteLine();
            // 1+ 2 + 3 + 4 +5
            int result = ;
            result += ; // result = result + 1;
            Console.WriteLine(result);
            result += ; // result = result + 2;
            Console.WriteLine(result);
            result += ; // result = result + 3;
            Console.WriteLine(result);
            result += ; // result = result + 4;
            Console.WriteLine(result);
            result += ; // result = result + 5;
            Console.WriteLine(result);

            int num3 = ;
            int num4 = ;
            num3 *= num4; //num3 = num3 * num4;
            Console.WriteLine(num3);


            num3 = ;
            num4 = ;
            Console.WriteLine(num3%=num4);
        }
    }
}
           

位运算

Console.WriteLine(&);
            Console.WriteLine(|);
            Console.WriteLine(~);

            Console.WriteLine(^);
            Console.WriteLine(^);
            Console.WriteLine(^);
            //异或交换

            int num1 = ;
            int num2 = ;
            //13    6      11
            num1 = num1 ^ num2;
            //6     13     11
            num2 = num1 ^ num2;
            //11    13     6
            num1 = num1 ^ num2;

            /*
             * 位运算 总结: 
             * 按位与:全1才为1
             * 按位或:全0才是0
             * 按位非:-(数字+1)
             * 按位异或:相同为0  不同为1
             * 
             * 
             */

            bool ret1 =  <= ;
            Console.WriteLine(ret1);
           
C#编程入门_表达式和运算符_3
C#编程入门_表达式和运算符_3
C#编程入门_表达式和运算符_3
C#编程入门_表达式和运算符_3

算术运算符优先级

算术运算符有很多,我们只需要记住复制号=的优先级最低 小括号的优先级最高()即可,在模棱两可的时候,可以通过加()来避免代码发生歧义