工程制图第二章.ppt

上传人:gsy****95 文档编号:85124948 上传时间:2023-04-10 格式:PPT 页数:77 大小:566KB
返回 下载 相关 举报
工程制图第二章.ppt_第1页
第1页 / 共77页
工程制图第二章.ppt_第2页
第2页 / 共77页
点击查看更多>>
资源描述

《工程制图第二章.ppt》由会员分享,可在线阅读,更多相关《工程制图第二章.ppt(77页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、C#C#程序设计程序设计第2章 C#程序设计概述主要内容C#语言的基本字符集和词汇集C#的数据类型和常量、变量的定义方法,简单数据类型转换的方法C#的运算符,利用变量、常量和运算符构成表达式的方法2.1 C#的基本字符集数字:数字:0 1 2 3 4 5 6 7 8 9英文字母:英文字母:A B C D E F G H I J K L M N O P Q R S T U V W X Y Za b c d e f g h i j k l m n o p q rs t u v w x y z特殊字符:特殊字符:Space !“#$%&()*+,-./:;?_|数制转换基本知识二进制整数转换为十进制

2、整数(101)2=(1*22+0*21+1*20)10=(5)10(an-1an-2a2a1a0)2=(an-1*2n-1+an-2*2n2+a2*22+a1*21+a0*20)101个字节表示的整数范围:0-2552个字节表示的整数范围:0-65535单字节字符编码与双字节字符编码单字节字符编码:每个字符用1个字节表示,如ASCII码双字节字符编码:每个字符用2个字节表示,如Unicode编码C#的关键字abstract event new struct as explicit null switch base extern object this bool false operator t

3、hrow break finally out true byte fixed override try case float params typeof catch for private uint char foreach protected ulong checked goto public unchecked class if readonly unsafe const implicit ref ushort continue in return using decimal int sbyte virtual default interface sealed volatile deleg

4、ate internal short void do is sizeof while double lock stackalloc else long static enum namespace string 常量与变量计算机要处理的数据存放在存储区中存储区的基本单位是字节若干个字节作为一个数据对象用来存放数据每个数据对象可用一个“名字”来标识,这个名字叫标识符如果某个数据对象存放的数据不能修改,则该数据对象及其标识符称为常量如果某个数据对象存放的数据可以修改,则该数据对象及其标识符称为变量修改变量的值,在计算机程序中叫赋值标识符在程序编写时,为某个数据对象所起的“名字”在C#中,标识符区分大

5、小写,如my和My是两个不同的标识符标识符的基本要求“见名知义”原则对象的第一个字母小写,类的第一个字母大写,从标识符的第2个单词开始,每个单词的第一个字每大小,如valueTextBox,标志识一般由两部分构成,即:名+类型;类型可以用全称,也可以用简写,初写阶段要求用全称单词编写的每个字每均大写,如XML标识符的命名规则第一个字符必须是英文字母(也可以是汉字、希腊字母、俄文字母等其他Unicode字符)。从第二个字符开始,可以使用英文字母、数字和下划线,但不能包含空格、标点符号、运算符号等字符。不能与关键字重名,但如果在关键字前面加上前缀,也可以成为合法标识符(不推荐,一般不要这样用)。长

6、度不能超过255个字符。Zhang 5nameStrageInt男sexStr2.2 数据类型数据类型:规定能够在计算机中表示的数的范围、及能够进行的操作。如整数类型、字符类型值类型基于值类型的变量直接存储值。将一个值类型变量赋给另一个值类型变量时,将复制包含的值。赋值前age2=ageInt这条语句是一个典型的赋值语句,表示把右边的计算结果保存到左边的变量中,即为变量赋值25 ageInt age2赋值后赋值后,两个变量的值完全一样,但两者再无任何“瓜葛”25 ageIntage225 引用类型基于引用类型的变量并不存储值,而是存储对该值的引用引用类型变量的赋值只复制对对象的引用,而不复制对

7、象本身。赋值前age2=ageInt这条语句是一个典型的赋值语句,表示把右边的计算结果保存到左边的变量中,即为变量赋值0 xA5 manAmanBZhang 25 赋值后两个变量实际是指向同一个对象0 xA5 manAmanBZhang 25 0 xA5 处理示例manA.age=manA.age+10 xA5 manAmanBZhang 25 0 xA5 处理示例manA.age=manA.age+1manB.age的值是多少?0 xA5 manAmanBZhang 26 0 xA5 C#中的值类型(1)布尔类型布尔类型的变量只有两种可能的值:ture或false(2)整数类型整数指没有小数

8、点的数,但范围比数学上的范围要小的多,在C#中,整数是一个闭区间。例例2.12.1using System;class calculation static void Main()ushort a,b,c;/定义了3个无符号短整型变量 a=8;b=6;c=b-ab-a;/表达式的值为负,无法向变量c赋值 例例2.22.2 class calculation static void Main()short a,b,c;/定义了3个短整型变量 a=5120051200;/常量51200超出了short类型的表达范围 b=16;c=a*ba*b;/表达式的值超出了short类型的表达范围 编译错误a

9、=5120051200;/常量51200超出了short类型的表达范围编译时就可发现这种错误,运行错误c=a*ba*b;/表达式的值超出了short类型的表达范围最可怕的错误!整数类型的表示方式十进制数:5,225十六进制数:0 x41(十进制数65)(3)字符类型字符类型指一个单独的字符,如N,天注意字符是用表示。转义字符:将某个字符表示另一种含义,用开头常用的转义字符转义字符转义字符意义意义UnicodeUnicode编码编码(十六进制十六进制)单引号u0027双引号u0022反斜杠u005C0空字符(null)u0000a响铃u0007b退格(从当前位置后退一列)u0008f换页(从当前

10、位置移到下页的开头)u000Cn换行(从当前位置移到下一列的开头)u000Ar回车(从当前位置移到本行的开头)u000Dt水平制表(跳到下一个Tab位置)u0009v垂直制表u000B例例2.3 2.3 利用转义字符,使计算机发出响铃声的控制台应用程序。using System;class bell static void Main()char x,y;/声明字符型变量x,y x=a;/向变量x赋值为表示响铃的转义字符 y=;/向变量y赋值为表示单引号的转义字符 Console.Write(您将听到0计算机小喇叭1发出的一声响,y,y);Console.WriteLine(x);/计算机小喇叭

11、发出响铃声 Console.Write(您将听到0计算机小喇叭1发出的一声响,y,y);这是write的一种用法,实际执行时,将用第一个y的值去换下0,用第二个y的值换下10称为占位符例例2.4 2.4 利用Unicode编码值向字符型变量赋值的控制台应用程序。using System;class unicode static void Main()char a,b;/声明了两个字符型变量a和b a=u59DA;/向字符型变量a赋予一个Unicode编码值 b=u660E;/向字符型变量b赋予另一个Unicode编码值 Console.WriteLine(你输入的两个Unicode编码的意思是

12、:01,a,b);(4)浮点类型浮点类型的数是指带有小数点的数,也称为实值,与整数一样,浮点数的范围也比数学上实数的范围小的多。例例2.5 2.5 下列控制台应用程序执行时,向单精度浮点变量x赋值3.14159326,查看输出结果。using System;class single static void Main()float x;/定义变量x为单精度浮点类型 x=3.1415926f;/若省略后缀f,则认为是double类型,发生错误 Console.WriteLine(x);例2.6 下面的控制台应用程序用于计算3的平方根,结果保存在双精度变量x中。using System;class

13、single static void Main(string args)double x;x=Math.Sqrt(3);/计算平方根 Console.WriteLine(3的平方根=0,x);例2.7 用浮点类型进行数值计算时可能出现的误差。using System;class miscount static void Main()double x,y,z;/定义了三个双精度浮点类型变量 x=10;/向变量x赋以常数值时,默认类型为double y=9.90;/向变量y赋以常数值时,默认类型为double z=x-y;/将算术表达式 x y 的值赋给double变量z Console.Writ

14、eLine(浮点数计算0-1=2,x,y,z);(5)decimal类型例例2.82.8 用decimal类型进行带有小数的数值计算时可以避免误差。using System;static void Main(string args)decimal x,y,z;x=10M;/decimal类型的常数值后面必须跟一个M或m y=9.9M;z=x-y;Console.WriteLine(十进制小数计算0-1=2,x,y,z);如何确定常量的类型整数的最小转换原则实数默认为双精度型f:强制作为单精度型m:强制作为demical型科学计数法在表示数时,可以使用e或E表示指数表示法如:3e5=3*105=

15、3000002.3 变量变量表示数值或字符串值或类的对象。变量存储的值可能会发生更改,但名称保持不变。变量在使用前必须声明声明变量数据类型 标识符1标识符2,标识符n:表示里面的内容是可选项:表示可以重复int age,number;float saly,height;变量初始化变量声明后,第一次对其进行的赋值操作称为初始化变量初始化后,才能参与其它运算可以在变量声明时初始化int age=16;也可以在变量声明后初始化int age;age=16;建议使用第2种方式简单类型数据之间的转换 简单类简单类型型允允许隐许隐式式转换转换到的到的类类型型sbyteshort、int、long、floa

16、t、double、decimalbyteshort、ushort、int、uint、long、ulong、float、double、decimalshortint、long、float、double、decimalushortint、uint、long、ulong、float、double、decimalintlong、float、double、decimaluintlong、ulong、float、double、decimallongfloat、double、decimalulongfloat、double、decimalcharushort、int、uint、long、ulong、floa

17、t、double、decimalfloatdouble例例 2.10 计算圆面积的控制台应用程序。using System;class area static void Main()double myarea,pi=3.14159;/定义了两个双精度浮点类型变量 int radius=8;/定义了整型变量 myarea=pi*radius*radius;/整数类型与浮点类型的混合运算 Console.WriteLine(圆的面积=0,myarea);显式转换(目标数据类型)变量或表达式Convert.To*(变量或表达式)例例2.112.11 将三基色(R、G、B)表示的彩色像素转换成灰度像素

18、的计算公式为 Gray=0.30R+0.59G+0.11B根据这个公式计算出任意一个指定像素的灰度值。程序代码如下:using System;class pixel static void Main()byte gray;byte r=240,g=201,b=129;/像素的三基色分量值 gray=(byte)(0.30*r+0.59*g+0.11*b);/显式转换成byte类型 Console.WriteLine(计算得到的像素灰度值=0,gray);字符串由多个字符组成的一个序列,叫字符串字符串常量使用 括起来this is a string“注意:a与a类型为String2.4 常量数值

19、常量字符常量字符串常量符号常量用一个标识符来表示一个常量,常用于常量难以书写或记录的情况const 标识符=值const pi=3.14159262.5 运算符与表达式2.5 运算符与表达式运算符运算表达式示例+加法x+y-减法x-y*乘法x*y/除法x/y%求模x%y+自增x+x-自减x-x表2-5 C#算术运算符加法运算符的多重作用两个操作数均为数字,相加的结果为两个操作数之和两个操作数均为字符串,把两个字符串连接在一起两个操作数分别为数字和字符串,则先把数字转换成字符串,然后连接在一起两个操作数分别为数字和字符,则先把字符转换成Unicode代码值,然后求和算术运算符的优先级当一个表达式

20、中含有多种算术运算符时,将按以下顺序求值:乘、除运算符(*/)求模运算符(%)加、减运算符(+-)关系运算符 关系运算符关系运算符测试测试关系关系表达式示例表达式示例=相等相等x=y!=不相等不相等x!=y小于小于x 大于大于x y=小于或等于小于或等于x=大于或等于大于或等于x=y逻辑运算符 1 1!(非)(非)唯一的单目逻辑运算符。它的结果是操作数原有逻辑值的反值。2 2&(与)(与)只有左、右操作数的值都为True时,结果为True,否则结果为False。3 3|(或)(或)左、右操作数只要有一个为True,结果即为True。仅当左、右操作数的值均为False时,结果才为False。位运

21、算符 1 1(按位取反)(按位取反)将二进制数的各位取原有值的反值。即原来为0,取反为1;原来为1,取反为0。2 2&(对应位(对应位“与与”)只有左、右操作数对应位的值都为1时,结果为1,否则结果为0。3 3|(对应位(对应位“或或”)左、右操作数只要对应位有一个为1,结果即为1。仅当左、右操作数的值均为0时,结果才为0。4 4(对应位(对应位“异或异或”)当左、右操作数对应位的值相同(即都为1或0)时,结果为0,否则结果为1。5 5(右移)(右移)将二进制操作数的各位向右移若干位,相当于逐次除2的操作。2.6 枚举与结构枚举(枚举(enumeration)enumeration)有限、可数

22、的数据元素组成的集合有限、可数的数据元素组成的集合 星期一到星期日星期一到星期日7 7个数据元素组成的集合个数据元素组成的集合一年内一年内1212个月组成的集合个月组成的集合 在在C#C#语言中,枚举是用标识符表示的整型常语言中,枚举是用标识符表示的整型常量的集合,枚举成员是具有整数类型的符号常量的集合,枚举成员是具有整数类型的符号常量量 什么叫什么叫“屈指可数屈指可数”?什么叫什么叫“不胜枚举不胜枚举”?声明枚举类型的一般形式 enumenum 枚举名枚举名 :基本数据类型:基本数据类型 枚举常量列表枚举常量列表 其中:enumenum:定义枚举类型的关键字枚举名:枚举名:定义枚举类型时赋予

23、的名称基本数据类型:基本数据类型:可选,指定枚举成员的基本数据类型,默认为int枚举常量列表:枚举常量列表:用标识符组成的列表,两个相邻的枚举成员之间用逗号分隔定义星期enum weekDaysSunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday默认默认Sunday=0Saturday=?定义枚举时指定枚举成员的值 enum weekDaysMonday=1,Tuesday,Wednesday,Thursday,Friday,Saturday,SundayMonday=1Saturday=?Sunday=?定义太阳系中行星轨道周期的枚

24、举 enum planetPeriods Mercury=88,Venus=225,Earth=365,Mars=687实例2.18 例例2.182.18 创建Windows窗体应用程序,显示太阳系中水星、金星、地球以及火星的轨道周期(即绕太阳一圈的天数)enum planetPeriods:int/声明枚举 Mercury=88,Venus=225,Earth=365,Mars=687private void Form1_Click(object sender,EventArgs e)label1.Text+=“水星周期+(int)planetPeriods.Mercury+天n;label

25、1.Text+=金星周期+(int)planetPeriods.Venus+天n;label1.Text+=地球周期+(int)planetPeriods.Earth+天n;label1.Text+=火星周期+(int)planetPeriods.Mars+天n;结构结构:多个不同数据类型的相关元素组合在一起而形成的一种数据结构 声明结构类型的一般形式:struct 结构名 结构成员声明语句1;结构成员声明语句2;结构成员声明语句n;例如,下面的语句声明了一个Student结构:struct Student public string name;public string sex;public

26、 uint age;public string phone;public uint score;实例实例2.192.19using System;using System;using using System.Windows.FormsSystem.Windows.Forms;namespace ex2_18namespace ex2_18 public partial class Form1:Form public partial class Form1:Form public Form1()public Form1()InitializeComponentInitializeCompone

27、nt();();structstruct Student Student /声明结构声明结构 -/见下页见下页 例例2.19 创建一个名为创建一个名为Student的结构,并且对它的成员执行读写操作的结构,并且对它的成员执行读写操作实例实例2.19(2.19(声明结构声明结构)struct Student/声明结构 public string name;/姓名(字符串类型)public string sex;/性别(字符串类型)public uint age;/年龄(无符号整数)public string phone;/电话号码(字符串类型)public uint score;/成绩(无符号整

28、数)实例实例2.19(2.19(事件过程事件过程)private void Form1_Click(object sender,private void Form1_Click(object sender,EventArgsEventArgs e)e)Student student1;Student student1;/创建创建StudentStudent类型的一类型的一个实例个实例 student1.name=student1.name=田一妮田一妮;student1.sex=student1.sex=女女;student1.age=19;student1.age=19;student1.p

29、hone=68752220;student1.phone=68752220;student1.score=100;student1.score=100;label1.Text+=label1.Text+=学生姓名:学生姓名:+student1.name+n;+student1.name+n;label1.Text+=label1.Text+=学生性别:学生性别:+student1.sex+n;+student1.sex+n;label1.Text+=label1.Text+=学生年龄:学生年龄:+student1.age+n;+student1.age+n;label1.Text+=label

30、1.Text+=电话号码:电话号码:+student1.phone+n;+student1.phone+n;label1.Text+=label1.Text+=学科成绩:学科成绩:+student1.score+n;+student1.score+n;本章小结C#语言的基本字符集仍然是ASCII字符集,C#规定了77个关键字,在程序中一般不要用作普通标识符。C#是一种强类型语言,程序中的所有变量都必须先声明,然后才能引用。在不同类型的变量之间交换数据时,如果不能进行隐式类型转换,则需要使用Parse()方法、Convert命令等进行显式类型转换。C#提供了丰富类型的运算符,当表达式中混合使用多

31、种运算符时,将按从高到低的优先级别依次执行,同等优先级别的运算符按从左到右的顺序执行,括号内的表达式将优先得到计算。作业1.编写控制台应用程序,计算1100的累加和2.编写控制台应用程序,计算1100之间所有奇数的累加和3.编写控制台应用程序,计算1100之间所有能被3和5整除的数的累加和4.编写控制台应用程序,接收用户从键盘输入的任意正整数n,计算n的阶乘5.编写控制台应用程序,计算1!+3!+5!+7!+9!+11!+13!+15!+17!+19!6.编写控制台应用程序,计算 e 1+1/1!+1/2!+1/3!+,直到最后一项小于10-67.编写控制台应用程序,接收用户从键盘输入的任意正整数n,判断n是否为素数(质数)8.编写控制台应用程序,找出100200之间的所有素数(质数)良好的祝愿祝大家取得好成绩!Good lucky to you!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