C#基础语法

开发工具与关键技术:C#                       

作者:吴锦华      ;年级:20    ;撰写时间:2021   年 8月  28

文献编号:                归档时间:   年   月   日

C#基础语法~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

开发工具与关键技术:C#

作者:吴锦华

撰写时间:2021/8/28

1.C#基本数据类型

数据类型主要用于指明变量和常量存储值的类型,C# 语言是一种强类型语言,要求每个变量都必须指定数据类型。

1、数据类型分类

C# 语言的数据类型分为值类型引用类型

值类型中包括:

1.整型 2.浮点型 3.字符型 4.布尔型 5.枚举型

引用类型包括:

1.类 2.接口 3.数组委托 4.字符串

2、整型类型

整型所谓整型就是存储整数的类型,按照存储值的范围不同,C# 语言将整型分成了 byte 类型、short 类型、int 类型、long 类型等,并分别定义了有符号数和无符号数。

整型类型的分类、占用内存大小以及最大可表示范围如下图所示:

其中sbyte中的s字母是取自 signed 单词中的首字母,代表有符号;

ushort,uint,ulong中的u字母是取自 unsigned 单词中的首字母,代表无符号。

类 型

取值范围

sbyte

有符号数,占用1个字节,-27〜27-1

byte

无符号数,占用1个字节,0〜28-1

short

有符号数,占用2个字节,-215〜215-1

ushort

无符号数,占用2个字节,0〜216-1

int

有符号数,占用4个字节,-231〜231-1

uint

无符号数,占用4个字节,0〜232-1

long

有符号数,占用8个字节,-263〜263-1

ulong

无符号数,占用8个字节,0〜264-1

3、浮点型

浮点型是指小数类型,浮点型在 C# 语言中共有两种,一种称为单精度浮点型,

一种称为双 精度浮点型。二者表示的精度范围不同。

在 C# 语言中默认的浮点型是 double 类型。如果要使用单精度浮点型,需要在数值后面 加上 f 或 F 来表示,例如 123.45f、123.45F。

类 型

取值范围

float  

单精度浮点型,占用4个字节,最多保留7位小数  

double

双精度浮点型,占用8个字节,最多保留16位小数

举例如下:  double dValue = 1234.45;      float fValue = 1234.45f;

C#中还有一种精度更高的浮点类型:decimal类型,它占16个字节

decimal类型专门用于进行财务计算,使用decimal类型提供的28位的方式取决于用户。 要把数字指定为decimal类型,可以在数字的后面加上字符M或(m)

举例如下: decimal d=12.30M;

4、字符型

字符型只能存放一个字符,它固定占用两个字节,能存放一个汉字。 字符型用 char 关键字表示,存放到 char 类型的字符需要使用单引号括起来,例如 'a'、'中' 等。 举例如下: char c = 'A';

注意:字符型只能使用单引号。 双引号代表字符串类型。

5、布尔类型

C# 语言中,布尔类型使用 bool 来声明,它只有两个值,即 true 和 false。

当某个值只有两种状态时可以将其声明为布尔类型,例如,是否同意协议、是否购买商品等。

布尔类型的值也被经常用到条件判断的语句中,例如,判断某个值是否为偶数、判断某个日期是否是工作日等。

例如: bool isModify = false; //是否变更。

6、字符串类型

字符串类型能存放多个字符,它是一个引用类型。

在字符串类型中存放的字符数可以认为是没有限制的,因为其使用的内存大小不是固定的而是可变的。

使用 string 关键字来存放字符串类型的数据。字符串类型的数据必须使用双引号括起来,例如 "abc"、"123" 等。

举例如下: string strValue = "我是一个字符串";

7、转义字符

在 C# 语言中还有一些特殊的字符串,代表了不同的特殊作用。由于在声明字符串类型的数据时需要用双引号将其括起来,那么双引号就成了特殊字符,不能直接输出,转义字符的作用就是输出这个有特殊含义的字符。

常用的转义字符如下表所示。

转义字符

等价字符

\ 

单引号

\

双引号 

\\ 

\0

反斜杠

\a

警告(产生蜂鸣音)

\b

退格

\f

换页  

\n

换行 

\r

回车

\t

水平制表符

\v

垂直制表符

举例如下:string testValue = "我叫\'张三\',\n我来自海边。";

二、C#中的注释和命名规范

1、注释

注释一般都以下两种作用:

1.说明当前代码的作用以及意义。

2.暂时去掉不用代码,让其不参与编译。

C#中包含三种注释:

1)单行注释

使用两个斜杠代表其后内容是注释部分。

举例如下:

 

2)多行注释

使用/* */ 代表多行注释,期间的所有内容都是注释部分。

