第二章C语法基础.ppt

上传人:sccc 文档编号:5988746 上传时间:2023-09-11 格式:PPT 页数:85 大小:1.06MB
返回 下载 相关 举报
第二章C语法基础.ppt_第1页
第1页 / 共85页
第二章C语法基础.ppt_第2页
第2页 / 共85页
第二章C语法基础.ppt_第3页
第3页 / 共85页
第二章C语法基础.ppt_第4页
第4页 / 共85页
第二章C语法基础.ppt_第5页
第5页 / 共85页
点击查看更多>>
资源描述

《第二章C语法基础.ppt》由会员分享,可在线阅读,更多相关《第二章C语法基础.ppt(85页珍藏版)》请在三一办公上搜索。

1、第二章 C#语法基础,变量、常量和表达式分支循环过程和函数,C#,是在C、C+的基础上创立的一种新的语言。继承了C+的优异功能,去除了在.NET环境中没有用处的类型定义、模板等功能易于使用效率大大提高,为什么选择C#,有C+的强大性和灵活性有Java语言的简洁性有Delphi和VB的易用性是一种易于使用、功能强大、表达力丰富的全新的程序设计语言,并且现在很多的大型网站都在使用C#进行程序设计,变量、常量和表达式,变量,变量用于存储程序中需要处理的数据。我们可以把变量看作是在内存中存储数据的盒子。为一种数据类型定义的变量就不能存放另一种数据类型的数据,C#是大小写敏感的,即大写和小写字母认为是不

2、同的字母。例如变量名something,Something,SOMETHING都是不同的名字。命名变量名要遵守如下的规则:通常由字母、数字、下划线构成,第一个字符必须是字母或下划线。中间不能有空格不能是C#关键字。变量名不要与C+中的库函数名、类名和对象名相同。不要太长,一般不超过31个字符为宜。,变量的命名,数据类型,C#所使用的任何一个变量都必须有一个数据类型。C#的数据类型分为值类型(Value Type)和引用类型(Reference Type)两大类。值类型包括简单类型(Simple Type)、结构类型(Struct Type)和枚举类型(Enum Type)3种。引用类型包括数组

3、类型(Array Type)、代表类型(Delegate Type)、接口类型。,整数类型,整数类型的变量的值为整数。计算机的存储单元是有限的,所以计算机语言提供的整数类型的值总是在一定的范围之内。C#中有九种整数类型,这些整数类型在数学上的表示以及在计算机中的取值范围如表2-1所示。,整数类型,使用整型数据,实型,实数类型,实数在C#中采用两种数据类型来表示:单精度(float)和双精度(double)。它们的区别在于取值范围和精度不同。单精度:取值范围在正负1.5*10-45到3.4*1038之间,精度为七位。双精度:取值范围在正负5.0*10-324到1.7*10308之间,精度为15-

4、16位。,使用实型数据,decimal类型,是一种特殊的实数类型,它的精度是固定的,可以保存1.010-287.91028范围内的值。主要用于财务计算。decimal类型的数据的后缀是M或者m,例如12.3m,而与它相对应的.NET系统类型是System.Decimal 小数类型和浮点类型之间无隐式转换,如进行强制性置式转换将会产生数据丢失,因此一般不在一个表达式中同时使用这两种数据。,char类型,所谓字符就是用单引号括起来的一个字符,例如A、a、等等都是字符实际存储的并不是一个字符,而是一个字符的Unicode编码值。给一个变量赋值的语法为:char mychar=M;也可以直接通过十六进

5、制或者Unicode赋值。char mychar=x0034;/mychar=4char mychar=u0039;/mychar=9,转义字符,使用字符类型,把char类型数据当成整数类型使用,string类型,string类型就是字符串类型。它是由一系列字符组成的。所有的字符串都是写在双引号中的,例如“this is a book.”和“hello”都是字符串。A和A有本质的不同,使用字符串类型数据,bool类型,取值只能是true或者false(必须用小写的形式)bool类型对应的.NET系统类型是System.Boolean。,使用bool类型,object类型,在C#中,所有的类型都

6、可以被看成是对象,而object类型正是对象类型,是所有其它类型的基础类型。object类型对应的.NET系统类型是System.Object。,日期数据,在C#中也可以使用DateTime类型来存储日期 DateTime类型有两个属性Today属性用于获取当天的日期;Now属性用于获取计算机上当前日期和本地的时间。,使用DateTime类型,运算符,赋值运算符算术运算符比较运算符逻辑运算符位运算符,赋值运算符,=意思是把等号后边的值赋值给等号前面的变量,算术运算符,使用算术运算符进行计算,在表达式中使用+运算符,与算术运算符结合的赋值运算符,比较运算符,使用比较运算符,逻辑运算符,使用逻辑运

7、算符,常量,常量就是指在程序中直接给出的数值、字符或字符串。几个特别的常量null:当一个变量的值是null时,它表示这个变量的值不是有效数据。true:表示真。false:表示假。true和false通常用于条件语句。符号常量,表达式,表达式是一个或多个运算的组合。每个符合C#规则的表达式的计算都是一个确定的值。对于常量、变量的运算和对于函数的调用都可以构成最简单的表达式。,数据类型之间的转换,隐式转换显式转换,隐式转换,指在数据转换的过程是自动进行的,不需要程序进行任何额外的工作。在隐式转换过程中,必须保证转换是发生在转换不会导致任何精度的损失时才能进行隐式转换,否则不允许。,C#可以实现

