C#程序设计基础基本数据类型.ppt

上传人:本田雅阁 文档编号:3469193 上传时间:2019-08-30 格式:PPT 页数:56 大小:1.19MB
返回 下载 相关 举报
C#程序设计基础基本数据类型.ppt_第1页
第1页 / 共56页
C#程序设计基础基本数据类型.ppt_第2页
第2页 / 共56页
C#程序设计基础基本数据类型.ppt_第3页
第3页 / 共56页
C#程序设计基础基本数据类型.ppt_第4页
第4页 / 共56页
C#程序设计基础基本数据类型.ppt_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《C#程序设计基础基本数据类型.ppt》由会员分享,可在线阅读,更多相关《C#程序设计基础基本数据类型.ppt(56页珍藏版)》请在三一文库上搜索。

1、C#程序设计基础,第1章 数据类型,常见的数据类型: (1) int:表示整数,如1、20、-999。 (2) double:表示实数,如2.5、3.1415926。 (3) bool:表示一个布尔值,只有两种值:真(true)和假(false)。 (4) char:表示字符,如a、3、&。 (5) string:表示字符串,如“abcdef“、“你好,世界!“。,3.1 关键字和标识符,1. 关键字(keyword),C#中一些被赋予特定的含义,具有专门用途的字符串称为关键字(又称保留字)。,3.1 关键字和标识符,1. 关键字(keyword),3.1 关键字和标识符,2. 标识符(ide

2、ntifier),C#对各种变量、方法和类等要素命名时使用的字符序列称为标识符。,3.1 关键字和标识符,2. 标识符(identifier),C#标识符命名规则如下: (1) 不能与系统关键字重名。 (2) 标识符由字母、下划线“_”、数字或中文组成。 (3) 标识符应以字母、中文或下划线开头。 (4) 标识符中间不能包含空格。 (5) C#标识符对大小写敏感。,例子: numberOfStudent,i,a12,张三,Stu_Name,_name /合法 $a,abc# /不合法,特殊字符只能使用下划线 2count /不合法,以数字开头 string,return /不合法,与系统关键字

3、重名,3.2 常量与变量,变量,在程序运行过程中,其值可以改变的量称为变量。变量是存储信息的单元,它对应于某个内存空间。,3.2 常量与变量,常量,在程序运行过程中,其值不能被改变的量称为常量。使用常量可以提高代码的可读性,并使代码更易于维护。常量是有意义的名称,用于代替在应用程序的整个执行过程中都保持不变的数字或字符串。,3.3 整型数据,整型变量,表3-2 整数类型列表,3.4.2 实型变量,IEEE 754标准规定了2种基本浮点格式:单精度和双精度,C#实现了如下表所示的两种精度的浮点格式,即实数类型。其中,float表示单精度浮点数,double表示双精度浮点数。,浮点型,3.4.2

4、实型变量,实型常量可以使用字母“F”和“D”所组成的后缀。 (1) 以F或f为后缀的实数的类型为float。例如,实数1f、1.5f、1e10f和123.456F的类型都是float。 (2) 以D或d为后缀的实数的类型为double。例如,实数1d、1.5d、1e10d和123.456D的类型都是double。,1. 浮点型,3.5 字符型数据,3.5.1 字符常量,字符常量是用单引号(即撇号)括起来的一个字符。如:a、x、D、? 、$和1都是字符常量。注意,a和A是不同的字符常量。,3.5 字符型数据,3.5.1 字符常量,C#还允许用一种特殊形式的字符常量,就是以一个“”开头的字符序列。

5、例如,n表示一个换行符,它代表一个“换行”符。这种非显示字符难以用一般形式的字符表示,故规定用这种特殊形式表示。,3.5 字符型数据,3.5.1 字符常量,3.5 字符型数据,3.5.2 字符变量(char),字符变量用来存放字符,注意只能放一个字符,不能在一个字符变量中存放一个字符串(包括若干字符)。,3.6 字符串型数据,3.6.1 字符串常量,字符串是任何一个应用程序使用得最多的类型之一。字符串常量是由一对双引号括起来的字符序列。例如: “How do yo do? “ “你好世界!“ “1234567890abcd“ 都是字符串常量。它和字符常量不同,字符常量表示的是一个字符,字符串常

