版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章:C#程序设计基础,2.1.1 C#的字符集,字符是构成程序设计语言的最小语法单位。 C#的基本字符集包括:数字、大小写英文字母和一些特殊字符 C#中所有字符都是使用Unicode编码表示,每个字符都由两个字节(16位二进制数)来表示,编码范围为065535,所以Unicode字符集最多可以表示65536个字符。 基本上能够包含世界上大多数语言的字符集。 中文字符集也已经成为Unicode字符集的一个子集。,2.1.2 C#语言的词汇集,C#的词汇集主要包括关键字、标识符和文字常量等,1关键字:又称保留字,是对程序设计语言编译器具有特殊意义的预定义保留标识符,编译器扫描源程序时,将对关键
2、字做出专门的解释,2标识符:给程序中处理的数据对象(如变量、常量、函数、数据类型等)取的名字。, 组成标识符的字符为字母、数字和下划线; 标识符中第一个字符必须是字母或下划线; 用户在程序中自定义的标识符一般不允许使用表2-1所示的关键字。 如需要使用关键字作为自定义标识符,则标识符用字符“”引导。 C#语言的标识符构成中,要区分字符的大小写形式。,2.2 C#语言的基本数据类型,数据类型决定了该数据的取值范围和可参加的运算。 C#语言支持的数据类型分为两个大类:值类型和引用类型。,2.2.1 C#中的常量与变量,C#程序中处理的数据分为:常量与变量,常量:程序运行过程中,其值不能被改变。 分
3、为: 数、字符、字符串和布尔常量,变量:程序运行过程中,其值能够被改变,用标识符来命名; C#语言是一种强类型语言,规定程序中的变量在使用之前必须加以定义。,程序中每一变量都应有确定的数据类型 一个程序中一个变量只属于一个类型,不能先后定义为两个或多个不同类型,变量定义一般形式: 数据类型名 变量名列表;,2.2.2 整型数据类型,2.2.2 整型数据类型,C#语言中可以使用一条语句定义一个或者若干个同类型的整型变量 int myInt1,myInt2;/定义两个整型变量myInt1和myInt2 ulong myULong1;/定义了一个无符号长整型变量myULong1,定义整型变量的同时对
4、其进行初始化: sbyte mySbyte = 125;; int myInt1 = -65536, myInt2 = 12135;,byte myByte = -200; /无符号字节变量赋负值初始化数据 ushort myUShort = 2147483647; /初始化数据超过无符号短整型数据表示范围 int myInt = 3.1415926; /为整型变量赋实型初始化数据,X,2.2.3 实型数据类型,单精度实型(也称为浮点型)、双精度实型、十进制小数型,实型常量表示:实数形式和指数形式 实数形式:由数字和小数点组成,例如:888.88,0.88等。 指数形式数据:由数字0 9、小数
5、点和表示阶码的标志E(或e)组成: 整数部分.小数部分E指数部分 例如:123e5表示123105,123e-5表示12310-5。,2.2.3 实型数据类型,C#语言默认实型数据常量为双精度实型(double类型)数据 在为单精度实型变量赋初始化值时需要在数据常量后使用后缀F(或f) 在为十进制小数型变量赋初始化值时需要在数据常量后使用后缀M(或m),下面是一些正确的实型变量初始化示例: float myFloat1 = 123f, myFloat2 = -12.52F; double myDouble1 = 1.5E-3D, myDouble2 = 123.53; decimal myDe
6、cimal1 = 234M, myDecimal = 324.6728m;,下面是一些错误的实型变量初始化示例: float myFloat1 = 123; /初始化单精度变量的数据常量后没有后缀F(或f) decimal myDecimal1 = 324.6728; /数据常量没有使用后缀M(或m) float myFloat2 = 1.5E-3D;/数据常量错误使用后缀D,X,2.2.4 字符数据类型,C#中字符数据常量分为:普通字符和转义字符 普通字符:由单引号括起来的一个可打印字符,如a、?、A等。 转义字符:由反斜杠开头的字符序列,此时反斜杠字符后面的字符或字符序列不表示自己本身的含
7、义而转变为表示另外的特定意义。,2.2.4 字符数据类型,对字符型变量的初始化值只能是单个的字符常量,若使用字符串数据初始化字符变量,编译系统会指出不能将字符串转换为字符的错误。 char myChar1 = A; char myChar2 = x41; char myChar3 = u0041;,char myChar1 = A+1; /A+1是整型数据常量,不能自动转换为字符 char myChar2 = “a”; /“a”是字符串常量,不能转换为字符 char myChar3 = u041; /在u后面十六进制数据不足4位,X,2.2.5 布尔数据类型,布尔数据类型:表示条件成立与否,即
8、“真”或“假” 布尔数据类型占用一个字节的存储区域。 布尔数据类型变量只有两种取值: true:表示条件成立,即逻辑“真”的概念; false:表示条件不成立,即逻辑“假”的概念;,bool myBool; /定义了一个布尔型变量myBool bool myBool1, myBool2; /同时定义了两个布尔型变量myBool1和 myBool2。,定义变量时进行初始化: bool myBool = true; bool myBool1 = true, myBool2; / myBool2的初始值为false,2.3 基本运算符,表达式:运算符和圆括号将运算对象连接起来的、 符合C#语言语法规
9、则的式子。,2.3.1 赋值运算符,赋值运算符:= 作用:将一个数据或是一个表达式的值赋给一个变量; 赋值表达式:赋值号把一个变量和一个表达式连起来的式子。 赋值表达式的一般形式如下: varible = expression,赋值运算符左边的数据对象只能是变量,一般是表达式(包括单个的常量、变量或方法(函数)调用),2.3.1 赋值运算符,注意: 1)赋值表达式可作为其他表达式的组成成分 d = (a = 200) + c * d; 功能:表达式(a = 200) + c * d的值赋值给变量d (a = 200)作为整个表达式中的一个成分参与运算 2)赋值运算两边数据对象类型不一致时 数据
10、类型兼容,则自动转换数据类型 数据类型不兼容,则编译系统会报错 C#中进行强数据类型检查,int a; long d; d = a = 100;,double a = 123.5; float b = 100.4f; b = a + b;,X,2.3 2 算术运算符,单目运算符:正号“+”和负号“-”。 双目运算符:“+”、“-”、“*”、“/”和“%”(求模)。,1 )两个整数相除时,得到的结果仍然是整数 7/5结果是1、-7/5结果是-1 除法结果采用截取法取整,即直接将小数部分去掉 8/5结果是1 -8/5结果是-1 2)求模运算就是求余数 运算结果的符号与第一个(左边)运算对象相同 7
11、%5结果是2-7%5结果是-2 7%-5结果是2 -7%-5结果是-2 运算对象既可以是整型数据,也可以是实型数据 6.5%2.1结果是0.26.5%-2.1结果是0.2 -6.5%2.1结果是-0.2 -6.5%-2.1结果是-0.2,2.3 2 算术运算符,2.3 2 算术运算符,static void Main(string args) int a=10,b = 20, c, d, e; float x = 10.1f, y = 0.00001f, z1,z2; c = a + b; d = a / b; e = a % b; z1 = x + y; z2 = y % 5; Consol
12、e.WriteLine(c=0,d=1,e=2, c, d, e); Console.WriteLine(z1=0,z2=1, z1, z2); Console.ReadLine(); ,c=30,d=0,e=10,z1=10.10001,z2=1E-05,2.3.3 复合赋值运算符,复合赋值运算符:赋值运算符“=”前面加上其它运算符构成 的一种运算符,又称为“自反运算符”,+=、-=、*=、/=、%=、=、 int x = 100, y = 5; a += b; x %= y + 1; Console.WriteLine(a=0,x=1, a, x); Console.ReadLine();
13、 ,a=41.3,x=4,2.3.4 自增自减运算符,自增运算符”+”和自减运算符”-”是单目运算符 功能:将运算对象的值增加或减少一个该对象的单位值,前缀形式:自增、自减运算符出现在变量的左侧, +i、 -i。 操作方式:“先增值后引用”,后缀形式:自增、自减运算符出现在变量的右侧 i+、 i-。 操作方式:“先引用后增值”,2.3.4 自增自减运算符,static void Main(string args) int a = 10, b; double c = 5.5, d; b = +a; Console.WriteLine(a=0,b=1, a, b); d = c+; Console
14、.WriteLine(c=0,d=1, c, d); Console.ReadLine(); ,前缀形式:先增值后引用,a=11,b=11,后缀形式:先引用后增值,c=6.5,d=5.5,2.3 5 sizeof运算符,功能:返回所测试的对象需要占用的存储单元字节数 使用形式: sizeof(),被测试的数据类型名,必须是数值型数据类型的名字,static void Main(string args) Console.WriteLine(字符数据对象:0, sizeof(char); Console.WriteLine(字节数据对象:0, sizeof(sbyte); Console.Writ
15、eLine(无符号字节数据对象:0, sizeof(byte); Console.WriteLine(短整型数据对象:0, sizeof(short); Console.WriteLine(无符号短整型数据对象:0, sizeof(ushort); Console.WriteLine(整型数据对象:0, sizeof(int); Console.WriteLine(无符号整型数据对象:0, sizeof(uint); Console.WriteLine(长整型数据对象:0, sizeof(long); Console.WriteLine(无符号长整型数据对象:0, sizeof(ulong);
16、 Console.WriteLine(单精度实型数据对象:0, sizeof(float); Console.WriteLine(双精度实型数据对象:0, sizeof(double); Console.WriteLine(十进制小数型数据对象:0, sizeof(decimal); Console.ReadLine(); ,字符数据对象:2 字节数据对象:1 无符号字节数据对象:1 短整型数据对象:2 无符号短整型数据对象:2 整型数据对象:4 无符号整型数据对象:4 长整型数据对象:8 无符号长整型数据对象:8 单精度实型数据对象:4 双精度实型数据对象:8 十进制小数型数据对象:16,2
17、.4 C#中的数据类型转换,隐式类型转换:系统自动转换 原则:向表达数据能力更强的数据类型方向转换。,2.4.2 数据的显式转换,显式转换:强制类型转换。 一般形式是: (typeName)(),期望转换成的数据类型名字,被转换的变量或表达式,2.4.2 数据的显式转换,功能:本次运算中强迫表达式的值转换成指定的数据类型参加运算 例如: float x=2.5; int a=10, m; m=a+(int)x;,实型变量x的值在强制转换为整型与变量a相加,计算后x的值为2.5,强制类型转换是对从变量中取出的值进行转换,变量本身的值不改变,2.4.2 数据的显式转换,n=a+(int)(x+1.
18、8),被转换对象是表达式,则需用括号将整个被转换对象括住,对表达式的计算机结果强制类型转换 表达式中各个变量的值不变,2.4.2 数据的显式转换,static void Main(string args) double x = 100.5; int i = 3, j; Console.WriteLine(x=0, x); j = (int)x % i; Console.WriteLine(j=0,x=1, j, x); Console.ReadLine(); ,x=100.5,j=1,x=100.5,2.5.1控制台应用程序中数据输入输出方法,1.格式化输出方法Write和WriteLine,
19、System.Console.Write(输出数据项列表); System.Console.WriteLine(输出数据项列表);,区别: 1)Write方法不能没有输出数据项,WriteLine方法可以没有输出数据项; 2)Write方法输出指定数据项后不会换行,WriteLine方法会自动换行; WriteLine方法输出的数据项数为0时,表示仅进行换行操作,2.5.1控制台应用程序中数据输入输出方法,格式化输出的形式: Console.WriteLine(“格式控制字符串”, 输出数据项列表);,构成:普通字符和格式控制项,原样输出,即在指定位置输出指定字符(或字符串),一对花括号括起来
20、,每个格式控制项对应一个输出数据项列表中的数据, p, m:n ,m表示指定的数据项输出时所占的宽度,p表示格式对应的输出数据项序号,序号从0开始编号,n表示格式化字符,2.5.1控制台应用程序中数据输入输出方法,int myInt1 = 12340, myInt2 = 56789;,Console.Write(myInt1); Console.Write(myInt2); Console.WriteLine(); Console.WriteLine(myInt1=0,3, myInt2=1,8, myInt1, myInt2); Console.WriteLine(myInt1=0,7:d,
21、 myInt2=1,7:x, myInt1, myInt2);,2.5.1控制台应用程序中数据输入输出方法,double myDouble = 12345.6789;/系统默认实型常数为双精度型 float myFloat = 12345.6789f; /单精度实型常数用f后缀表示,Console.WriteLine(myDouble=0,10:f3, myFloat=1,10:f3, myDouble, myFloat); Console.WriteLine(myDouble=0,10:e3, myDouble=1,10:p2, myDouble ,myDouble); Console.Wr
22、iteLine(myDouble=0,10:n2, myDouble=1,10:g2, myDouble, myDouble);,2.5.1控制台应用程序中数据输入输出方法,2.单个字符输入方法Read,完整调用形式为: System.Console.Read(); 程序前面使用using System;后的调用形式为: Console.Read();,功能:从键盘上接收一个字符,返回该字符对应整数表示的代码 应该将其强制转换后再赋值给相应的字符数据对象: char myChar = (char)Console.Read();,2.5.1控制台应用程序中数据输入输出方法,3.字符串输入方法Re
23、adLine,功能:从键盘上接收一个字符串 如果需要输入数据值,则要将输入的数字字符串转换成为相应数据 转换方式: .Parse(数字字符串);,输入整型数据的方法: int myInt = int.Parse(Console.ReadLine(); 输入实型数据的方法: double myDouble= double.Parse(Console.ReadLine();,2.5.1控制台应用程序中数据输入输出方法,static void Main(string args) Console.Write(请输入一个字符串: ); string myString = Console.ReadLine(); Console.WriteLine(输入的字符串是:0,myString); Console.Write(请输第1个实数: ); double myDouble1 = doubl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南京采购计算机管理制度
- 沈阳医学院《国际经济法》2025-2026学年期末试卷
- 上海中华职业技术学院《跨境电商理论与务实》2025-2026学年期末试卷
- 泰州学院《金融理论与实务》2025-2026学年期末试卷
- 徐州医科大学《供应链管理》2025-2026学年期末试卷
- 上海对外经贸大学《经济学专业导论》2025-2026学年期末试卷
- 上海公安学院《内科护理》2025-2026学年期末试卷
- 朔州陶瓷职业技术学院《中药炮制学》2025-2026学年期末试卷
- 上海海关学院《工程数学》2025-2026学年期末试卷
- 沈阳体育学院《旅游资源开发与管理》2025-2026学年期末试卷
- CSC-300系列数字式发变组保护装置的调试说明
- 2025新人教版七年级下册英语 Unit 6知识点梳理及语法讲义(答案版)
- 政策变化风险对市场营销的影响及应对策略
- 补办离婚委托书范本
- 第3章S7-300指令系统及编程
- 风雨同舟砥砺前行2025年度颁奖典礼
- 测绘项目安全保证措施
- 《广西壮族自治区 农田建设项目预算定额及概算编制规程》
- 招标代理机构遴选投标方案(技术标)
- 《如何有效组织幼儿开展体能大循环活动》课件
- 石油化工蒸汽管道保温材料及选用技术规定
评论
0/150
提交评论