C#数据类型和表达式.ppt

上传人:牧羊曲112 文档编号:6502361 上传时间:2023-11-07 格式:PPT 页数:41 大小:632.50KB
返回 下载 相关 举报
C#数据类型和表达式.ppt_第1页
第1页 / 共41页
C#数据类型和表达式.ppt_第2页
第2页 / 共41页
C#数据类型和表达式.ppt_第3页
第3页 / 共41页
C#数据类型和表达式.ppt_第4页
第4页 / 共41页
C#数据类型和表达式.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《C#数据类型和表达式.ppt》由会员分享,可在线阅读,更多相关《C#数据类型和表达式.ppt(41页珍藏版)》请在三一办公上搜索。

1、第2章 数据类型和表达式,通过本章的学习,使读者:了解C#语言的基本字符、标识符和关键字 掌握C#语言的数据和数据类型 掌握C#语言的运算符和表达式,本章要点,2.1 基本规则,2.1.1 标识符,在C#中,标识符的命名有如下规则:,(1)首字符必须是字母、下划线“_”或“”;后面的字符可以是字母、下划线或数字;(2)标识符不应该使用C#的关键字。如果一定要用C#的关键字作为标识符,应使用“”字符作为前缀;(3)允许在标识符中使用Unicode转义符;(4)C#采用了Unicode技术,因此支持使用中文作为标识符,例如:下面是几个正确的变量名称:intA、M_data、_D123。下面是几个错

2、误的变量名称:123data(错误原因:使用数字作为起始字符)float(错误原因:使用关键字作为标识符)int-a(错误原因:使用连字符“”)。,2.1 基本规则,2.1.3 关键字,关键字又称保留字,是一种有特殊用途的标识符。由系统预先定义好的,不能用于其它目的。C#中有七十多个关键字,这些关键字都有自己的用途。,C#中的关键字,C#的数据类型,C#的数据类型,C#的数据类型,2.2 基本数据类型,C+语言的数据类型分为基本数据类型和构造数据类型(或称复合数据类型)。,基本数据类型有5种:整型(int)、浮点型(float)、字符型(char)、双 精度浮点型(double)和无值型(vo

3、id)。,2.2 基本数据类型,2.2 常量与变量,常量是在程序中不能改变的量。它通常可以分为数字常量和符号常量,1 整型常量 整型常量可用以下几种形式表示:,2.2.1 常量,十进制整数 如:34、0、-56等。,八进制整数 为了与十进制数区别,八进制整数以0开头,后跟若干个07的数字。,十六进制整数 为了与十进制整数和八进制整数区别,以0 x或OX开头,后跟若干个09及af,af分别表示十进制整数1015。,2.2 常量与变量,2.实型常量,实数又称为浮点数,一般有两种书写形式:,一般形式 就是平时写实数的形式。,指数形式 在C#中,指数形式表示为:E,3.字符常量,字符常量是用单引号(即

4、撇号)括起来的一个字符。,2.2 常量与变量,4.字符串常量,(1)常规字符串双引号括引起的一串字符,可以包括转义字符。例如:“china”,“”,“teacher and student”,“a”等都是字符串常量。,(2)逐字字符串 在常规字符串前面加一个,就形成逐字字符串。例如:“C:windowsMicrosoft”与 C:windowsMicrosoft含义相同,2.2 常量与变量,5.布尔型常量,通常表示真假用布尔常量:false表示假,true表示真。,6.符号常量,在声明语句中,可以声明一个标识符常量。可以同时声明一个或多个给定类型的常量,必须在声明时赋初始值,一旦初始化,就不能

5、修改了,否则会出现编译错误。具体格式为:const 类型 标识符=初值例如:const double PI=3.14159,2.2 常量与变量,在程序执行过程中其值可以改变的量叫变量。,2.2.2 变量的声明,1变量的定义,;或,,,;例如:int a,x,y;/定义了3个整型变量a,x,ychar b;/定义了1个字符型变量bfloat c,d;/定义了2个实型(单精度)变量c,ddouble u,v;/定义了2个实型(双精度)变量u,v,2.2 常量与变量,2.变量的初始化,int a=2;/定义a为整型变量,初值为2char b=A;/定义b为字符型变量,初值为Adouble x=2.1