6、量是包含多个字符的集合。,3.6 字符串型数据,3.6.2 字符串变量(string),字符串变量用来存放字符串,字符串中包含的每个字符可以通过下标访问。,H,0,E,1,L,2,L,3,O,4,5,W,6,O,7,R,8,L,9,D,10,!,11,C#程序设计基础,第2章 运算符和表达式,表达式由操作数 (operand) 和运算符 (operator) 构成,运算符指示对操作数进行什么样的运算。,4.1 算术运算符,4.1.1 基本算术运算符,1. + :加法运算符或正值运算符 2. - :减法运算符或负值运算符 3. * :乘法运算符 4. / :除法运算符 除法运算符用于进行除法运算

7、,如5/6。需要注意的是如果除数和被除数都为整数,则结果也为整数,它会把小数舍去(并非四舍五入) 。 5. % :模运算符 模运算符用于计算第2个操作数除第1个操作数后的余数。在C#中,所有数值类型都具有预定义的模数运算符。如: 5 % 2 的结果为 1 -5 % 2 的结果为 -1 5.0 % 2.2 的结果为 0.6,结果为double值 5.0m % 2.2m 的结果为 0.6,结果为decimal值。,4.2 逻辑运算符,1. &:逻辑与(逻辑AND)运算符,逻辑与运算符可以用于整型和布尔型数值。对于整型操作数,& 计算操作数的逻辑按位“与”。对于 bool 操作数,& 计算操作数的逻

8、辑“与”。,4.2 逻辑运算符,1. &:逻辑与(逻辑AND)运算符,(1) 当操作数为bool值时,当且仅当2个操作数均为true时,结果才为true。 true & true 的结果为true true & false 的结果为false false & false 的结果为false (2) 当操作数为整型时,则进行位运算,如: 100 & 45的结果为36。,运行位运算器,4.2 逻辑运算符,2. |:逻辑或(逻辑OR)运算符,| 逻辑或运算符可以用于整型和布尔型数值。对于整型操作数,| 计算操作数的逻辑按位“或”。对于 bool 操作数,| 计算操作数的逻辑“或”。,4.2 逻辑运算

9、符,2. |:逻辑或(逻辑OR)运算符,(1) 当操作数为bool值时,当且仅当2个操作数均为false时,结果才为false,或者说只要有1个操作数为true,结果就为true。 true & true 的结果为true true & false 的结果为true false & false 的结果为false (2) 当操作数为整型时,则进行位运算,如: 100 | 45的结果为109,运行位运算器,4.2 逻辑运算符,3. :逻辑异或(逻辑XOR)运算符, 逻辑异或运算符可用于整型和bool型数值。对于整型, 将计算操作数的按位“异或”。对于bool操作数, 将计算操作数的逻辑“异或”。

10、,4.2 逻辑运算符,4. !:逻辑非(逻辑NOT)运算符,!逻辑非运算符只能用于bool型数值,它是对操作数求反的一元运算符。当操作数为 false时返回true。当操作数为true时,返回false。 !false的结果为true !true的结果为false,运行位运算器,4.2 逻辑运算符,6. &:条件与(条件AND)运算符,&条件与运算符只能用于bool型数值,它与 & 运算符的功能完全一样,执行其 bool 操作数的逻辑“与”运算。 true & true 的结果为true true & false 的结果为false false & false 的结果为false & 运算符与

11、 & 运算符的区别在于,& 运算符不能对整型进行计算。另外,对于 x & y 如果 x 为 false,则不计算 y(因为不论 y 为何值,“与”操作的结果都为 false)。这被称为“短路”计算。也就是说使用 & 运算符进行条件计算,比使用 & 运算符速度更快些。,4.2 逻辑运算符,7. |:条件或(条件OR)运算符,| 运算符和 & 运算符一样,只能用于bool型数值,它与 | 运算符的功能完全一样,执行其 bool 操作数的逻辑“或”运算。 true | true 的结果为true true | false 的结果为true false | false 的结果为false | 运算符与

