C#从入门到精通____4.2运算符

4.2.1算术运算符

+、—、*、/、%
加、减、乘、除、取余
1.加法运算符

 static void Main(string[] args)
        {
            int M1 = 927;			//声明整型变量M1,并赋值为927
            int M2;				//声明整型变量M2
            M2 = M1 + M1;			//M2的值为M1与M1相加之后的值
            Console.WriteLine(M2.ToString());
            Console.Read();
        }

程序运行结果为1854
M++和++M同C语言
2.减法运算符

static void Main(string[] args)
        {
            decimal R1 = (decimal)1112.82;	//声明整型变量R1,并赋值为1112.82
            decimal R2 = (decimal)9270.81;	//声明整型变量R2,并赋值为9270.81
            decimal R3;				//声明整型变量R3
            R3 = R2 - R1;			//R3的值为R2减去R1得到的值
            Console.WriteLine(R3.ToString());
            Console.Read();
        }

程序运行结果为8157.99
M–和--M同C语言
3.乘法运算符

static void Main(string[] args)
        {
            int ls1 = 10;			//声明整型变量ls1,并赋值为10
            int ls2 = 20;			//声明整型变量ls2,并赋值为20
            int sum;				//声明整型变量sum
            sum = ls1 * ls2;			//使sum的值为ls1和ls2的乘积
            Console.WriteLine(sum.ToString());
            Console.Read();
        }

程序运行结果为200
4.除法运算符

static void Main(string[] args)
        {
            int shj1 = 45;			//声明整型变量shj1,并赋值为45
            int shj2 = 5;			//声明整型变量shj2,并赋值为5
            int ls;				//声明整型变量ls
            ls = shj1 / shj2;			//使ls的值为shj1除以shj2得到的值
            Console.WriteLine(ls.ToString());
            Console.Read();
        }

程序运行结果为9
5.求余运算符

static void Main(string[] args)
{
	int I1 = 55;				//声明整型变量I1,并赋值为55
	 int I2 = 10;				//声明整型变量I1,并赋值为10
	int I3;					//声明整型变量I3
	I3 = I1 % I2;				//使I3等于I1与I2求余运算之后的值
	Console.WriteLine(I3.ToString());
	Console.Read();
}

程序运行结果为5
在使用Math类的DivRem方法时,可以用Math.DivRem(I1,I2,out I3),

4.2.2赋值运算符

赋值运算符为变量、属性、时间等元素
符号有=、+=、-=、*=、/=、%=、&=、|=、^=、<<=、>>=等
赋值运算符左操作数必须为变量、属性访问、索引器访问或时间访问类型的表达式
在这里插入图片描述
例4.8:创建一个控制台应用程序,声明int类型变量i,并初始化为927,通过加赋值运算符改变i的值,增加112

static void Main(string[] args)
{
	int i = 927;					//声明一个int类型的变量i并初始化为927
	 i += 112;					//使用加赋值运算符
	Console.WriteLine("最后i的值为:{0}", i);	//输出最后变量i的值
	 Console.ReadLine();
}

程序运行结果为:1039

4.2.3关系运算符

==、>、<、!=、>=、<=、
1.等于运算符

static void Main(string[] args)
{
    decimal L1 = 1981.00m;			//声明decimal类型变量L1
	decimal L2 = 1982.00m;			//声明decimal类型变量L2
    bool result;				//声明bool类型变量result
//使result等于L1和L2进行相等运算后的返回值
result = L1 == L2;
Console.WriteLine(result);			//输出运行结果
Console.ReadLine();
}

程序运行结果为false
2.不等运算符

static void Main(string[] args)
        {
            decimal S1 = 1981.00m;			//声明decimal类型变量S1
            decimal S2 = 1982.00m;			//声明decimal类型变量S2
            bool result;				//声明bool类型变量result
            bool result1;				//声明bool类型变量result1
            result = S1 != S2;				//获取不等运算返回值第一种方法
            result1 = !(S1 == S2);			//获取不等运算返回值第二种方法
            Console.WriteLine(result);			//输出结果
            Console.WriteLine(result1);			//输出结果
            Console.ReadLine();
}

程序运行结果为
true
true
3.小于运算符