6、234;/定义x为实型变量,初值为2.1234也可对被定义的变量的部分变量进行初始化。如int u,v=100,w;/定义u,v,w为整型变量,v的初值为100,2.2 常量与变量,2.2.3 变量的命名规范,通常有PascalCase和CamelCase两种命名方法,PascalCase中每个单词的首字母都是大写,CamelCase规定首字母都是小写。下面给出PascalCase和CamelCase的例子,如下表所示。,2.2 常量与变量,2.2.4 变量的赋值,在C#中,给一个变量赋值的格式如下:变量名=表达式;,int a=0;/定义整型变量a,并为其赋初值等于0double b;/定义

7、双精度变量b,未赋初值a=256;/为整型变量a赋值为256 b=21.78;/为双精度变量b赋值为21.78,2.2 常量与变量,2.2.5 变量的类型,1值类型,2.2 常量与变量,2.2.5 变量的类型,2引用类型引用类型不存储它们所代表的实际值,而是指向所要存储的值,即引用类型存储的实际数据是当前的引用的地址。,(1)object类型 object数据类型是根类类型,它是所有类型的基类。任一个object变量,可以赋予任何类型的值。例如:int x1=123;double x2=34.87;object y1,y2;/声明y1,y2是object类型的变量y1=x1;y2=x2;,2.

8、2 常量与变量,2.2.5 变量的类型,2引用类型,(2)字符串类型string字符串是被双引号包含的一串字符,专门用于处理字符串的引用类型,string是System.String的别名。用string关键字声明的变量(对象)可以存储Unicode字符的字符串,并具有字符串的连接运算。例如:string str1=“C#语言”;string str2=“程序设计”;string str3;str3=str1+str2;/str3的值为:“C#语言程序设计”,2.2 常量与变量,2.2.6 类型之间的转换,1隐式转换 隐式转换是系统默认的,遵守“由低级(字节数和精度)类型向高级类型转换,结果为

9、高级类型”的原则.,string a,b;a=10+“12”;/系统将整型数据10隐式转化为字符串“10”,结果a的内容为“1012”double x=3.1415;int y=21;double z=x+y;/系统将整型数据y隐式转化为实型21.0后再与x运算,/结果z的内容为24.1415,隐式转换的数据源类型以及目标类型对应表,2.2 常量与变量,2.显示转换(1)强制转换强制转换转换的一般格式为:(数据类型名称)数据例如:int i=2;double d=3.4;int v1=(int)(i+d);,(2)ToString()方法 将基本数值类型转化为字符串使用格式为:变量名称.ToS

10、tring()例如:int c;c=309;string e=c.ToString();/e的值为“309”double d=3.1415;string f=d.ToString();/f的值为“3.1415”,2.2 常量与变量,(3)Parse方法 将字符串转换为数值数值类型名称.Parse(字符串表达式)例如:string s=123.32;int x;double y;x=int.Parse(“234”);/将字符串234转化为整数234 y=double.Parse(s);/将字符串123.32转化为实数123.32,(4)Covert类 各种数据类型之间的相互转化 int c;c=

11、3;string e=c.ToString();/e的值为“3”int g;g=Convert.ToInt32(e);/g为int类型的值3,Convert类的常见方法,Convert类的常见方法,【例2-2】数据类型转换。static void Main(string args)string s1=123,s2=90.8;int x;double y;/1.用parse,Convert,将字符串转换为数(int,double,.)x=int.Parse(s1);y=double.Parse(s2);Console.WriteLine(n s1=0,s2=1,x,y);x=Convert.To

12、Int32(s1);y=Convert.ToDouble(s2);Console.WriteLine(n s1=0,s2=1,x,y);/2.用int,.,Convert,将数转换为字符串 int k=12;double d=12.56;s1=k.ToString();s2=d.ToString();Console.WriteLine(n s1=0,s2=1,s1,s2);s1=Convert.ToString(k);s2=Convert.ToString(d);Console.WriteLine(n s1=0,s2=1,s1,s2);,课后作业1,1、自编程序:在程序中定义分别为int、ch

13、ar、string三种类型的变量并正确赋值,随后输出这三个数据,运行该程序。2、自编程序:在控制台接收用户随机输入的三个不同类型数据,分别为int、char、string,随后输出这三个数据,运行该程序。,2.3 运算符与表达式,1.算术运算符,基本算术运算符及其功能如下表所示。,2.3.1 算术运算符与算术表达式,2.3 运算符与表达式,2.算术表达式,在C#中,用算术运算符连接起来的式子称为算术表达式。,例如:2*(a+4)/18-2.98+A,sin(x)+cos(x)/2,(int)a+4+(-z)都是合法的C+算术表达式。但 sin300+ye9,3+|x|,3a+5 不是合法的C#

