第2讲C程序设计基础(一)课件

上传人:29 文档编号:242621859 上传时间:2024-08-29 格式:PPT 页数:66 大小:361.08KB
返回 下载 相关 举报
第2讲C程序设计基础(一)课件_第1页
第1页 / 共66页
第2讲C程序设计基础(一)课件_第2页
第2页 / 共66页
第2讲C程序设计基础(一)课件_第3页
第3页 / 共66页
点击查看更多>>
资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第二讲 C#程序设计基础(一),掌握C#的数据类型及常用运算符和优先级。,了解控制流程的两种方法。,理解和掌握布尔逻辑的基本概念及布尔运算符的用法。,掌握分支、循环流程控制语句的使用方法。,重点和难点:C#的数据类型及常用运算符、布尔运算符的用法、分支结构及循环结构程序设计方法。,第二讲 C#程序设计基础(一)掌握C#的数据类型及常用运,1,第二讲 C#程序设计基础(一),2.1 C#数据类型,2.2 C#,运算符与优先级,2.3 C#流程控制语句,第二讲 C#程序设计基础(一)2.1 C#数据类型,2,2.1 C#数据类型,2.1.1,值类型,2.1.2,引用类型,2.1.3,值类型间的数据转换,2.1 C#数据类型2.1.1值类型,3,C#数据类型,C#数据类型分为两类:值类型和引用类型。,C#中把基本数据类型规定为值类型,而把一些较大的类型规定为引用类型,这种设计方式是为了得到最佳的性能。,值类型包括整型数类型、布尔类型、浮点类型和小数型、结构类型和枚举类型。,引用类型包括类类型、数组、接口类型和委托类型、字符串类型 。,C#数据类型C#数据类型分为两类:值类型和引用类型。,4,值类型变量和引用类型变量的主要区别,存储位置,值类型变量(定长)直接把变量的值保存在堆栈中。,引用类型的变量(变长)把实际数据的地址保存在堆栈中,而实际数据则保存在堆中。,赋值操作,值类型变量在赋值时使用了内存复制的方式,一个变量的操作不会影响到其他变量。,引用类型变量在赋值时,直接传递的是地址,不存在内存数据的复制,没有性能损失,对一个变量的操作会影响到引用同一个对象的另一个变量。,值类型变量和引用类型变量的主要区别存储位置,5,.NET基本类型,在.NET Framework中,被编译器直接支持的数据类型称为基本类型,也被设计成类,每种数据类型都有属性和方法,在.NET Framework类库中都有对应的类名。,.NET基本类型包括:,基本值类型:包括整型、浮点类型、小数型、布尔型、字符型。,基本引用类型:包括Object类型(对象类型)、String类型。,.NET基本类型 在.NET Frame,6,2.1.1 值类型,声明一个值类型的语法形式为:,数据类型名 变量名称 = n;,例如:,int a = 100; /声明一个整型变量a,并赋初值为100;,注意,C#不允许使用未初始化的变量。,2.1.1 值类型 声明一个值类型的语法形式为:,7,名称,.NET类名,说明,范围,sbyte,System.SByte,8位有符号整数,-2,n-1,2,n-1,-1(n=8),byte,System.Byte,8位无符号整数,02,n,-1(n=8),short,System.Int16,16位有符号整数,-2,n-1,2,n-1,-1(n=16),ushort,System.Uint16,16位无符号整数,02,n,-1(n=16),int,System.Int32,32位有符号整数,-2,n-1,2,n-1,-1(n=32),uint,System.Uint64,32位无符号整数,02,n,-1(n=32),long,System.Int64,64位有符号整数,-2,n-1,2,n-1,-1(n=64),ulong,System.Uint32,64位无符号整数,02,n,-1(n=64),float,System.Single,32位单精度浮点数,(7位有效数字),1.510,-45, 3.4,10,38,double,System.Double,64位双精度浮点数,(15到16位有效数字),5.010,-324, 1.7,10,308,decimal,System.Decimal,128位高精度十进制数,(28位到29位有效数字),1.010,-28, 7.9,10,28,bool,System.Boolean,True或 false,char,System.Char,16位Unicode字符,C#基本值类型,注:有效数字指从第一个不是零的数字起到最后一个数为止的数位。,整数型,浮点型,小数型,布尔型,字符型,名称.NET类名说明范围sbyteSystem.SByte8,8,关于基本值类型的说明(1):,如果对一个整数的数值没有作出指示,编译器将其默认为int类型,若不是int型,要加相应后缀,如:,uint ui=9000u;,long l=9000L;,ulong ul=9000L;,如果对一个非整数的数值没有作出指示,编译器将其默认为double类型,如果想指定为float型或小数型,数值要分别加后缀f或m, 如:,float f=345.12f;,decimal d=10.0m;,bool类型的值和整数类型不能互相转换。,关于基本值类型的说明(1):如果对一个整数的数值没有作出指示,9,关于基本值类型的说明(2):,char类型的值是使用单引号括起来的,如A,汉。,C#定义了一种特殊形式的字符数据,即以“”开头的转义字符,转义字符用于在程序中取代特殊的控制字符,如下表所示。,转义序列,字符,转义序列,字符,单引号,f,换页,双引号,n,换行,反斜杠,r,回车,0,空,t,水平Tab,a,警告,v,垂直Tab,b,退格(,),关于基本值类型的说明(2):char类型的值是使用单引号括起,10,结构类型,在实际生活中,经常把一组相关的信息放在一起。,如,记录一本书的相关信息如书名、作者和内容等。如果按照简单的管理,每一条记录都要放到三个不同的变量中,这样的工作量很大,也不够直观。,C#结构体可以解决这个问题。把一系列相关的变量组织成为一个单一实体的过程,称为生成结构的过程。这个单一实体的类型就叫做结构类型,每一个变量称为结构的成员。结构类型的变量采用struct来进行声明。声明形式如下:,访问修饰符 struct 结构名称,/主体,结构类型在实际生活中,经常把一组相关的信息放在一起。,11,下面根据记录书中的信息定义一个结构体,代码如下:,public struct centent,public string title;,public string author;,public string content;,下面根据记录书中的信息定义一个结构体,代码如下:,12,结构类型举例:,using System;,namespace StructExample, public struct Point, public int x;,public int y;,public string s;,class Program, public static void Main(), Point p;,p.x = 3;,p.y = 4;,p.s = ok;,Console.WriteLine(The result is 0,1,2, p.x, p.y, p.s);,Console.ReadLine();,运行结果:The result is 3,4,ok,结构类型举例:using System;,13,枚举类型,枚举是值类型的一种特殊形式,为简单类型的常数值提供一种方便记忆的方法。枚举类型的定义形式一般为:,enum:枚举数据类型 枚举名 枚举值表;,每一种枚举类型都有一种基本类型,long、int、short和byte等整数类型均可作为枚举类型的基本类型,如果不指明数据类型,则默认为int型,且第一个元素的值为0,其后每一个连续元素的值加1递增,但是也可以给元素直接赋值定义。如:,enum DaysMon,Tue,Wed,Fri,Sat,Sun; /Mon:0,Tue:1,该枚举名为Days,枚举值共有7个,即一周中的7天,所有被声明为Days类型的变量,其值只能是七天中的某一天。例如,当定义Days类型变量aDays后,变量aDay的值为如下形式:,Days aDay;,aDay=Days.Wed;,又如:,enum Data:long Min=255l,Mid=1024l,Max=32768l;,枚举类型枚举是值类型的一种特殊形式,为简单类型的常数值提供一,14,枚举类型举例,using System;,namespace EnumExample, class Program, /定义枚举型数据days,并赋值,Sun到Sat的值分别对应于0到6,enum days Sun, Mon, Tue, Wed, Thu, Fri, Sat ;,static void Main(), Console.WriteLine(days.Wed);,Console.WriteLine(int)days.Wed);,/定义days型变量myday,为其赋枚举中的值Fri,days myday = days.Fri;,Console.WriteLine(myday);,Console.ReadLine();,运行结果:,Wed,3,Fri,枚举类型举例using System;,15,2.1.2 引用类型,在基本类型里的引用类型有两个数据类型,即Object类型和String类型。,名称,.NET 库别名,说明,Object,System.Object,根类型,.NET库中的其它任何类型都是从它派生而来的(包括值类型)。,String,System.String,代表Unicode字符串,2.1.2 引用类型 在基本类型里的引用类型有两个数据类型,16,关于基本引用类型的说明,(1)Object类型,在C#中,Object类型是一切类型的最终父类型,所有内在的和用户定义的类型归根结底都是由它派生而来的。,(2)String类型(字符串),C#提供了一个封装良好的string类,可以方便地执行字符串相关的操作,如下所示:,string string1=“你好”;,string string2=“C#”;,string string3=string1+string2;,关于基本引用类型的说明(1)Object类型,17,(3)字符串在赋值方面像值类型,而不像引用类型。,using System;,class stringexample,static void Main(),string s1=a string;,string s2=s1;,Console.WriteLine(s1 is + s1);,Console.WriteLine(s2 is + s2);,s1=another string;,Console.WriteLine(s1 is now +s1);,Console.WriteLine(s2 is now + s2);,Console.ReadLine();,运行结果如下:,s1 is a string,s2 is a string,s1 is now another string,s2 is now a string,(3)字符串在赋值方面像值类型,而不像引用类型。,18,(4)String是Uncode字符串,即每个英文字母与汉字一样,均占两个字节,长度均为1。例如:,string str=“ab张三cde”;,Console.WriteLine(str.Length); /输出结果:7。,(5)可以使用Format方法将字符串表示为规定格式。规定格式的一般形式为:,N,M:格式码,其中, :表示其中的内容为可选项。,N:从零开始的整数,表示第几个参数。,M:可选整数,表示最小长度。若该参数的长度小于M的绝对值,就用空格填充,如果M为负,则左对齐;如果M为正,则右对齐。M默认为0。,格式码:可选的格式化代码字符串(字母不区分大小写)。,如:,int i=123;double j=123.453;,String s=String.Format(“i=0,-7:d5,j=1,7:f2”,i,j);,Console.WriteLine(s);,结果:i=00123 ,j= 123.45,(4)String是Uncode字符串,即每个英文字母与汉字,19,部分格式码,格式符,含义,示例,:(int i=10;double x=10.5;),结果,C,将数字按照金额形式输出,Console.WriteLine(“0:C”,i);,¥10.00,Console.WriteLine(“0:C”,x);,¥10.50,Dn,输出整数,(n为数字个数,不足补0),Console.WriteLine(“0:D”,i);,10,Console.WriteLine(“0:D5”,i);,00010,Fn,小数点后位数固定,(n为小数点位数,不足补0),Console.WriteLine(“0:F”,i);,10.00,Console.WriteLine(“0:F4”,i);,10.5000,部分格式码格式符含义示例:(int i=10;double,20,2.1.3 值类型之间的数据转换,同类整数值类型之间有两种转换方式:,隐式转换与显式转换;,所有值类型之间的转换,都可以使用Convert类转换。,2.1.3 值类型之间的数据转换 同类整数值类型之间有两种,21,(1)同类整数值类型之间的数据转换-隐式转换,从低精度、小范围的数据类型转换为高精度、大范围的数据类型,可以用隐式转换。,例如:,int k = 1;,long i = 2;,i = k; /隐式转换,(1)同类整数值类型之间的数据转换-隐式转换 从低,22,(2)同类整数值类型之间的数据转换-显式转换,从大范围类型的数据转换为小范围类型的数据的时候,必须采用显式转换,而且特别谨慎,因为此时有丢失数据的危险。如:,long k = 5000;,int i = (int)k,所有的隐式转换也都可以采用显式转换的形式来表示。如:,int i = 10;,long j = (long)i;,(2)同类整数值类型之间的数据转换-显式转换,23,(3)使用Convert类进行所有值类型间的转换,命 令,结 果,Convert.ToBoolean(val),val转化为bool,Convert.ToByte(val),val转化为byte,Convert.ToChar(val),val转化为char,Convert.ToDecimal(val),val转化为decimal,Convert.ToDoube(val),val转化为double,Convert.ToInt16(val),val转化为short,Convert.ToInt32(val),val转化为int,Convert.ToInt64(val),val转化为long,Convert.ToSByte(val),val转化为sbyte,Convert.ToSingle(val),val转化为float,Convert.ToString(val),val转化为string,Convert.ToUInt16(val),val转化为ushort,Convert.ToUInt32(val),val转化为unit,Convert.ToUInt64(val),val转化为ulong,(3)使用Convert类进行所有值类型间的转换 命 令结,24,Convert类示例,static void Main(),double balance,interestRate;,Console.WriteLine(请输入当前余额(元):);,balance=Convert.ToDouble(Console.ReadLine();,Console.WriteLine(请输入年利率:);,interestRate=1+Convert.ToDouble(Console.ReadLine()/100.0;,balance*=interestRate;,Console.WriteLine(1年后的余额将达0:f2元。,balance);,Console.ReadLine();,Convert类示例static void Main(),25,2.2 运算符与优先级,C#运算符分为以下两大类:,算术运算符,数学运算符:+、-,*,/,%,递增递减运算符:+,-(用于前缀); +,-(用于后缀),算术赋值运算符:=,*=,/=,%=,+=,-=,布尔运算符,下面只讲算术运算符,第二节再讲布尔运算符。,2.2 运算符与优先级C#运算符分为以下两大类:,26,数学表达式示例,int var1,var2=5,var3=6;,var1=var2+var3;,var1=var2-var3;,var1=var2*var3;,var1=var2/var3;,var1=var2%var3;,数学表达式示例int var1,var2=5,var3=6;,27,递增递减运算符示例,int var1,var2=5;,var1=+var2; /var1的值是var2+1,var2递增1,var1=-var2; /var1的值是var2-1,var2递减1,var1=var2+; /var1的值是var2,var2递增1,var1=var2-; /var1的值是var2,var2递减1,递增递减运算符示例int var1,var2=5;,28,算术赋值运算符示例,int var1,var2=5;,var1=var2;,var1+=var2;/ var1= var1+var2,var1-=var2;/ var1= var1- var2,var1*=var2;/ var1= var1* var2,var1/=var2;/ var1=var1/var2,var1%=var2;/ var1= var1% var2,算术赋值运算符示例int var1,var2=5;,29,算术运算符(优先级高,低),组,运算符,一元运算符(1),+,-,+,-(用作前缀),乘/除/取余运算符,*,/,%,加/减运算符,+,-,赋值运算符,=,*=,/=,%=,+=,-=,一元运算符(2),+ -(用作后缀),算术运算符(优先级高低)组运算符一元运算符(1)+,-,+,30,2.3 C#流程控制语句,2.3.1 布尔逻辑,2.3.2 C#流程控制语句,2.3 C#流程控制语句2.3.1 布尔逻辑,31,流程控制的两种方法,分支,有条件地执行代码。条件取决于计算的结果。,循环,重复执行相同的语句(重复执行一定的次数,或者在满足测试条件后停止执行)。,流程控制中要用布尔逻辑来控制流程的走向。,流程控制的两种方法分支,32,2.3.1 布尔逻辑,布尔逻辑的基本概念,布尔运算符,布尔表达式,常用运算符的优先级,2.3.1 布尔逻辑布尔逻辑的基本概念,33,布尔逻辑的基本概念,布尔(bool)类型可以有两个值:true或false。,布尔(bool)类型常常用于存储某些操作(如比较)的结果,以便操作这些结果。,如:要根据变量myVal是否小于10,来确定是否执行代码,为此,需要确定“myVal小于10”的真假。,若为真,“myVal小于10”的布尔结果为true。,若为假,“myVal小于10”的布尔结果为false。,布尔逻辑的基本概念布尔(bool)类型可以有两个值:true,34,布尔运算符,布尔比较运算符:根据比较关系的真假来确定true还是false。包括:=,!=,=。,布尔条件运算符:用于判断一个或多个条件是否满足指定的规则,主要包括:!,&,|。,布尔运算符布尔比较运算符:根据比较关系的真假来确定true还,35,布尔比较运算符示例,bool var1,int var2=8,var3=5;,bool var1=(va2=var3);,var1=(va2!=var3);,var1=(va2var3);,var1=(va2=var3);,/以上var1必须是布尔型,var2、var3可以是各种类型。,布尔比较运算符示例bool var1,36,布尔条件运算符示例,bool var1,var2=true,var3=false;,var1=!var2;,var1=var2/条件与,var1=var2|var3;/条件或,/var1、var2、var3必须是布尔型。,布尔条件运算符示例bool var1,var2=true,37,布尔表达式,布尔表达式是指结果为布尔值的表达式。如:,bool var;,int ix=3,iy=5;,char cx=g,cy=h;,string sx=abc,sy=def;,var=,ixvar3),var2=(var12var3)|(var4var5),Console.WriteLine(“var1=0 var2=1”,var1,var2);,运行结果:,var1=True var2=True,布尔运算及布尔表达式综合示例bool var1,var2;,39,常用运算符优先级(优先级高,低),组,运算符,初级运算符,(),一元运算符(1),+,-,!+,-(用作前缀),乘/除运算符,*,/,%,加/减运算符,+,-,布尔比较运算符(1),,=,布尔比较运算符(2),=,!=,布尔条件与运算符,&,布尔条件或运算符,|,三元运算符,?:,赋值运算符,=,*=,/=,%=,+=,-=,一元运算符(2),+ -(用作后缀),常用运算符优先级(优先级高低)组运算符初级运算符()一元运,40,2.3.2 C#流程控制语句,分支语句,循环语句,跳转语句,2.3.2 C#流程控制语句分支语句,41,1.分支语句,分支是控制下一步要执行哪些代码的过程,要跳转到的代码行由某个条件语句来控制。这个条件语句使用布尔逻辑,将测试值和可能值进行比较来决定程序走向。,C#中的3种分支技术如下:,三元运算符 ?:,if语句,switch语句,1.分支语句 分支是控制下一步要执行哪些,42,三元运算符,使用三元运算符是进行比较的最简单的方式。其语法如下:,?:,其中,,计算可得到一个布尔值,三元运算符的结果根据这个值来确定是,还是。,三元运算符的示例如下:,string resultStr=(myInteger10)?”小于10”:”大于等于10”;,三元运算符比较适合于简单赋值语句,根据比较结果执行大量代码的情形应使用if语句。,三元运算符使用三元运算符是进行比较的最简单的方式。其语法如下,43,if语句,功能:根据测试条件布尔表达式的值(true或false)选择要执行的语句序列。典型结构如下:,if (,测试条件,布尔表达式),测试条件,布尔表达式为真时执行的语句序列,else,测试条件,布尔表达式为假时执行的语句序列,注:以后,凡是一个语句序列包含多于一条的语句,就必须使用大括号 将语句序列括起来。,if语句 功能:根据测试条件布尔表达式,44,常见形式有:,1) 单独使用if语句,不加else语句,if (布尔表达式),布尔表达式为真时执行的语句序列,2) if语句和else语句配套使用的单条件测试,if (布尔表达式),布尔表达式为真时执行的语句序列,else,布尔表达式为假时执行的语句序列,常见形式有:,45,3) else块中嵌套if语句的多条件测试,if (布尔表达式1),布尔表达式1为真时执行的语句序列,else if (布尔表达式2),/,注意,else和if之间有一个空格。,布尔表达式2为真时执行的语句序列,else if (布尔表达式3),布尔表达式3为真时执行的语句序列,else,所有条件均为假时执行的语句序列,3) else块中嵌套if语句的多条件测试,46,/,if语句举例: 任意输入一个整数i,,先判断合法性,再判断i是否为”1”, 为“1”打印“i is one”,不为”1”,打印“i is not one”。,using System;,namespace ConsoleAppIfExample,class IfExample,static void Main(string args), int i;,Console.Write(i=);,i=Convert.ToInt32(Console.ReadLine();,if (i=1),Console.WriteLine(i is one);,else,Console.WriteLine(i is not one);,Console.ReadLine();,/ if语句举例: 任意输入一个整数i,,先判断合法性,再,47,switch 语句,switch 语句也叫case语句,可以一次将测试变量与多个可能值进行比较,这种测试仅限于可能值是离散的值类型常量。,switch语句一般形式为:,switch (条件表达式),case 常量表达式1:,语句序列1,break;,case 常量表达式2:,语句序列2,break;,default:,语句序列,break;,每个case后的语句序列可不用,大括号, 但是每个case块的最后,一句一定要是break语句。,switch 语句switch 语句也叫case语句,可以一,48,switch语句注意事项:,a) 如果某个case块为空,则会从这个case块直接跳到下一个case块上。,b),在一个switch中,不能有相同的两个case标记。,switch (条件表达式),case 常量表达式1:,语句序列1,break;,case 常量表达式2:,语句序列2,break;,default:,语句序列,break;,switch语句注意事项: a) 如果某个case块为,49,Switch语句举例,using System;,namespace SwitchExample, public class Program, public static void Main(), Console.WriteLine(一年中你最喜欢那个季节?);,string Season = Console.ReadLine(); /从键盘读取用户输入内容,Console.Write(你喜欢0 , Season);,switch (Season) /switch分支, case 春天:,Console.WriteLine(这样的天气最适合郊游了,相信你肯定喜欢!);,break;,case 夏天:,Console.WriteLine(火辣的天气,去游泳馆会是一个不错的选择!);,break;,case 秋天:,Console.WriteLine(秋高气爽,带上你的家人去旅行吧!);,break;,case 冬天:,Console.WriteLine(白雪茫茫的,去滑雪吧,绝对刺激!);,break;,default:,Console.WriteLine(请确认你输入的季节);,break;,Console.Read();,Switch语句举例using System;,50,2.循环语句,循环就是重复执行一些语句。循环语句包括:,do-while语句,while语句,foreach语句,for语句,用于循环次数不定的情形。,用于循环次数一定的情形。,2.循环语句 循环就是重复执行一些语句。循环语句包括,51,do-while,语句,do-while循环的结构如下:,do,语句序列,while (条件);,注:while语句后面的分号是必须的。,do-while循环先执行循环体内的语句序列,然后进行一个布尔测试,如果测试的结果为true,就继续循环。,如:,int i=1;,do,Console.WriteLine(“0”,i+);, while (i=10);,do-while语句 do-while循环的结构,52,例2-3,do-while循环举例。给定当前余额、年利率及预期余额,计算几年后存款余额达到预期余额。,double balance,interestRate,targetBalance;,Console.WriteLine(,请输入当前余额(元),:);,balance=Convert.ToDouble(Console.ReadLine();,Console.WriteLine(,请输入年利率:);,interestRate=1+Convert.ToDouble(Console.ReadLine()/100.0;,Console.WriteLine(,请输入预期余额(元):,);,targetBalance=Convert.ToDouble(Console.ReadLine();,int totalYears=0;,do, balance*=interestRate;,+totalYears;,while (balancetargetBalance);,Console.WriteLine(在0年内,余额将达1元。,totalYears,balance);,Console.ReadLine();,例2-3 do-while循环举例。给定当前余额、年利率及预,53,while语句,While循环的结构为:,while (条件),语句序列,while循环非常类似于do-while循环,区别在于:while循环中的布尔测试是在循环开始时进行,循环体可能一次都不执行,而do-while循环是在最后进行布尔测试,循环体至少执行一次。如:,int i=1;,while (i=10),Console.WriteLine(“0”,i+);,while语句While循环的结构为:,54,例2-4 while循环举例。给定当前余额、年利率及预期余额,计算几年后存款余额达到预期余额。,double balance,interestRate,targetBalance;,Console.WriteLine(请输入当前余额(元):);,balance=Convert.ToDouble(Console.ReadLine();,Console.WriteLine(请输入年利率:);,interestRate=1+Convert.ToDouble(Console.ReadLine()/100.0;,Console.WriteLine(请输入预期余额(元):);,targetBalance=Convert.ToDouble(Console.ReadLine();,int totalYears=0;,while (balancetargetBalance), balance*=interestRate;,+totalYears;,Console.WriteLine(在0年内,余额将达1元。,totalYears,balance);,Console.ReadLine();,例2-4 while循环举例。给定当前余额、年利率及预期余额,55,foreach循环,foreach循环可以依次读取集合中的每一项,但不能修改集合中的任何一项。,foreach的语法如下:,foreach(类型 变量名 in 集合),执行语句;,类型为集合元素的类型,变量名表示集合中的每一个元素。每次执行一次循环语句,循环变量就读取集中的一个元素。,foreach循环foreach循环可以依次读取集合中的每一,56,foreach举例,static void Main(),string colors=Red,Blue,Green,White,Yellow;,foreach(string c in colors),Console.WriteLine(0,c);,Console.ReadLine();,foreach举例 static void Main(),57,for语句,do-while和while语句适于循环次数不定的情形。for语句用于循环次数一定的情形。,要定义for循环,需要下述信息:,(1)初始化:给计数器变量(可以是多个)赋初值。,(2)循环条件:继续循环的条件,当计数器变量不满足测试条件时结束循环。,(3)循环控制:在每次循环的最后,对计数器变量执行增减操作。,for循环一般形式为:,for (初始化;循环条件;循环控制),语句序列,for语句 do-while和whi,58,for语句简单举例,例:循环把1至10写到控制台上。,int i;,for(i=1;i=10;+i),console.writeline(“0”,i);,for语句简单举例例:循环把1至10写到控制台上。,59,3.循环的中断-跳转语句,有时需要在循环代码的处理上使用跳转语句实现更精细的控制。如下:,break语句,立即终止循环。,continue语句,立即终止当前的循环,继续执行下一次循环。,3.循环的中断-跳转语句 有时需要在循环代码的处,60,break语句举例,int i;,for (i = 1; i = 10; i+),if (i % 2) = 0),break; /break命令终止了整个循环。,Console.WriteLine(i);,Console.ReadLine();,运行结果:,1,break语句举例int i;,61,continue语句举例,int i;,for (i=1;i 121) ,if (aBool), int aInteger;,aInteger = (int)aFloat;,double aDouble;,aDouble = aFloat;,/float:7位有效数字;Double:15位有效数字,Console.WriteLine(浮点数aFloat的值由0分别变为1,2,aFloat,aInteger, aDouble);,long x =(long)Data.Min;,long y =(long)Data.Max;,Console.WriteLine(枚举类型的最小值和最大值分别为:0,1,x,y);,MyPoint aPoint;,aPoint.x = 10;,aPoint.y = 100;,Console.WriteLine(结构类型的值:0,1,aPoint.x,aPoint.y);,Console.ReadLine();,数据类型与控制流程综合示例class Program,63,作业:,1,.编写并调试一个控制台应用程序,输出1到5的平方值,要求:,1) 用for语句实现。,2) 用while语句实现。,3) 用do-while语句实现。,2,.设有如下数学表达式,从键盘上输入x,用if语句编程输出y的值。,y=,-1, x0,作业:1.编写并调试一个控制台应用程序,输出1到5的平方值,,64,第2讲C程序设计基础(一)课件,65,第2讲C程序设计基础(一)课件,66,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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