举例如下:

 

3)文档注释

文档注释一般多用于类和方法的前面,说明该类和方法的作用以及意义。

举例如下:

在方法或者类的前一行打出三个斜杠,VS自动添加文档注释。

C#基础语法_第1张图片

Tips:

平时写代码时也要有为代码添加注释的习惯。这样写出来的代码不仅美观,更容易维护。

2、命名规范

命名规则是为了让整个程序代码统一以增强其可读性而设置的。

常用的命名方法有两种:

Pascal 命名法(帕斯卡命名法):每个单词的首字母大写

Camel 命名法(驼峰命名法):第一个单词小写,从第二个单词开始每个单词的首字母大写

1) 变量的命名规则

变量的命名规则遵循 Camel 命名法,并尽量使用能描述变量作用的英文单词。例如存放学生姓名的变量可以定义成 name 或者 studentName 等。另外,变量名字也不建议过长,最好是 1 个单词,最多不超过 3 个单词。

2) 常量的命名规则

为了与变量有所区分,通常将定义常量的单词的所有字母大写。例如定义求圆面积的 n 的值,可以将其定义成一个常量以保证在整个程序中使用的值是统一的,直接定义成 PI 即 可。

3) 类的命名规则

类的命名规则遵循 Pascal 命名法,即每个单词的首字母大写。例如定义一个存放学生信息的类,可以定义成 Student。

4) 接口的命名规则

接口的命名规则也遵循 Pascal 命名法,但通常都是以 I 开头,并将其后面的每个单词的首字母大写。例如定义一个存放值比较操作的接口,可以将其命名为 ICompare。

5) 方法的命名规则

方法的命名遵循 Pascal 命名法,一般采用动词来命名。例如实现添加用户信息操作的方法,可以将其命名为 AddUser。

三、变量和常量

1、变量

变量(Variable)是 C# 编程中不可缺失的内容,使用变量可以更容易地完成程序的编写。

变量可以理解为存放数据的容器,并且在将值存放到变量中时还要为变量指定数据类型。

定义变量的语法如下:

数据类型 变量名;

数据类型 变量名 = 初始值;

注意:

对于未初始化的变量,其内容无法确定,所以无法进行直接输出显示,需要设置值之后再进行输出。

举例如下:

C#基础语法_第2张图片 

2、常量

常量也是用来存储数据的容器,在定义时都需要指明数据类型。

唯一的特点是:存放的值不允许改变。

常量需要使用关键字const进行修饰。

常量一般全部使用大写。

举例如下:

 

【实例1】分别求圆的面积和周长,并使用常量存放 π 的值,将 π 的值定义为3.14。

C#基础语法_第3张图片

执行上面代码,效果如下图

C#基础语法_第4张图片

四、运算符

C#语言包含6种类型的运算符:算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符。

1、算数运算符

算术运算符算术运算符是最常用的一类运算符,包括加法、减法、乘法、除法等。

如下表所示:

运算符

说 明 

+ 

对两个操作数做加法运算 

-

对两个操作数做减法运算  

* 

对两个操作数做乘法运算

/

对两个操作数做除法运算 

%

对两个操作数做取余运算

这里需要强调的是:

1)当对两个字符串类型的值使用 + 运算符,代表的是两个字符串值的连接,例如 "123"+"456" 的结果为 "23456" 。

2)当使用 / 运算符时也要注意操作数的数据类型,如果两个操作数的数据类型都为整数,那 么结果相当于取整运算,不包括余数;而两个操作数中如果有一

个操作数的数据类型为浮点 数,那么结果则是正常的除法运算。

3)当使用 % 运算符时,如果两个操作都为整数,那么结果相当于取余数。经常使用该运算 符来判断某个数是否能被其他的数整除。

举例如下:

计算一个整数的个位数字和十位数字。

C#基础语法_第5张图片

 

2、关系运算符

关系运算符在条件判断中经常使用的一类运算符,包括大于、小于、不等于、大于等于、小于等于等符号。

关系运算符比较的返回结果是一个bool类型的值。

如下表所示:

运算符

说 明

== 

表示两边表达式运算的结果相等,注意是两个等号  

!=

表示两边表达式运算的结果不相等   

>

表示左边表达式的值大于右边表达式的值

<

表示左边表达式的值小于右边表达式的值

>=

表示左边表达式的值大于等于右边表达式的值

<=

表示左边表达式的值小于等于右边表达式的值

举例如下:

C#基础语法_第6张图片

3、逻辑运算符

逻辑运算符主要包括与、或、非等,它主要用于多个布尔型表达式之间的运算。

如下表所示:

运算符

含义

说 明

&&

逻辑与 

