C# 复习笔记1
Posted iqyqqqqqq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 复习笔记1相关的知识,希望对你有一定的参考价值。
初识编程
- 1946 世界第一台电子计算机诞生
- 20世纪70年代,人们设计出了高效灵活的C语言,在此基础加入面向对象技术形成C++语言
- 由于C++的高度灵活性,我们必须忍受艰苦的学习过程和漫长的开发周期,而且内存泄露和缓冲区溢出的痼疾,迫求一种新的语言,以图在开发能力和学习难度之间取得更好的平衡,C#诞生
- C# :简洁,特性(Attribute)、属性(Property)、委托(Delegation)、可空类型(Nullable Type),垃圾回收机制(Garbage Collection)、异常处理(Exception Handling)、安全类型(Type-safe)
变量
- 变量
static void Main(string[] args)
int a = 1;
int b = 2;
int add = a + b;
Console.WriteLine("0+1 = 2", a, b, add);
- 实型变量:float 、double、decimal ,字节数:4、8、16, int、long,字节数:4、8
- var关键字:隐式类型,使用关键字同时必须初始化变量
- 变量命名 :camelCasing(驼峰式)命名
- const 常量相比变量好处:const常量只能在声明的时候赋值,在程序运行过程中不能改变它的值,因此const常量不但使程序易于维护,而且大大增强了程序的健壮性,一般常量名均为大写,单词之间用下划线分隔。
运算符和表达式
- 算术运算符、自增自减运算符、赋值运算符、位运算
流程控制
- 1966年,计算机科学家C.Bohm和G.Jacopini在数学上证明,只需要三种控制结构就能写出所有程序,他们分别是顺序结构、选择结构和循环结构。
- if语句,建议不管分支中有几条语句都添加花括号
- switch语句只适合于离散型的分类,而if语句离散型和连续型都可以
switch(测试量)
case 常量1: ....; break;
case 常量2: ....; break;
...
case 常量n; ....; break;
default: ....; break;
- break:跳出switch结构,跳出循环结构;continue:跳出本次循环
枚举、结构体和数组
- 枚举:字符串映射到数字,增强数字的可读性
enum WeekDays Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday
- 结构体
- 所有定义类型的代码都应在主函数之外
- 数组:int[]、int[,]、int[][]
函数
- 重复代码缺点:代码重复、结构不清晰、不利于修改和升级
- 函数命名:PascalCasing(帕斯卡式)命名
- 参数值传递和引用传递、引用型参数和输出型参数
- out输出型参数只能用来从函数返回结果,而不能用来向函数传递数据,在函数结束前,必须为out型参数赋值。
static double CalculateCircle(double r, out double c)
c = 2 * Math.PI * r;
double S = Math.PI * r * r;
return S;
static void Main(string[] args)
double radius = Convert.ToDouble(Console.ReadLine());
double circumference;
double area = CalculateCircle(radius, out circumference);
- 可选参数
static double VolumeOfColumn(double r, double h = 1, double pi = 3.14)
double v = pi * r * r * h;
return v;
static void Main(string[] args)
VolumeOfColumn(3);
VolumeOfColumn(3,2);
VolumeOfColumn(3,2,3,1412);
- 变量作用域:局部变量(在函数内部定义的变量,只在该函数内部有效,它的作用域从定义的地方开始,直到函数结束为止。当调用函数时,变量在内存中创立,当退出函数时,变量从内存中清除,因此称为局部变量)
- 程序块中的局部变量
以上是关于C# 复习笔记1的主要内容,如果未能解决你的问题,请参考以下文章
C#复习笔记--C#2:解决C#1的问题(进入快速通道的委托)