C#笔记01——注释、进制、基本数据类型、量和输入输出函数

一、注释

1.单行注释

使用方法:行首加 ” //“;

VS2019中的快捷键(以后如果不特加说明都是VS2019): 注释(CTRL+E,C); 取消注释(CTRL+E,U); 

2.多行注释

使用方法:在需要注释的行用  “/*    */” 包裹;

注:多行注释不能嵌套使用!

 

二、进制

1.二进制(0-1)0b/BIN、八进制(0-7)0/OCT、十进制(0-9)DEC、十六进制(0-9  A-F)0x/HEX

 

2.进制之间的转换

1>  十进制转其他进制(连除倒取余)

  直到商为0为止;

2>  其他进制转十进制(按权求和)

  eg:0b 11011

  1*24+1*23+0*22+1*21+1*20 = 27

  0x5C

  5*161+12*160 = 92;

  O 65

  6*81+5*80 = 53;

3>  二进制转换十六进制(需要用到8421法则--在后面有补充)

  四位一分割,然后转换为10进制(8421分割)再对应即可  

  eg:   0b  111000101 转十六进制

   0001 |  1100 | 0101

    1       8+4     4+1

    1          12        5

       1          C         5

  0x 3CB  转 二进制   8421

  3     |C        |B

  3      12       11

  2+1  8+4  8+2+1

  0010  1100  1011

补充:8421法则

    二进制的4位对应十六进制的1位,二进制的4位分别对应8421

    23  22  21  20

    8    4    2    1

    对数用8421这几个数进行拼凑,每个数只能用一次,用到的数在下面写1,没有用到的就写0,最后列出来即可;

    例如十六进制的3是2+1;那么2和1 下面就是1,8和4下面就是0,写出来就是0011;

 

三、基本数据类型

数据类型的存在就是为了让我们能够更好的管理数据,系统内存,防止内存空间的浪费或者造成数据丢失。

系统开辟空间以字节(Byte)为单位

1T = 1024G = 1024*1024M = 1024*1024*1024KB = 1024*1024*1024*1024B

1Byte = 8bit

 

补充:

对于有符号最高位代表符号位,0为正,1为负;

求字节数:sizeof;字符使用单引号引起,只能存放一个字符;字符串要用双引号引起;

 

 

四、常量和变量

常量:在程序运行期间不可以改变的量

 

变量:在程序运行期间可以改变的量, 变量的实质就是开辟存储空间

 1 变量的定义:

1> 隐式定义  必须赋初始值

var num = 10;

 

 var 它可以自动的根据所赋的值分配字节,所以必须要赋初始值

2> 显式定义

语法: 数据类型    变量名 [ =   数值; ]

int scores; //开辟一个空间
scores = 10//存储数据
int MyAge  = 20; //开辟完空间之后直接存数据

float cores = 98.7F //  C#默认小数类型为double,要将小数定义为float类型需要在数值后面加F/f
decimal price = 100.3M // demical 类型数据后面都需要加M/m

 

 

 

 补充:

变量名命名规则:

1.见名知意;

2.驼峰命名,第一个单词首字母小写,后面的单词首字符都大写;

3.只能以数字、字母下划线和@组成,但是不能以数字开头;

4.如果有@符号, @符号必须放在最前面;

5.变量必须先定义后使用;

6.变量名不可以重复定义;

 

五、运算符

1.赋值运算符 ’=‘,将’=‘右边的赋值给左边;

2.算数运算符 ‘+,-,*,/,%,++(自增),--(自减)

"/"  想要得到小数,除号两边的数至少要有一个为小数;否则进行地板式除法,小数后面的数直接会被舍掉;

"%"  取余,求余结果的正负号只和'%'符号左边的数有关和右边的无关;

int num1 = 1, num2 = 2; // num1 % num2 = 1
int num1 = -1, num2 = 2; //num1 % num2 = -1
int num1 = -1, num2 = -2; //num1 % num2 = -1
int num1 = 1, num2 = -2; //num1 % num2 = 1

 

 

"++"  "++"在前:先自增再打印, "++"在后:先打印再自增

int num1 = 1;
int num2 = num1++; // 等同于: int num2 = num1; num1 += 1;
Console.WriteLine("num1 = {0}, num2 = {1}", num1, num2);
// num1 = 2, num2  = 1
int num3 = num1++ + ++num1;
Console.WriteLine("num3 = {0}", num3);
// num3 = 4; '+'号左边先使用1,然后num1自增为2; '+'号右边num1先自增为3然后使用,最后结果为4;

 

 

补充:

类型转换:

1> 低类型向高类型转换: 自动转换

short num = 20;
int num1 = num;
char num2 = '0';
int num3 = num2; // char类型是一个特殊的整型;

 

2> 高类型向低类型转换:需要强制转换--在数值前加'(数据类型)'

int num5 = (int)10.6; // 会直接将小数点后面的数全部省去,地板式擦除;num5 实际的值为10
char num4 = (char)num3;

 

 

表达式

不能独立运行(程序最小只能以语句执行, 语句的结尾必须有分号),是由常量变量和运算符组成的式子;  单独的变量和常量也是一个表达式.

 

六、基本输入和输出

输出:

1> 连接输出

2> 格式化 / 用占位符输出

语法:   Console.WriteLine("{数字:格式字符}[,{数字:格式字符}....]", 参数0[,参数1...);

{数字:格式字符} 表示占位符,数字表示最后输出参数几, 格式字符表示最后输出形式, 例如小数输出想要时限制位数: {0:f2}  注意: '{}' 里的冒号前后不能有空格!

!!! 要注意大括号里面的数值要对应后面的参数位置!(也即是说假设大括号里面最大的数值为n,那么参数的个数最少为n+1) -- 下标必须从0开始. 

 

 

int num1 = 20, num2 = 30;
float num3 = 24.7546346f;
 // 换行输出
Console.WriteLine();
 // 不换行输出
Console.Write();
// 连接输出
Console.WriteLine(" " + num1 + num2); // 前面有"" ,后面的'+' 表示为连接, 如果没有或者" " 在后面则 '+' 表示运算;
// 占位符输出
Console.WriteLine("num1 = {0}, num2 = {1}, ", num1, num2); // 使用占位符打印,{num}为占位符, ',' 最后输出的时候占位符会替换',' 后面的参数. 
Console.WriteLine("num3 = {0:f2}", num3); // num3 = 24.75

 

 

输入

函数:  Console.ReadLine()  注:这个只能接受String类型

想要转换需要用到  类型.Parse()  或者  Convert.To类型  函数

string str1 = Console.ReadLine(); // 出入字符串类型的数据
// 字符串转型--1     类型.Parse   只能将字符串类型的进行转换
int num = int.Parse(str1);
// 2   Convert.To类型    函数  可以将任何类型转换成任何类型
Convert.ToInt32(234.3f);
Convert.ToDouble(233);

 

函数  Console.Read()   只能接受一个字符,而且会输出它对应的十进制

 

posted @ 2019-11-25 18:20  Skylareer  阅读(467)  评论(0)    收藏  举报