12、 | 运算符的区别在于,| 运算符不能对整型进行计算。另外它也会进行“短路”计算,即对于x & y,如果 x 为 true,则不计算 y(因为不论 y 为何值,“或”操作的结果都为 true)。,4.3 赋值运算符和表达式,4.3.1 复合赋值运算符,一方面,为了简化程序,使程序看上去精练;另一方面,为了提高编译效率,C#允许使用复合赋值运算符。在赋值运算符前面加上其他运算符,就可以构成复合赋值运算符。如果在 = 前加一个 + 运算符,就成为复合赋值运算符 +=。例如,可以有: a += 10 等价于 a = a + 10 x *= y + 6 等价于 x = x * (y + 6) x %=

13、 5 等价于 x = x % 5,4.3 赋值运算符和表达式,4.3.1 复合赋值运算符,(1) a+=b (其中a为变量,b为表达式) (2) a+= b (将有下画线的 a+ 移到 = 号右侧) (3) a=a+b (在 = 号左侧补上变量名),4.3 赋值运算符和表达式,4.3.1 复合赋值运算符,C#语言规定可以使用10种复合赋值运算符。 (1) += :加法赋值运算符。 (2) -= :减法赋值运算符。 (3) *= :乘法赋值运算符。 (4) /= :除法赋值运算符。 (5) %= :取模赋值运算符。,4.3 赋值运算符和表达式,4.3.2 赋值表达式,由赋值运算符将一个变量和一个

14、表达式连接起来的式子称为“赋值表达式”。它的一般形式为: ,4.4 关系运算符和关系表达式,“关系运算”实际上是“比较运算”,将两个值进行比较,判断比较的结果是否符合给定的条件。例如,x 5是一个关系表达式,大于号“”是一个关系运算符,如果x的值为6,则满足给定的x 5的条件,因此关系表达式的值为“真”(true);如果a的值为3,不满足x 5的条件,则称关系表达式的值为“假”(false)。,4.4 关系运算符和关系表达式,4.4.1 关系运算符,C#语言规定可以使用以下6种关系运算符。 (1) = 等于 (2) != 不等于 (3) 大于 (5) = 大于或等于,4.4 关系运算符和关系表

15、达式,4.4.2 关系表达式,用关系运算符将2个表达式连接起来的式子,称为关系表达式。例如: a 3 a * b = c + d (a = 6) (b = 7) a!= b a 3 关系表达式的值是一个bool值(或者说关系表达式返回一个bool值),即true或false。例如,关系表达式 6 = 2 的值为false 6 = 0 的值为true,4.5 字符和字符串运算符,由于字符可以隐式转换为整型(字符的Unicode编码值),很多时候,字符会被当做一个整型数值来处理。比如: a+ 6 的结果为 103,字符a被隐式转换为97,再与103相加 a* b 的结果为 9506,相当于 97*

16、98 a b 的结果为 false,4.5 字符和字符串运算符,在C#中,加法运算符(+)又可以作为字符串串联运算符,在字符串运算中,它起到了连接字符串的作用。 “a“+ “b“ 的结果为 “ab“ “早上“ + “好! “ 的结果为 “早上好!“ 字符在跟字符串进行加法运算时,也会被转换为字符串进行处理,例如: a+“bcdef“ 的结果为 “abcdef“,由于 “+“ 运算符可以用于字符串操作,所以 a 首先被隐式转换为字符串 “a“,再与字符串 “abcdef“ 进行连接操作。,4.6 其他运算符,1.点运算符,点运算符用于成员访问。点运算符指定类型或命名空间的成员。 txtName.

17、Text = “张三“; /让文本框内显示“张三”这两个字 string str = txtName.Text; /把Text属性的值赋给字符串变量str,4.6 其他运算符,3.转换运算符,转换运算符 ( ) 除了用于指定表达式中的运算顺序外,圆括号还用于指定强制转换或类型转换,例如: x + (y + z) 把y + z用圆括号括起来表示先执行y + z。 (int)12.3 表示把Double类型的值12.3强制转换为整型,结果为12。 (char)97 表示把整数值97强制转换为字符类型,结果为 a。,4.6 其他运算符,4.条件运算符,条件运算符 ?: 根据布尔型表达式的值返回两个值

