//附加
//c#源码,被c#编译器,编译成中间代码(IL)
//int 16=short···正负32000;
//int 32=int···正负21亿;
//int 64=long···正负922亿3372万亿
//IndexOf···LastindexOf······返回若为-1,表示没有找到
//强制转换···parse···convent
//转义字符···\···转义整句@
//加号在遇到字符串类型时是拼接作用
//一个等号是赋值
// 两个等号是真正的等号
//Datetime类,值类型···因为有加减运算
//decimal d = 3.14m;//在写代码是,默认输入小数为double类型
// float d = 3.14f;
//分支语句中,switch case
//switch case可以直接转换为if else 形式
//if else不可能全部转换成switch case
//switch 后面的小括号不接受小数类型的值
//case 后面的值,必须是常量或常量名,不能是变量
//const int a = 2;
//变量名的命名规则
//A-Z··a-z··0-9··组成
//数字不能放在开头,变量名中间不允许有空格
//变量名不能使用关键字:int for true;
//数组···引用类型
//语句的分类
//顺序 选择 循环
//选择:if(){}
//if(){}else{}```````二选一
//if(){}else if(){}else{}
//if的嵌套···在大情况里面包含小的情况,分清主次
//switch() { case```每一个case都需要有break}
//循环语句:
//for(;;){}···初始条件,循环条件,循环体,状态改变
//while(){···状态改变}
//do{}while()···先去执行,然后再看满足不满足
//循环的解题类型:穷举,迭代
//穷举:把所有的情况都走一遍,使用if筛选出满足条件的情况
//迭代:根据结果不断求解中间情况,直至得到初始结果
//截取字符串··substring(a)从a索引开始截取,一直截取到最后
//substring(a,b)从a开始索引,截取b个长度
//判断是否包含contsins()``bool类型
//IndexOf···LastindexOf······返回若为-1,表示没有找到
//Math
//去四舍五入Round
//特殊情况:在奇数.5的情况取上限ceiling
//在偶数.5的情况取下限Floor
//Math.Round(3,5);
//数组:一维数组,二维数组,三维数组
//索引从0开始
//一维数组,看成一行
//二维数组,看成表格样式
//三维数组,看成楼房
//冒泡排序,for循环的嵌套
//函数:
//1.void hs(){}··无返无参
//2.void hs(int a){}··无返有参
//3.int hs(){return 1;}··有返无参
//4.int hs(int a){return 1;}··有返有参
//out 可以取回多个值