进制
进制:进位机制(进位方法)。基数:也叫底数,基数为n,代表n进制。
位权:从个位开始向左依次编号为0,1,2...,分别代表n进制的几次方。
计算机中常见的进制:二进制、八进制、十六进制和十进制为了区别不同进制的数,八进制以0开头、十六进制以0x开头
注意:二进制以 00开头;八进制以0开头;十六进制以0x开头
十进制转x进制:连除倒取余;
x进制转十进制:按权求和:
如:将001010转成十进制
0*2^0+1*2^1+0*2^2+1*2^3=10;
基本数据类型
含有的字节大小
bool 逻辑值(真/假) 1
sbyte 有符号8位整数 1
byte 符号8位整数 1
short 有符号16位整数 2
ushort 符号16位整数 2
int 有符号32位整数 4
uint 符号32位整数 4
long 有符号64位整数 8
ulong 符号64位整数 8
char 16位字符类型 2
float 32位单精度浮点类型 4
double 64位双精度浮点类型 8
decimal 128位 精度浮点数 16
string 字符串
声明变量和赋值
类型修饰符 变量名 =初始值;
例如:int age=23;
变量命名禁忌
只能由数字、字母、下划线或@组成,并且数字不能开头,@只能用在开头。
不可以与系统保留字同名。
不能使用重复的变量名(C#大小写敏感)。
见名知意(规范)
骆驼命名法,第一个单词小写,后面单词的首字母大写
转义字符
\n 换行
\\ 打印\
\" 打印"
\' 打印'
格式化输出(占位符)
格式:Console.Writeline("x,{0},xxx{1},x{2}x",a,b,c);
{0:fn} 保留小数位
f 默认保留两位小数 n=保留的小数的位数
{0:00.000} 可保留自定义保留内容,可以为整数部分
{0:pn} 转化为百分数并保留n位小数
类型转换
隐式转换
例如:int age=10;
double sum=age;
条件:
1.数据要兼容,都是值类型;
2.从取值范围小的往大的转;
强制转换
从取值范围大的转换成取值范围小的,会丢失精度
使用变量名进行的强转
double a=10.43f;
float b=(float)speed;
括号内是需要强制转换成的类型,括号左是待强制转换的变量。
使用parse进行强转
int a=int.parse(console,readline());
将string强制转化成int
使用ConvertTo进行强转
string a="1234";
int b=convert.toint16(a);
常用于convert.tochar
int a=console.read();
char A=convert.tochar((int)a);得到ACSII码对应的内容