18、中的一个。条件运算符要求有3个操作对象,它是C#中唯一的一个三元运算符,格式如右。,条件 ? 表达式1 :表达式2,false,true,4.7 运算符优先级,当表达式包含多个运算符时,运算符的优先级控制各运算符的计算顺序。例如,表达式 x + y * z 按 x + (y * z) 计算,显然 * 运算符的优先级比 + 运算符高。,高,4.7 运算符优先级,高,4.7 运算符优先级,4.7.2 关系运算符优先级,a b + c 等效于 a (b + c) a + b != a * b 等效于 (a + b) != (a * b) a = b c 等效于 a = (b c) (a必须为一个bo

19、ol值) a = b c 等效于 a = (b c) (a必须为一个bool值),4.7 运算符优先级,4.7.3 逻辑表达式和运算符优先级,a b & x y 的计算顺序为:(a b) & (x y) a = b | x = y 的计算顺序为:(a = b) | (x = y) !a | a b 的计算顺序为:(!a) | (a b),C#程序设计基础,第3章 条件判断语句,5.1 if语句,5.1.1 if语句,if语句是用来判断所给定的条件是否满足,根据判定的结果(真或假)决定所要执行的操作。If语句的一般表示形式为: if (表达式) 语句块 ,例如: if (a = 100) /关系

20、表达式 if (a 100 & a 150) /逻辑表达式 if (a) /变量a只能是一个布尔型变量 if (true) /布尔常量true,这样做没有任何意义,5.1 if语句,5.1.2 ifelse语句,当一个判断语句只存在两种可能的结果时,可以使用ifelse语句来表达。它的表现形式为:,if (表达式) 语句块1 else 语句块2 ,5.1 if语句,5.1.3 ifelse if语句,当一个判断语句存在多种可能的结果时,可以使用ifelse if语句来表达,它的表现形式为:,if (表达式1) 语句块1 else if (表达式2) 语句块2 . else if (表达式n)

21、语句块n ,5.1 if语句,5.1.4 if语句的嵌套,在if语句中又包含一个或多个if语句称为if语句的嵌套,if ( ) if ( ) 语句块1 else 语句块2 else 内嵌if if ( ) 语句块1 else 语句块2 ,C#程序设计基础,第5章 方法,9.1 方法的定义,方法定义的具体格式如下: 方法修饰符 返回类型 方法名(形参列表) 方法体 void StartGame() /没有参数 void PlaySound(string path) /带一个参数 int Max(int a, int b, int c) /带多个相同类型的参数 void GetInfo(strin

22、g Name, int lever) /带多个不同类型的参数,7.1.1 方法的声明与创建,9.2 方法的调用,在C#中,方法的调用主要采用以下2种格式。 格式一:表达式 = 方法名(实参列表)。 格式二:方法名(实参列表)。 使用带返回值的方法时往往使用格式一来调用方法。如果不需要使用方法的返回值,则可以采用格式二来调用方法,这时将执行方法的所有操作而忽略返回值。,9.2.1 方法调用格式,9.2 方法的调用,在定义方法时,方法名后面的圆括号中的变量名称为“形参” 。在调用方法时,方法名后面圆括号中的表达式称为“实参” 。形参和实参都是方法的参数,它们的区别是一个表示声明时的参数,另一个表示

23、调用时的参数。,9.2.2 形参与实参,9.3 方法的参数传递机制,声明时不带任何修饰符的参数是值参数。 当形参是值参数时,实参变量对形参变量的数据传递是“传值”,在调用方法时将实参的值赋给形参。,9.3.1 值参数(Value Parameter),9.5 变量的作用域及可见性,作用域是标识符在程序中有效的范围。可见性则是从另一角度表示标识符的有效性,标识符在某个位置可见,表示该标识符可以被使用。可见性和作用域是一致的。 C#中的变量从作用域上来说可分为局部变量和成员变量。成员变量在类中声明,它的可见性由可见性标识符控制,可以是类的内部,也可以是类的外部(本节不讨论成员变量在类外部的可见性)。而在方法中声明的则是局部变量。,9.5 变量的作用域及可见性,1 class Program /用class关键字声明的是类 2 /-a的作用域从此开始 3 static int Mul(int c) /-c的作用域从此开始 4 5 return a * c; 6 /-c的作用域到此结束 7 static void Main(string args) 8 9 int b = 3; /-b的作用域从此开始 10 Console.WriteLine(Mul(b); 11 /-b的作用域到此结束 12 static int a=2; /成员变量 13 /-a的作用域到此结束,

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1