C#学习Day01

2021-05-18 21:20发布

10进制转化成2 8 16进制方法:连除倒取余

如图:


2 8 16进制转化成10进制方法:按权求和

如图:


1.数据类型:

            23,0,-15 整形int,占4个字节


            13.4 浮点数:单精度float,双精度double,高精度decimal

            3.5f 单精度数据后面加f

            3.5 默认是双精度

            3.5m 高精度数据后面加m

            从精确度来看:decimal>double>float

            从取值范围来看:double>float>decimal


            x,y 字符类型:char,用单引号来表示字符,占两个字节

            'x','y','0',''


            zhangsan 字符串:string,用双引号来表示字符串 用双引号引起来

            用双引号引起来的0个/1个或者多个字符,称为字符串

            "0",""," "


            真/假 布尔类型 bool ,占一个字节

            true/false


2.变量和常量:

            常量:程序在运行过程中不变的量. 比如 3,-5,3.5,"zhangsan"

            变量:程序在运行过程中可以改变的量.

            语法格式:类型名 变量名 = 值

            int x = 23;
            float f = 3.5f;
            char zifu = '1';
            string zifuchuan = "芜湖";
            bool woshishuaige = true;

变量命名的规则:

            1.变量名里面只能包含数字(0-9),字母(a-z,A-Z)和下划线(_)

            2.只能以字母和下划线开头

            3.同一个变量名不能够重复定义

            4.不能够使用关键字定义

            5.区分大小写

            6.使用驼峰命名法(第一个单词全部小写,从第二个单词开始,首字母大写),

            score,toralScore

            7.见名知意

            8.

int @age = 23;//

            @只能放在开头但其他命名规则不变


3.算术运算符

            加法:+ 用在字符串之间,其含义是吧两个字符串进行拼接

            Console.WriteLine("giaogiao"+"123"); -->giaogiao123

            如果字符串和其他数据相加,会先把其他数据转化成字符串,然后再和其他的字符串进行拼接

            Console.WriteLine("giaogiao"+123);-->giaogiao123

            除法:/,如果除号两边的数据都是整型,其结果也是整型,直接舍去小数部分

            Console.WriteLine(5/2); -->2

            取余:%

            Console.WriteLine(5%2);-->1


练习题:9368通过代码分别得到千位/百位/十位/个位上的数字

            int thousand = 9368 / 1000;
            int hundred = 9368 % 1000 / 100;
            int ten = 9368 % 100 / 10;
            int unit = 9368 % 10;
            Console.WriteLine("9368的千位数字是:" + 9368 / 1000);
            Console.WriteLine("9368的百位数字是:" + (9368 % 1000) / 100);
            Console.WriteLine("9368的十位数字是:" + (9368 % 100) / 10);
            Console.WriteLine("9368的个位数字是:" + 9368 % 10);

            ++把变量的值自增1 --把变量的值自减1

            a++;++a;++在前先++ ,++在后后++ --同理

            由变量或者常量和运算符组成的式子成为表达式,表达式都会有一个结果,这个结果称为返回值


4.符合运算符

            a+=b 等于 a=a+b

            += -= *= /= %= 一样

            语句:是程序运行的最小单位,通常是以";"号为结束标志


5.基本的输入和输出

输出:

            //Console.Writeline(),Console.Write,前者是打印并自动换一行,后者只打印不换行

            //1.只输出一个数据

            int shuju1 = 10;

            Console.WriteLine(23);

            Console.WriteLine(shuju1);

            Console.WriteLine(shuju1+23);

            //2.输出两个数据

            Console.WriteLine(10+","+23);

            //3.格式化输出,即输出的数据可以带有一定格式  {0}{1}是索引号 索引号从0开始 

            Console.WriteLine("{0},{1:p0},{2:f3}",1,0.2,0.1234);-->1,20%,0.123

            Console.WriteLine();//不输出数据,照样换一行


输入:

            Console.Read()从键盘上读取数据,读取了字符的ASC码值
            int res = Console.Read();
            Console.WriteLine(res); //输入1 输出49 1的ASC值为49 回车为13 换行为10
            Console.ReadLine()读取从键盘上输入的字符串,以回车作为结束标志,同时把回车键以后的字符从输入流清空
            string input = Console.ReadLine();
            Console.WriteLine(input)


6.数据类型转换

隐式转换:

            //把一个取值范围小精确度低的数据赋值给取值范围大精确度高的变量,此过程进行了隐式转换 例如:shut转int float转double

            int a1 = 10;

            float a2 = a1;


强制类型转换

            1.数值之间的转换,使用强制类型转换符:(类型)

            a1 = (int)23.5f;

            2.把任何数据转成字符串

            string str = 123 + "";

            str = a1.ToString();

            3.把字符串转成数值类型

            a1 = int.Parse("123");//parse解析 只能用字符串去转

            Console.WriteLine(a1+1);

            4.通用写法

            a1 = Convert.ToInt32(23.5f);

            str = Convert.ToString(123);

            a1 = Convert.ToInt32("123");


练习

            //1.从键盘上输出数据
            Console.WriteLine("请输入第一个数据:");
            string s1 = Console.ReadLine();
            Console.WriteLine("请输入第二个数据:");
            string s2 = Console.ReadLine();
            //2.进行加减乘除运算
            float num1 = Convert.ToSingle(s1);
            float num2 = Convert.ToSingle(s2);
            //3.把得到的结果输出出来
            Console.WriteLine("加:{0},减:{1},乘:{2},除:{3},", num1 + num2, num1 - num2, num1 * num2, num1 / num2);
            int num3 = 0;
            try
            {
                //把有可能出现异常的代码放在try里面,如果代码出现异常,则运行catch里面的代码,否者只运行try里面的代码
                string str1 = Console.ReadLine();
                num3 = Convert.ToInt32(str1);
                Console.WriteLine(num3);
            }
            catch (Exception bug)
            {
                //当try里面代码有异常时,bug里保存的是异常的信息
                Console.WriteLine(bug);
                Console.WriteLine(num3);
                Console.WriteLine("程序报错拉!");

            }
            //try和catch一定要同时存在,finally可有可无
            finally
            {
                //不管有没有问题 finaly里的代码都会运行
                Console.WriteLine("hello world");
            }