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#,复习)