static void Main(string[] args)
{
            int U1 = 1112;			//声明整型变量U1
            int U2 = 927;			//声明整型变量U2
            bool result;			//声明bool型变量result
            //使result等于U1和U2进行小于运算的返回值
            result = U1 < U2;
            Console.WriteLine(result);		//输出结果
            Console.ReadLine();
}

程序运行结果为false
4.大于运算符

static void Main(string[] args)
{
            int F1 = 18;			//声明整型变量F1
            int F2 = 8;				//声明整型变量F2
            bool result;			//声明bool型变量result
            //使result等于F1和F2进行大于运算的返回值
            result = F1 > F2;
            Console.WriteLine(result);		//输出结果
            Console.ReadLine();
}

程序运行结果为true
5.小于等于运算符

static void Main(string[] args)
{
            int X1 = 12;			//声明整型变量X1
            int X2 = 9;				//声明整型变量X2
            bool result;			//声明bool型变量result
            //使result等于X1和X2进行小于或等于运算的返回值
            result = X2 <= X1;
            Console.WriteLine(result);		//输出结果
            Console.ReadLine();
}

程序运行结果为true
6.大于等于运算符

static void Main(string[] args)
{
            int T1 = 1112;			//声明整型变量T1
            int T2 = 927;			//声明整型变量T2
            bool result;			//声明bool型变量result
            //使result等于T1和T2进行大于或等于运算的返回值
            result = T2 >= T1;
            Console.WriteLine(result);		//输出结果
            Console.ReadLine();
}

程序运行结果为false

4.2.4逻辑运算符

对两个表达式执行布尔逻辑运算
分为按位逻辑运算符和布尔逻辑运算符
按位逻辑运算符是对两个整数表达式的相应位执行布尔逻辑运算,有效的整数型是有符号或者无符号的int和long类型
布尔逻辑运算符是对两个布尔表达式执行布尔逻辑运算

  1. 按位“与”运算符
static void Main(string[] args)
{
int num1 = 1;				//声明一个整型的变量num1  00000001
int num2 = 85;			//声明一个整型的变量num2  01010101
//00000001
bool iseven;				//声明一个bool类型的变量iseven
iseven = (num1 & num2) == 0;			//获取两个变量“与”运算后的返回值
Console.WriteLine(iseven);		//输出结果
Console.ReadLine();
}

程序运行结果为false
2. 按位“或”运算符

