首页 > 程序开发 > 软件开发 > C# >

C#进制的转化、运算符和表达式(+-*/%i++、++i)讲解

2018-01-18

C 进制的转化、运算符和表达式(+-* %i++、++i)讲解。一、进制转化。 总结:* 从十进制转化成其他进制的时候我们使用Convert ToString(十进制数,要转化的进制);

一、进制转化

//总结:

* 从十进制转化成其他进制的时候我们使用Convert.ToString(十进制数,要转化的进制);

* 从其他进制转化成十进制的时候我们使用Convert.ToInt32(其他进制形式的字符串,其他进制数);

* 如果是非十进制之间进行转化,那么要使用 Convert.ToString(十进制数,要转化的进制); 和Convert.ToInt32(其他进制形式的字符串,其他进制数); 进行结合使用,

*换句话说:比如讲二进制转化成八进制 :我们先把二进制转化成十进制,然后再把十进制转化成八进制

二进制转化成十六进制,十六进制转化成二进制

八进制转十六进制,十六进制转八进制 同理

1、//十进制到二进制

stringret = Convert.ToString(96, 2);

Console.WriteLine(ret);

2、//二进制到十进制

intretNum = Convert.ToInt32("1100000", 2);//

Console.WriteLine(retNum);

3、//十进制到八进制

ret = Convert.ToString(96, 8);

Console.WriteLine(ret);

4、//八进制到十进制

retNum = Convert.ToInt32("140", 8);//

Console.WriteLine(retNum);

5、// 十进制到16进制

ret = Convert.ToString(96, 16);

Console.WriteLine(ret);

6、//16进制到十进制

retNum = Convert.ToInt32("60", 16);//

Console.WriteLine(retNum);

7、//将二进制到8位

retNum = Convert.ToInt32("1100000", 2);//二进制到十进制

ret = Convert.ToString(retNum,8); //十进制到八进制

Console.WriteLine(ret);

二、运算符和表达式

1、//先计算右侧,再将右侧的结果保存在变量中

①intret = 12 + 15;

Console.WriteLine(ret);

②ret = 12 - 15;

Console.WriteLine(ret);

注下面:* 除法总结:

* 整数/整数 得到整数 如果不整除 那么得到的是商

* float类型的浮点数/整数 得到float类型的浮点数

* double类型的浮点数/整数 得到double 类型的浮点数

③ ret = 9 / 3;

Console.WriteLine(ret);

④//整数除以整数,如果不能整除,计算结果将会是两个整数相除的商

ret = 18/4;

Console.WriteLine(ret);//输出结果为4

//**注意结果也是正确的,整数除以整数。除不尽也只能是商整数

floatretFloat = 18 /4;

Console.WriteLine(retFloat);//输出结果也为4

⑤//小数除以整数,float格式必须加f

retFloat = 12.56f / 4;

Console.WriteLine(retFloat);

⑥//下面double类型的也是输出小数

doubleretDouble = 12.56 / 4;

Console.WriteLine(retDouble);

⑦ ret = 3 * 9;

Console.WriteLine(ret);

⑧ //取摸操作显示余数

ret = 18 % 4;

Console.WriteLine(ret);

2、

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

* ++i 是先进行i=i+1运算,再使用i的值

//下面①这几行代码和②的效果一样,只是写法不同而已,输出结果也不同

①Console.WriteLine("---------");

intnum1 = 10;

num1++;//num1 =num1 +1;

Console.WriteLine(num1);

Console.WriteLine("------**---");

intnum2 = 10;

++num2;//num2 =num2 +1;

Console.WriteLine(num2);

②//下面几行代码区分++在前还是后,输出结果不同

Console.WriteLine("*******");

intnum3 = 10;

//先打印num3的值再加法运算

Console.WriteLine(num3++);//输出结果10;

Console.WriteLine("num3={0}",num3);//输出结果11

intnum4 = 10;

//先进行加法运算,再打印值

Console.WriteLine(++num4);//输出结果11

③简单还不懂得话细致区分:

A: intnum5 = 10;

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

Console.WriteLine(num5); //10

num5 = num5 + 1;

B:intnum6 = 10;

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

num6 = num6 + 1;

Console.WriteLine(num6);

3、运算的练习

//从控制台输入一个总的秒数,会显示时分秒,

//例如

//输入86496

//输出24小时1分36秒

Console.WriteLine("请输入秒数");

inttime = int.Parse( Console.ReadLine());

inthours = time / (60 *60);

intseconds = time % 60;

intminute = time %(60 *60)/ 60;//先除以3600,就计算出不够一小时了 ,再除以60

Console.WriteLine("{0}小时{1}分{2}秒",hours,minute,seconds);

相关文章
最新文章
热点推荐