C#总结2-1

第一章 开发入门

C#是Microsoft在2000年7月推出.NET Framework的第1版时提供的一种全新语言。C#的快速流行,使之成为使用.NET Framework的Windows和Web开发人员无可争议的语言选择。他们喜欢C#的一个原因是其派生于C/C++的简洁语法,这种语法简化了以前困扰一些程序员的问题。尽管做了这些简化,但C#仍保持了C++原来的功能,所以现在没有理由不从C++转向C#。C#语言并不难,也非常适合于学习基本编程技术。易于学习,再加上.NET Framework的功能,使C#成为开始您编程生涯的绝佳方式。
C#的最新版本3.0是.NET Framework 3.5的一部分,它建立在已有的成功基础之上,还添加了一些更吸引人的功能。其中一些功能取自于C++(至少从表面上看是这样),而另外一些功能是全新的。Visual Studio的最新版本和开发工具的Express系列也有许多变化和改进,这大大简化了编程,显著提高了效率。

a.二进制: 二进制是计算机使用的一种计数方式
b. 指令 : 指令是能够被CPU理解并执行的二进制命令
c. 程序 : 程序,也就是软件,它是指多个指令的有序排列
d.计算机语言发展历程 机器语言 -> 汇编语言 -> 高级语言
e.机器语言 机器语言是能够直接被计算机理解并执行的语言
f.汇编语言 汇编语言使用助记符来替代机器指令
g.高级语言 高级语言更加符合人类的思维习惯
h. 语句 语句是指代码中一句可独立运行的代码
i. 语法 语法是指代码中单词、符号的组合规则(C#语言中的三个基本语法规则:所有的单词,区分大小写;所有的符号都必须是英文符号;所有的语句都必须以分号结束)
2.Code Compile Run
a.code :编码,源代码 ;compile :编译;run:运行。
b.源代码经过编译后,形成了二进制的机器代码,保存在了可执行文件中,然后双击运行该文件,就看到了结果
c.CSC编译器并非直接将源代码编译为机器代码!由于不同CPU能够识别的指令存在差异,操作系统平台的差异性.这就是为什么CSC编译器,不会将源代码直接编译为机器代码的原因.(1.跨机器障碍2.跨平台障碍)
d.C#语言的编译器CSC,为了解决跨机器跨平台的问题,不会将源代码直接编译为机器代码,而是将其编译成中间代码,称为IL。
e.中间代码,既不是源代码,也不是机器代码,你可以把它想象成一种介于源代码与机器代码之间的代码。在阅读难易程度上,它的易读性比源代码高,比机器代码低。.NET可以识别并执行中间代码,它会根据当前的运行环境(CPU和操作系统),将中间代码转换为最合适的平台代码(可以理解为机器代码),交给CPU和操作系统执行。
a.IDE:集成开发环境;不同语言需要不同的开发环境如(java--Eclipse ; HTML--Web storm ;C#--visual studio)
b.C#vs由微软开创,源代码后缀为.cs
c.编写代码步骤:新建项目--开发模版--vsC#--控制台应用程序--F5或启动按钮
d. 默认情况下,VS会将编译结果放到工程下(bin)目录下
a.主函数:程序启动时运行的函数。
b.运行顺序:由函数体从上到下依次运行函数中的每一句代码
a.在控制台输出语句 Console.Write("文本内容"); 向当前位置输出一段文本内容
b. Console.WriteLine("文本内容"); 向当前位置输出一段文本内容并换行

第二章变量和数据类型

2.01数据和数据类型
1. 数据:有用的数据;数据类型:对数据的分类
2. C#语言中数据的分类
a.char数据类型:表示单个文字(汉子.字母数字.标点符号)。书写方式“只能用成对的单引号表示”,也不能表示零个文字,只能表示单个,如'A','2'等
b.string字符串类型:表示不限量的文字也可以为零个。书写方式"只能用成对的英文双引号表示",如"","123"等
c.int整数类型:表示一个整数,没有小数点。书写方式直接书写。如 123 ,0等
d.double小数类型:用于表示包含小数的数字。书写方式直接书写。如0.0,3.0等
2.02认识变量
1认识变量:一块存储数据的内存空间,并且该内存区域的数据可以变化。
2.在代码中使用代码
a. 变量的声明:指定一块内存空间,用于存放数据。语法: 数据类型—变量名。如:1.int number,2.string str等。
b.变量的赋值:将数据存放到变量的内存空间。语法:变量名=数据(將数据赋值给变量),如int number;number=6;等
c.必须要先声明后赋值,如没有赋值变量中没有存放数据,也没有意义。声明中的数据类型和变量的数据要一致;变量名要一直,区分大小写。 如string a;a=1;则是错的
2.03变量命名
1.变量命名:给变量取个名称。
2.变量名的命名规范
a.硬性要求:
1.变量名只能由数字,字母。下划线组成
2.变量名不得已数字开头
3.名称不能与关键字(c#中有特殊用途的单词)相同,如:int , string , char ,double等。 vs中蓝色标记字为关键字
4.同一个函数中变量名不得相同
b.软性要求
1.变量名称要能够望文知意,如:高度:height.
2.变量名首字母要小写
3.除第一个单词外,其他打次首字母要大写;如,string userName;
2.04变量的使用技巧
1.合并声明:对多个同类型的变量声明,可以在一条声明语句是中完成。
2.声明时初始化:在声明一个变量的同时,对变量进行初始化(给某个变量第一次赋值的过程)。
3.变量的三要素:数据类型,变量名,变量值(缺一不可)。
2.05数据运算1
1.数字运算:int(整数),double(小数)的加(+),减(—),乘(*),除(/),求余(%)。数字与数字之间的运算
2.返回类型:与运算结果的数据类型相同。
a.int类型与int类型运算得到int类型,如int3/2;输出结果为1(取整)。
b.double类型与double类型运算得到double 类型。
c.double类型与int类型运算得到double类型。
2.06数据运算2
1.字符串运算:字符串与任意类型之间的运算。支持运算:拼接(+)。字符串1+字符串2输出字符串1字符串2,。
2.返回类型:字符串。如,string S="圆周"+"率";输出圆周率
2.07数据运算案例分析
1.变量值的复制,如;int x=1;int y=x;将x中数字复制到y中。
2.变量值的自增和自减,如;int x=1;x=x+5(自增);x=x-5(自减);
3.多个数据的运算(两个以上数据参与运算),如;int x=1,y=2;x=x+y-1;
4.变量值的交换,需要三个变量参与。
a.第一步将需要交换的数据(x)复制给中间变量(b)。
b.第二步将被交换数据(y)给需交换的数据(x)。
c.第三步将中间变量(b)复制给被交换数据(y)。如, int x=1, y=2;int b=x; x=y; y=b;
2.08输入语言
1.在控制台中获取用户输入的内容
a.程序暂停执行,等待用户输入的内容
b.获取到用户的输入,程序继续执行
2.输入语句的代码书写;Console.ReadLine();。结果返回类型是字符串类型
3.string s=Console.Rendline();
a.将程序暂停,等待用户的输入。
b.用户输入完成并按下回车键,获取用户输入的字符串。
c.然后把该字符串保存到变量s中。
2.09类型转换
1.类型1数据转换成类型2数据,原类型1数据不会改变,类型2为新数据
2.将任意类型转换为string ;转换代码:带转换的数据.Tostring();其中待转换的数据为需要转换的的数据或变量。返回类型为string 。如,int a=10; stringb=a.Tostring();将整数10转换成字符串10.
3. int类型与double类型的互转;
a.取值范围小的数字类型转换到取值范围大的数据类型为隐形转换;及不需要额外的代码,计算机自动转换。如,souble d=102;。
b.取值范围大的数字类型转换到取值小的数据类型为显现转换;及需要额外的代码,计算机不会自动转换。需要注意的是:显性转换(强制转换)有可能造成数据的丢失。如,double a=3.14; int d=(int)a;输出d=3。
4.string字符串转换为数字类型。
a.string转换成int,书写代码是:int.Parse(带转换的字符串);
b.string转换成double,书写代码是:double.Parse(待转换的字符串);
2.10应用-圆形面积周长计算器
子主题 1
2.11转义符
1.c#中双引号表示,string syr="文本内容";字符串的开始和字符串的结束。在代码中书写斜杠(\),用于改变斜杠后出现字符的意义。“表示字符串的开始或结束;\”表示普通的双引号。
2.\'表示单引号;\n表示换行符;\t表示制表符;\\表示斜杠\。
2.12数字类型
1.计算机对小数运算不精确。浮点数有:float(单精度,最多7个有效数字), double(双精度,最多15个有效数字)。
2. 1.23为double 类型,1.23f为float类型,1.23m为decimal类型。
3.数据运用类型原则
a.计算精度要求较高的实数用decimal,如,财务计算系统,科学实验分析等。
b.内存要求苛刻,保证取值范围内用占位较少的类型,如年龄用byte类型
c.如果没有上述的要求,整数用int,实数用double 。
第三章运算符和表达式

3.01认识运算符
1. 运算符:又叫操作符,是一个用于运算的符号(参与运算的数据或变量),如,string a="&"+2*b/c;其中操作数为(a,&,2,b,c)为操作数,而("="+"*"/"")为操作符。
2.按操作数的数量
a.一元(目)运算符,作用于一个操作数,如, 1.string b=(int)a;2.string b=a.ToSting();,转换运算符,调用运算符。
b.二元(目)运算符,作用于两个操作数,如;加,减,乘,除 求余等
c.三元(目)运算符,作用于三个操作数。
3.按运算符的功能
a.算术运算符,用于数学运算。
b.逻辑运算符,用于判断真假。
c.位运算符,用于二进制运算。
d.其他
3.02常见运算符:小括号
功能作用
1.类型转换llong a=1;int b=(int)a;
2.改变运算顺序
3.函数的调用
3.03算术运算符
1.算术运算符用于数字的运算,加(+),减(—),乘(*),除(/), 求余(%),加加(++),减减(——)。
2.书写方式
变量名++
1.计算返回结果,与变量相同。
2.将变量的值自增1。
++变量名
1.计算返回结果,为变量值加1。
2.将变量值自增1。
变量名——
1.计算返回结果,与变量值相同
2.将变量自减1。
——变量名
1.计算返回结果,为变量值减1。
2.将变量值减1。
3.04赋值运算符
1.赋值运算符:=,+=,—=,*=,/=,%=。
2.x +=运算代码;等效于 x=x+(运算代码);x %=运算代码;等效于x=x%(运算代码)
3.不能用于变量的初始化;如int x+=1;则是错的
3.05逻辑运算符
1.逻辑运算符是用于判断条件成立的运算符。用真(条件成立)和假(表示条件不成立)表示判断结果。
2.常见的逻辑运算符有:==(等于),!=(不等于),<(小于),>(大于),<=(小于等于),>=(大于等于),&&(并且),!(非),||(或)。
3.返回类型为bool(布尔)类型,取值范围:true或false。
4.&&需要两个bool类型进行运算,运算的结果,真真为真,其他为假。||两个bool类型进行运算,假假为假,其他为真。!(非)对bool类型数据求反。即:结果为真,取反为假。
3.06三目运算符
1三目运算符,需要三个操作数,参与运算
2.书写方式:操作数1?操作数2:操作数3(其中操作数1为bool类型,操作数2操作数3必须是相同类型)。
3.返回结果,如果操作数1判定为真,则将操作数2作为返回结果。判定为假则将操作数3作为返回结果。
3.07位运算符
1.
3.08表达式
1.表达式,一条有意义的语句,并且该语句至少包含一个操作数和一个操作符,每个表达式都有返回类型。
2.每个表达式都可以与其他表达式进行运算,只要求类型符合要求。如:Console.Write();Console.ReadLine();运算结果为Console.Write(Console.ReadLine());
3.09运算符优先级
1.运算符的优先级,优先级越高的运算符,会有限得到执行,优先级相同的运算符,会从左往右执行。
2.赋值运算,永远最后执行。变量=表达式(先计算表达式的结果,再赋值给变量)。
3数学运算,按照数学中的运算顺序进行,先括号,再乘除,求余,最后加减
4.类型转换和函数调用,先进行函数调用,再进行类型转换。如(int)double.Parse(a);先进行函数调用,将a 转换为double类型,得到double类型的返回结果,将double类型转化成int类型。
5.在逻辑运算时将&&和||符号两端的表达式看作一个整体。(都必须是Bool类型),表达式1&&表达式2。
6.三目运算
7.使用小括号或分书写来控制运算顺序;小括号具有最高优先级,也可以使用小括号将需要优先执行的代码括起来。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/YGZ-321/p/6686263.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值