8、的隐式转换,显式转换,显式类型转换又称为强制类型转换。它告知C#的编译器必须要进行这种类型转换,如果发生数据精度的损失也在所不惜,那么C#的编译器就会按照程序的要求进行相应的数据类型的转换。原则 不能在数值类型和bool值之间进行转换。不允许转换的结果超出数据类型的表示范围。,不允许进行的强制类型转换,ToString实现把数据转换成字符串,Convert类实现数据转换,Convert类ToBoolean方法的使用,构造类型,数组,数组是C#一种构造类型,数组中的每一个元素都属于同一个数据类型。int myArray=new int5;int,my2DArray=new string3,4;,

9、使用一维数组和二维数组,结构,将所有相关的数据项(这些数据项的数据类型可能完全不同,称为域)组合在一起,形成一个新的数据结构,称为结构 struct 结构名public 数据类型 域名;.;结构中使用“.”运算符访问一个结构变量的各个域,称为域运算符。,计算一个三角形的面积,枚举,如果一个变量的值只能有几种可能,那么就可以使用枚举类型。使用这种方法,可以把变量的取值一一列出,变量只能在所列的范围内取值。enum WeekDay:bytesun,mon,tue,wed,thu,fri,sat;,使用枚举类型数据,控制结构,顺序结构,顺序结构是指程序中的每一条语句都是顺序执行的,不存在分支、循环和

10、跳转。,分支结构,在分支结构中,可以根据一个表达式的值进行判断,并根据判断的结果执行不同的程序代码块。分支结构通常与顺序结构结合在一起使用。实现分支结构的方法有两种if语句switch语句,if语句,if(表达式)语句;if(表达式)语句1;else 语句2;(1)格式3:if(表达式1)语句1;else if(表达式2)语句2;else if(表达式3)语句3;else 语句n;,例子1,例子2,switch语句,使用switch语句,循环,while循环do-while循环for循环foreach-in循环,while循环,while(表达式)语句;首先计算“表达式”的值,如果“表达式”的

11、值为bool类型的true或者非0的数,那么就执行后面的“语句”,否则就执行while语句后面的代码。,使用while循环,do-while循环,do语句;while(表达式);先执行“语句”,然后再计算“表达式”的值,如果“表达式”的值为真,那么就再执行“语句”,否则执行do-while语句后面的语句,用do-while,for循环,for(表达式1;表达式2;表达式3)语句;首先执行“表达式1”,然后求解“表达式2”,如果“表达式2”的值为true或者为非0,那么就执行“语句”,此“语句”可以是一个单独的语句(甚至是空语句),也可以是一个复合语句。然后求解“表达式3”,并返回重新求解“表达

12、式2”,如果为真,或者为非0,再次执行“语句”,并求解“表达式3”,一直执行下去,直到“表达式2”的值是false或者为0,则结束for语句的执行,接着执行for语句后面的语句。,求1+2+3+.+100的值,foreach-in循环,foreach-in循环的语法形式如下:foreach(对象 in 集合)语句;其中“对象”表示的是一个临时的变量,它会依次代表“集合”中的每一个项目。如果不知道一个集合中每个项目的类型是什么,完全可以定义一个object类型的临时变量来表示这些项目。in关键字后面指明需要操作的集合。,break语句,break;用于跳出语句所在的循环如果存在循环嵌套的情况,那

13、么break语句只能跳出当前循环,而不能跳出外层循环,求半径r从1到10的所有圆的面积小于100的面积,求矩形的面积。矩形的长x从1到10,矩形的宽y也从1到10,请输出所有面积小于5的矩形的长和宽。,continue语句,continue;continue语句一般用于结束本次循环,求矩形的面积。矩形的长x从1到10,矩形的宽y也从1到10,请输出所有面积小于5的矩形的长和宽,函数,函数的定义 函数的调用 参数的传递 变量的作用域,函数的定义,函数是由C#语句组成的可以完成特定功能的例程.Net Framework提供的用户不用定义就可以使用的函数 用户自定义函数函数定义“数据类型”表示的是一

14、个函数返回值的数据类型 在函数名后面的括号中要写一个形式参数列表,在这个列表中,所有的参数都需要指定它的数据类型。,函数的调用,调用一个函数的方法是指明这个函数的函数名,如果函数的定义中包括形参的话,那么需要在后面的括号中写出传给这些形参的值。如果一个函数有返回值,还可以把这个函数的返回值通过赋值语句保存在变量中,或者作为表达式的一部分使用。,函数调用举例,参数的传递,形式参数 在定义函数时,虽然定义了函数的形式参数,但是这些参数在没有被其他函数调用时并不在内存中分配存储单元,而是在被调用时才分配,函数调用结束时它所占用的内存单元被立即回收。因此在函数没有被调用时这些参数只是形式上存在,所以称

15、之为形式参数。实际参数 在调用函数时,函数名后面括号中的各个参数就是实际参数,形参和实参之间的关系,值传递实参的值会被复制到形参中。由于函数调用时函数的形参和实参并不占用同样的存储单元,因此在这种情况下实参的值是被复制到形参中的,因此称为“值传递”。引用传递 引用传递就是指在从实参到形参的传递过程中,传递的不是实参的值,而是实参变量本身。在调用函数时,并不为形参重新分配存储空间,而是占用实参的存储空间。因此在函数调用的过程中,形参和实参实际上是同一个变量,如果形参发生了变化,那么实参也会发生同样的变化,值传递,引用传递,输出参数,使用输出参数可以让一个函数返回多个值。定义输出参数的方法是在定义函数的时候,在形参前面加上“out”关键字,并在调用函数的时候在实参前面也加上关键字“out”。,使用输出参数,变量的作用域,在进行变量声明时,变量声明的位置决定了这个变量的作用范围。在一个函数外声明的变量是全局变量,对本程序内部所有的函数都起作用在一个函数内部声明的变量是局部变量,只对本函数起作用。,全局变量和局部变量,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号