14、算术表达式。,2.3 运算符与表达式,3.优先级和结合方向,C#语言规定了运算符的优先级和结合方向,在表达式求值时,先按运算符的优先级别高低次序执行,再按运算符的结合方向结合(相同优先级时)。例如先乘除后加减,如下表所示。,高,2.3 运算符与表达式,1关系运算符,C#语言中提供6种关系运算符,=,=,!=。,2.3.2 关系运算符与关系表达式,(1)优先级别顺序是:自上而下,优先级由高到低。(2)同级运算符的结合性是“左结合性”,即“自左向右”顺序进行。关系运算的优先级都低于算术类,高于赋值类。例如,ab+c 等效于 a(b+c)a=b+c 等效于 a=(b+c)(3)关系运算符=,=,!=

15、在书写时,不要空格将其分开,否则会产生语法错误。,2.3 运算符与表达式,2关系表达式,用关系运算符将两个表达式连接起来,表示关系运算的表达式称为关系表达式。一般形式为:表达式1 关系运算符 表达式2,【例2-4】关系表达式。,2.3 运算符与表达式,static void Main(string args)int z;z=3+5=2*4;/即判断(35)是否等于(2*4),z=1表示trueConsole.WriteLine(z=0,z);z=3 5-3;/等价于(2+3)!=(5(5-3),z=1表示true Console.WriteLine(z=0,z);z=54=3;/先求54结果为

16、1,再进行1=3的比较,z=0表示falseConsole.WriteLine(z=0,z);,2.3 运算符与表达式,1逻辑运算符,有3种逻辑运算符:“!”(逻辑非)、“&”(逻辑与)和“|”(逻辑或)。,2.3.3 逻辑运算符与逻辑表达式,2逻辑表达式,逻辑表达式的一般形式为:!x,x&y,x|y,2.3 运算符与表达式,【例2-5】逻辑表达式。static void Main(string args)int x=2,y=5,z;z=(x0)|(y8);Console.WriteLine(z=0,z);/z=1表示truez=(x=0)/z=0表示false,2.3 运算符与表达式,表达式

17、1?表达式2:表达式3如果“表达式1”的值为非0(真),则条件表达式的运算结果等于“表达式2”的值,否则,运算结果等于“表达式3”的值。,求x的绝对值,用条件运算符处理为:y=(x=0)?x:-x;,2.3.5 条件运算符,2.3 运算符与表达式,当表达式中包含多个运算符时,哪个运算符先参加运算是由运算符的优先级来决定的,高优先级的先参加运算,低优先级的后参加运算。,2.3.6 运算符的优先级与结合顺序,课后作业2,编写一个应用程序,要求用户输入2个整数,并将它们的和、差、积、商(要求能提示除数不能为零)显示出来。编写一个应用程序,要求以摄氏为单位的温度C,输出以华氏为单位的温度F。摄氏度以用

18、户输入数为准,转换公式为:F=1.8*C+32。假设一个修理汽车的顾客每小时付劳务费35元,还有零件和工件的花费以及5%的销售税。写一程序显示出简单的账单,通过提示用户输入顾客姓名、修理所需时间,还有零件和工件的花费。程序最后输出顾客的姓名和3项花费。,习题二,1.C#的每条语句都通过_来结束。2.变量在使用前,必须先_和_。3.通过_可以改变运算符的运算顺序,使表达式更加清晰易懂。4.下列变量的声明方式不正确的是()。A.int a,string b,char c;B.int a=c=b=21;C.char a;D.string myString=”abc”;5下面的标识符中,不否合法的是:class,public,3a,_3a,a3,a#56.将下列各式写成C#语言表达式(1)sin+cos(2)4a2+5b3(3)b=ba(4)2cos450(5)以知a=15,计算a1008,并将结果赋给变量b。7 求下面算术表达式的值,并编写程序运行,验证其结果。(1)x+a%3*(int)(x+y)%2/4,其中x=2.5,a=7,y=4.7(2)x+A+(float)(a+b)/2+x%y,其中a=2,b=3,x=3.5,y=2.5;8计算表达式的值 int x=1,y=2,z=-2;(1)(x+3)4(2)x&y=z(3)x+y|z(4)x|yz,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号