如果运算符两边都为 True,则整个表达式为 True,否则为 False;如果左边操 作数为 False,则不对右边表达式进行计算,相当于“且”的含义 

||

逻辑或

如果运算符两边有一个或两个为 True,整个表达式为 True,否则为 False;

如果左边为 True,则不对右边表达式进行计算,相当于“或”的含义   

!

逻辑非

表示和原来的逻辑相反的逻辑 

4、位运算

位运算,通常是指将数值型的值从十进制转换成二进制后的运算,由于是对二进制数进行运

算,所以使用位运算符对操作数进行运算的速度稍快。

位运算包括与、或、 非、左移、右移等。

如下表所示:

运算符

说 明

& 

按位与。两个运算数都为 1,则整个表达式为 1,否则为 0;也可以对布尔型的值进行比较,相当 于“与”运算,但不是短路运算

|

按位或。两个运算数都为 0,则整个表达式为 0,否则为 1;也可以对布尔型的值进行比较,相当

于“或”运算,但不是短路运算

~

按位非。当被运算的值为 1 时,运算结果为 0;当被运算的值为 0 时,运算结果为 1。该操作符不能用于

布尔型。对正整数取反,则在原来的数上加 1,然后取负数;对负整数取反,则在原来的数上加 1,然后

取绝对值

^

按位异或。只有运算的两位不同结果才为 1,否则为 0 

<<

左移。把运算符左边的操作数向左移动运算符右边指定的位数,右边因移动空出的部分 补 0

>>

有符号右移。把运算符左边的操作数向右移动运算符右边指定的位数。如果是正值,左侧因移动空出的部

分补 0;如果是负值,左侧因移动空出的部分补 1

>>>

无符号右移。和 >> 的移动方式一样,只是不管正负,因移动空出的部分都补 0

5、赋值运算符

赋值运算符中最常见的是等号,除了等号以外还有很多赋值运算符,它们通常都是与其他运算符连用起到简化操作的作用。

如下表所示:

运算符

说 明

=

x=y,等号右边的值给等号左边的变量,即把变量 y 的值赋给变量 x 

+=

x+=y,等同于 x=x+y  

-=

x-=y,等同于 x=x-y

*=

x*=y,等同于 x=x*y

/=

x/=y,等同于 x=x/y

%=

x%=y,等同于 x=x%y,表示求 x 除以 y 的余数

++

x++ 或 ++x,等同于 x=x+1

--

x-- 或 --x,等同于 x=x-1 5、

6.特殊运算符

特殊运算符包含自增运算符,自减运算符和条件运算符。

如下表所示:

运算符

说 明

++

x++ 或 ++x,等同于 x=x+1

--

x-- 或 --x,等同于 x=x-1 

?:

布尔表达式 ? 表达式 1: 表达式 2 

7、运算符优先级

在表达式中使用多个运算符进行计算时,运算符的运算是有先后顺序的,所以定义了运算符

之间的优先级,来判断哪些操作优先计算。

运算符优先级如下表所示:

优先级由高到低依次往下。

运算符

说 明

.(点)、()(小括号)、[](中括号)

从左到右

+ (正)、-(负)、++ (自增)、--(自减)、~

(按位非)、!(逻辑非)

从右到左 

*(乘)、/ (除)、% (取余)

从左向右 

+ (加)、-(减)

从左向右

<<、>>、>>>

从左向右

<、<=、>、>=

从左向右

==、!=

从左向右

&

从左向右 

|

从左向右

^

从左向右

&&

从左向右

||

从左向右

?:

从右到左

=、+=、-=、*=、/=、%=、&=、|=、^=、~=、<<=、>>=、>>>=

从右到左

结合性是指具有相同优先级的多个运算符同时存在时,系统执行计算时的方向。

举例如下:

C#基础语法_第7张图片

五、流程控制语句

1、 判断语句

判断语句中包含if语句、switch...case语句以及三目运算符。

C#基础语法_第8张图片

C#基础语法_第9张图片

注意:

a.switch中的表达式是一个常量表达式,必须是一个整型或枚举类型,且值不可以相同。

b.使用三目运算符时尽可能的使用括号和空格,使得表达式看起来清晰明了。

2、 循环语句

C#基础语法_第10张图片

 C#基础语法_第11张图片

 C#基础语法_第12张图片

3.循环控制语句

 C#基础语法_第13张图片

 C#基础语法_第14张图片

goto语句的优缺点:

1.最方便且效率最高

2.使程序层次不清,且不易阅读,难以维护

以上为我的C#基础语法内容,希望对每一位读者都有所帮助,同时我也期待有读者发表建议对我的内容补充和修改。后续能总结出比较完善的文献论文。

你可能感兴趣的:(c#)