C#基础笔记
1.1、预备知识
-
2020年6月微软发布c#开发语言
-
.NET计划——是微软进军互联网的庞大计划,c#——该计划中旗帜性的开发语言
单词 | 释义 |
---|---|
Microsoft | 微软 |
Visual Studio | 可视化开发工具 |
Program | 程序 |
Programming | 编程 |
C# | 一种编程语言 |
.NET | 一种基于互联网的开发平台 |
.NET Framework | .NET框架、组件 |
Common Language Runtime(C LR) | 公共语言运行时 |
Framework Class Library(F CL) |
1.3、什么是程序、程序设计?
-
程序是一系列指令的集合
-
程序设计就是对这些指令、步骤的编排和优化
1.4、编程语言的发展历程
-
机器语言
-
汇编语言
-
高级语言
1.5、什么是C#?
C#(读作“ C sharp ”)是微软公司在2000年6月发布的一种新的编程语言,C#是一种类型安全的、现代的、简单的,由C和C++衍生出来的面向对象的编程语言。
1.6、C#的运用领域
C#以用来开发桌面应用程序、web应用程序、RI A应用程序(Silver light)和智能手机应用程序。可以说是当前应用领域最广、最全面的高级开发语言。
1.7、数据声明是.NET?
Microsoft .NET 是微软公司的一组软件技术,.NET 代表一个集合,一个环境,一个可以作为平台支持下一代Internet的可编程结构。
1.8、.NET Frame work框架
-
公共语言运行库(简称C LR)
-
.NET Frame work类库
1.9、C#和.NET的关系
-
.NET框架是微软公司推出的一个全新的编程平台。
C#就其本身而言只是一种语言,是一种完全符合公共语言规范的语言,能够与其它.NET语言进行互操作。
-
C#与.NET 的关系体现在两方面
C#的设计目标就是用来开发在.NET 框架中运行的代码,因此.NET 框架是C#程序的运行环境。
C#的编程库是.NET 框架类库,即C#的数据类型和操作类都来自于.NET类库。
第二章、踏上C#之旅
2.1、专业单词
释义 | |
---|---|
using | 使用或导入 |
System | 系统 |
name space | 命名空间 |
class | 类 |
static | 静态 |
void | 无返回值 |
Main | C#的主函数 |
Console | 控制台 |
Write Line | 换行输出函数 |
Write |
2.2、常用浮动窗口
-
解决方案资源管理器窗口:提供项目及其文件的组织视图。
-
错误列表窗口:为错误代码提供即时的提示和可能解决的方法。
-
输出窗口:提供项目的生成情况。
2.3、第一个C#程序
//输出“Hello World”
- Console.WriteLine("Hello World");
2.4、C#中的输出函数
C#中,输出信息到控制台是由Console这个类中的函数来完成的,它们分别是:
-
Console.WriteLine()函数:向控制台输出信息并换行
-
Console.Write()函数:向控制台输出信息不换行
输出的内容可以是字符串(内容放在双引号中输出),也可以是小数、整数等其他形式。
2.5、输出函数示例
输出空行:
- Console.WriteLine();
输出字符串:
- Console.WriteLine("学习C#要练习、练习、再练习");
不换行输出整数:
- Console.WriteLine(199);
换行输出小数:
- Console.WriteLine(0.89);
2.6、输出函数中使用转义字符
在输出信息时,除了上面的列举信息之外,还有以右斜杠“\”开头的转义字符。通过转义字符,可以控制输出信息的格式或输出一些特殊的内容。
如:
- Console.WriteLine("我喜欢的音乐在:\"我的电脑F:\\音乐\"文件夹下");
- Console.WriteLine("\t1.巴黎\n");
- Console.WriteLine("\t2.东京\n");
上面用到的转义字符有:\t空格、\n换行、\\输出一个右斜杠
2.7、命名空间、类、Main()函数
-
C#程序的结构是命名空间包含类,类包含函数
-
命名空间:相当于一个个文件夹,这些文件夹里存放着不同的文件(类)。
namespace
用来自定义一个命名空间using
用来导入命名空间 -
类:C#用类来封装代码,由
class
关键字定义,类文件的后缀名是 .cs -
Main函数:static void Main 是一个全局静态函数,又叫主函数。它指示编译器从此处开始执行程序,相当 于程序的入口。
2.8、语法元素
-
语句
-
注释
-
关键字
-
标识符
-
括号
-
空白字符
2.9、提高代码质量的准则
-
布局、书写清晰
-
标识符命名规范、合理
-
养成良好的注释习惯
第三章、C#的数据类型
3.1、专业单词
释义 | |
---|---|
object | 对象 |
sbyte | 有符号字节型 |
byte | 无符号字节型 |
int | 有符号整型 |
short | 短整型 |
long | 长整型 |
float | 单精度浮点型 |
double | 双精度浮点型 |
decimal | 高精度浮点型 |
bool | 布尔型 |
char | 字符型 |
string |
3.2、C#的数据分类
-
值类型与引用类型
-
值类型:更加轻巧、运行更高效,值类型的数据存储在内存的堆栈(简称栈)中,效率很高,但不太灵活,只能分配固定大小的数据类型。
-
引用类型:是构建C#应用程序的对象类型数据,必须在托管堆中(简称堆)为引用类型变量分配内存,然后将指向堆中地址的指针放在栈中。堆可以处理比较复杂的、可分配任意大小的数据,虽然灵活胆效率稍低。
-
-
整数类型代表一种没有小数点的整数数值,属性值类型数据,存储在栈中。
整数类型 说明 范围 sbyte 8为(bit)有符号整数 -128~127 short 16位有符号整数 -32768~32767 int 32位有符号整数 -2^31~2^31-1 long 64位有符号整数 -2^63~2^63-1 byte 8位无符号整数 0~255 ushort 16位无符号整数 0~65535 uint 32位无符号整数 0~2^32-1 ulong 64位无符号整数 0~2^64-1 -
浮点类型
浮点类型存储小数,同样属于值类型
浮点类型 说明 精度 范围 float 32位单精度浮点数 7 -3.4 *10^38~3.4 *10^38 double 64位双精度浮点数 15/16 -1.7* 10^308~1.7* 10^308 decimal 128位高精度浮点数 28 -7.9* 10^28~7.9* 10^28 注意:一般小数默认是double类型,如果想指定该值为float类型,在其后加上后缀F(或f);要想指定为 decimal类型,小数后面加上后缀M(或m)。
-
-
更多C#数据类型
类型 | 说明 | 范围 |
---|---|---|
bool(布尔) | 表示true或false | true或false |
char(字符) | 表示一个16位的Unicode字符串 | char |
string(字符串) | 表示一个Unicode字符串 | string |
object(对象) | C#的基类,其它所用类型都是由他派生而来的 |
第四章、变量、常量
4.1、专业单词
释义 | |
---|---|
variable | 变量 |
Read | 输入并返回第一个字符对应的ASCII码值 |
ReadLine | 输入并返回字符串 |
Parse | 转换 |
const |
4.2、什么是变量?
在程序的运行过程中随时可以发生变化的量,代表一块内存空间。通过变量可以在内存中存/取一个数据。
-
变量具有以下特征:
-
变量中可以存放单词、数值、日期、属性等内容。
-
变量里面存储的值是可以变化的,可以对变量反复赋值、使用。
-
每个变量都有自己的数据类型,他的值必须与类型相符。
-
变量只能在有效的范围内使用
-
-
变量的使用步骤
-
声明变量:根据数据的类型开辟内存空间。
-
初始化变量:将数据初始值存入内存空间。
-
访问变量:读取变量的值或重新为变量赋值。
-
变量的声明
语法:数据类型 变量名;或数据类型 变量1,变量2……;
- 例:string name;或double height,weight,money;
变量的初始化
语法:变量名=值
- 例: name="小强"
- int sum=10;
- double lenght=100,width=50,height=30;
变量的访问
- 例:int sum=100;
- int a=sum;
- Console.WriteLine(a);
-
格式化输出字符串
输出时,在字符串中使用变量的值,就需要在字符串之间用{索引号}来表示。这叫用代替参数格式化字符 串。
语法:“{N[,M] [:格式化字符串]}”
-
{}:表示在输出字符串中插入变量
-
N:是代替参数,表示输出变量的序号,从0开始以1依次递增,逗号之后你可以使用相应的值来代替这些参数 里的值。
-
[,M]:可选项,表示输出变量所占字符个数
-
{:格式化字符串}:可选项
-
-
为变量重新赋值
同一个变量不能重复定义,但可以对其重新赋值,并在程序中多处重复使用。
- 例:
- byte age=20;
- ConsoLe.WriteLine("我今年"+age+"岁");
- age=21;
- ConsoLe.WriteLine("我明年{0}岁"age);
-
局部变量的作用域
-
变量的作用域是指可以访问该变量的代码区域,也就是能够获取或者设置这个变量值的区域。
-
局部变量的作用域:是声明变量的语句块内,位于声明变量之后的区域。
-
同名的局部变量不能在同一作用域内声明两次,否则会出现编译错误。
-
4.3、C#中的输出
-
Read Line输入函数
-
C#中的输入主要是用Console类的Read Line函数完成的。Read Line()函数用于向控制台进行输入操作,直到遇到Enter键才返回一个字符串。
- 例: string name=Console.ReadLine();
-
是用Read Line函数时,用户输入的任何数据都将当做字符串string返回;如果需要将用户输入的当做其他类型,则必须将返回的字符串转型。
-
4.4、两种常用的转换语法
-
string 转int 型:int 变量名 =int .Parse(字符串)
-
string 转 double 型:double 变量名 =double. Parse(字符串)
- 例:
- double price=double.Parse(Console.ReadLine);
- int count=int.Parse(Console.ReadLine);
4.5、什么是常量
常量用于在整个程序中将数据保持同一个值,相对于变量来说常量的值是不可更改的。C#支持三种常量:
-
字符常量
-
符号常量
-
枚举常量
-
符号常量
-
符号常量:与变量相似,也是代表内存地址的名称。不同的是,符号常量的值在定义之后不能更改。
-
符号常量也需要先定义再使用,声明方法与变量相似,唯一区别就是在声明变量的语法前面加上关键字const,并且在声明时就必须初始化。
- 语法:
- const 数据类型 常量名称 =值;
-