static void Main(string[] args
{
int num1 = 1;			//声明一个整型的变量num1
int num2 = 85;			//声明一个整型的变量num2
int iseven;				//声明一个整型的变量iseven
iseven = (num1 | num2);		//获取两个变量“或”运算后的返回值
Console.WriteLine(iseven);		//输出结果
Console.ReadLine();
}

程序运行结果为85
3. 按位“异或”运算符

static void Main(string[] args)
{
int num1 = 1;			//声明一个整型的变量num1
int num2 = 85;			//声明一个整型的变量num2
int iseven;				//声明一个整型的变量iseven
//获取两个变量“异或”运算后的返回值
iseven = (num1 ^ num2);
Console.WriteLine(iseven);		//输出结果
Console.ReadLine();
}

程序运行结果为84
4. 布尔“与”运算符

static void Main(string[] args)
{
bool Bls = false;			//声明一个bool类型变量Bls
int Inum = 20;		//声明一个整型变量Inum
bool result;			//声明一个bool类型变量result
result = Bls & (Inum < 30);		//获取布尔“与”运算后的返回值
Console.WriteLine(result);		//输出结果
Console.ReadLine();
}
程序运行结果为false
  1. 布尔“或”运算符
static void Main(string[] args)
{
bool Bls = false;				//声明一个bool类型变量Bls
int Inum = 20;					//声明一个整型变量Inum
bool result;						
//声明一个bool类型变量result
result = Bls | (Inum < 30);			//获取布尔“或”运算后的返回值
Console.WriteLine(result);			//输出结果
Console.ReadLine();
}

程序运行结果为true
6. 布尔“异或”运算符

static void Main(string[] args)
{
bool Bls = true;					//声明一个bool类型变量Bls
int Inum = 20;						//声明一个整型变量Inum
bool result;						//声明一个bool类型变量result
result = Bls ^ (Inum < 30);			//获取布尔“异或”运算后的返回值
Console.WriteLine(result);			//输出结果
Console.ReadLine();
}

程序运行结果为false

4.2.5移位运算符

  1. 左移运算符
    用来将一个数的各二进制位全部左移若干位,高次位缺失,低次位以0来填充
static void Main(string[] args)
{
uint intmax = 4294967295;				//声明uint类型变量intmax
uint bytemask;							//声明uint类型变量bytemask
bytemask = intmax << 8;					//使intmax左移8次
Console.WriteLine(bytemask);			//输出结果
Console.ReadLine();
}

程序运行结果为:4294967040
过程如下:4294967295换算为二进制为11111111111111111111111111111111,左移8位后变成11111111111111111111111100000000,转换为10进制为4294967040
2. 右移运算符
用来将一个数的各二进制位全部右移若干位

static void Main(string[] args)
{
uint intmax = 4294967295;			//声明uint类型变量intmax
uint bytemask;					//声明uint类型变量bytemask
bytemask = intmax >> 16;			//使intmax右移16次
 Console.WriteLine(bytemask);			//输出结果
Console.ReadLine();
}

程序运行结果为:65535
过程如下:4294967295换算为二进制为11111111111111111111111111111111,右移16位后变成1111111111111111,转换为10进制为65535

4.2.6其他特殊运算符

1.is运算符
用于检查变量是否为指定变量,如果是,返回真;如果不是,返回假

static void Main(string[] args)
{
int i = 0;			//声明整型变量i
bool result = i is int;		//判断i是否为整型
Console.WriteLine(result);	//输出结果
Console.ReadLine();
}

程序运行结果为false
2.条件运算符 (?:)
根据布尔型表达式的值返回两个值中的一个:
如果条件为true,则计算第一个表达式并以他的计算结果为准;
如果条件为false,则计算第二个表达式并以他的计算结果为准
例4.24创建控制台应用程序,判断a/b的值是否为2,若等于2则返回true,不是则返回false

static void Main(string[] args)
    {
    Console.Write("请输入一个年份:");				//屏幕输入提示字符串
    string str = Console.ReadLine();				//获取用户输入的年份
	 int year = Int32.Parse(str);				//将输入的年份转换成int类型
    //计算输入的年份是否为闰年
    bool isleapyear = ((year % 400) == 0) || (((year % 4) == 0) && ((year % 100) != 0));
    //利用条件运算符输入“是”或者“不是”
    string yesno = isleapyear ? "是" : "不是";
    Console.WriteLine("{0}年{1}闰年", year, yesno);		//输出结果
    Console.ReadLine();
}

输入2019,程序运行结果为false
3.new运算符
创建一个新的类型实例:
对象创建表达式,用于创建一个类类型或者值类型的实例
数组创建表达式,用于创建一个数组类型的实例
代表创建表达式,用于创建一个新的代表类型的实例
例4.25:创建一个控制台应用程序,用new运算符创建一个数组,向数组中添加项目,然后输出数组中的项

static void Main(string[] args)
{
 	string[] ls = new string[5];				//创建具有5个项目的string类型数组
    ls[0] = "ls1";						//为数组第一项赋值
    ls[1] = "ls2";						//为数组第二项赋值
    ls[2] = "ls3";						//为数组第三项赋值
    ls[3] = "ls4";						//为数组第四项赋值
    ls[4] = "ls5";						//为数组第五项赋值
    Console.WriteLine(ls[0]);					//输出数组第一项
    Console.WriteLine(ls[1]);					//输出数组第二项
    Console.WriteLine(ls[2]);					//输出数组第三项
    Console.WriteLine(ls[3]);					//输出数组第四项
    Console.WriteLine(ls[4]);					//输出数组第五项
    Console.ReadLine();
}

程序运行结果为:
Ls1
Ls2
Ls3
Ls4
Ls5
4.typeof运算符
用于获得系统原型对象的类型,就是type对象。Type类包括关于值类型和引用类型的信息。
例4.26创建一个控制台应用程序,利用typeof运算符来获取引用整型的信息,并输出结果

static void Main(string[] args)
{
Type mytype = typeof(string);			//获取引用类型的信息
Console.WriteLine("类型:{0}", mytype);		//输出结果
Console.ReadLine();
}

程序运行结果为:
类型:System.Int32

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值