一、c#简介
1、c#基本框架
二、c#语法基础
1、c#中的关键字
关键字 | 用途 |
---|---|
class | 声明类 |
namespace | 声明“命名空间” |
using | 导入命名空间 |
static | 静态的 |
void | 无返回值 |
string | 字符串类型 |
注:所有关键字都是由小写的字母构成,c#对大小写有明确的区分
2、c#的注释
///文档注释
/多行注释/
//单行注释
3、c#的常量
const double(数据类型) PI(常量名) =3.1415926(数值);
注:常量要在声明时赋值,之后不能修改
4、c#的变量
使用变量需要声明,赋值,使用。
①可以先声明在赋值
int age;
age=18;
②也可以在声明的时候直接赋值
int age=18;
5、c#的数据类型
char | 字符类型 |
---|---|
string | 字符串型 |
int | 整形 |
double | 浮点型 |
bool | 布尔类型 |
6、c#的类型装换
自动类型装换:2种不同类型的数据运算,低精度类型会自动装换为较高精度的类型。
强制类型装换:(int(类型名))3.0=3
7、c#标志符的命名规则
①标志符只能由英文字母、数字和下划线组成,不能包含空格和其他字符。
②变量名不能用数字开头。
③不能用关键字当变量名。
8、c#的运算符
优先级 | 运算符 | 名称或含义 | 使用形式 | 结合方向 | 说明 |
1 | [] | 数组下标 | 数组名[常量表达式] | 左到右 | |
() | 圆括号 | (表达式)/函数名 | |||
2 | (类型) | 强制类型转换 | (数据类型)表达式 | 右到左 | |
++ | 自增运算符 | ++变量名/变量名++ | 单目运算符 | ||
-- | 自减运算符 | --变量名/变量名-- | 单目运算符 | ||
! | 逻辑非运算符 | !表达式 | 单目运算符 | ||
3 | / | 除 | 表达式/表达式 | 左到右 | 双目运算符 |
* | 乘 | 表达式*表达式 | 双目运算符 | ||
% | 余数(取模) | 整型表达式/整型表达式 | 双目运算符 | ||
4 | + | 加 | 表达式+表达式 | 左到右 | 双目运算符 |
- | 减 | 表达式-表达式 | 双目运算符 | ||
5 | > | 大于 | 表达式>表达式 | 左到右 | 双目运算符 |
>= | 大于等于 | 表达式>=表达式 | 双目运算符 | ||
< | 小于 | 表达式<表达式 | 双目运算符 | ||
<= | 小于等于 | 表达式<=表达式 | 双目运算符 | ||
6 | == | 等于 | 表达式==表达式 | 左到右 | 双目运算符 |
!= | 不等于 | 表达式!=表达式 | 双目运算符 | ||
7 | && | 逻辑与 | 表达式&&表达式 | 左到右 | 双目运算符 |
8 | || | 逻辑或 | 表达式||表达式 | 左到右 | 双目运算符 |
9 | = | 赋值运算符 | 变量=表达式 | 右到左 | |
/= | 除后赋值 | 变量/=表达式 | |||
*= | 乘后赋值 | 变量*=表达式 | |||
%= | 取模后赋值 | 变量%=表达式 | |||
+= | 加后赋值 | 变量+=表达式 | |||
-= | 减后赋值 | 变量-=表达式 |
三、c#的条件结构
1、if...else结构
if(...)
{
?...;
}
else if(...)
{
?...;
}
.
.
.
else
{
?...;
}
注:①如果某个分支只包含一条命令,那么是可以省略大括号的。
??②每一个else与前面离它最近的if配对。
??③多个else都与同一个if相近时最内层的else优先配对。
2、switch结构
switch (job(变量名))
{
?case "局长": Console.Write("发双黄月饼"); break;
?case "处长": Console.Write("发蛋黄月饼"); break;
?case "科长": Console.Write("发枣泥月饼");break;
?default: Console.Write("发五仁月饼"); break;
}
注:①switch中的(变量)只能用3种类型:整形int、字符型char、字符串类型string。
??②如果两个case之间没有任何语句,可以不用break,但是两个case之间存在语句块,在该语句块后面一定要包含break语句。
四、c#的循环结构
1、while循环
while (y>0)
{
?Console.Write(y+" ");
?y--;
}
2、do...while循环
do
{
?x++;
?Console.Write(x+" ");
}
while(x>2&&x<=4);
3、for循环
for (int x=1;x<13 ;x++ )
{
?Console.WriteLine(x+" ");
}
注:三种循环都是当循环条件的返回值为false是跳出循环。
五、c#中的数组
1、c#的声明数组和赋值
数据类型[]数组名=new 数据类型[长度];
double []y=new double[3];
注:①数组的索引从0开始递增。
??②数组经过初始化以后,数组元素有默认的初始值,double的类型为0.0,int类型为0,char类型为‘a‘,bool类型为false,string类型为null。
2、数组元素的初始化
char[]a=new char[3];
char[]b=new char[]{‘A‘,‘B‘,‘C‘};
char[]c={‘A‘,‘B‘,‘C‘};
char[]b=new char[3]{‘A‘,‘B‘,‘C‘};
3、数组元素的访问
string[]name=new string[3];
name(数组名)[0(元素下标)]="吴彦彦";
name.Length返回是数组name的元素个数。
4、c#的foreach关键字
foreach(int①(数据类型) x②(迭代变量名) in③ num④(数组名))
①数据类型必须与数组类型相同。
??②变量名需要符合命名规则。
??③in关键字。
??④迭代变量只能读不能写,意思就是迭代变量就是一个常数,不能够进行赋值。
5、二维数组的声明和访问
声明:int[]b=new [,]{{1,2,3},{4,5,6}};
int[,]arr=new int[2,3];
二维数组的元素是一维数组,一维数组的类型要和二维数组类型相同。
六、c#的输出和输入
1、输入
name=Console.ReadLine();
Console.ReadLine()是有返回值得。
2、输出
Console.Write(...+"..."+‘...‘);无换行
Console.WriteLine();有换行
注:输出函数的值之间是有+来连接。函数的首字母要大写。
慕课链接:https://www.imooc.com/learn/422
————————————————