C#程序开发基础-程序控制结构(C#从入门到精通).ppt

上传人:tia****nde 文档编号:2712971 上传时间:2019-11-29 格式:PPT 页数:37 大小:312.81KB
返回 下载 相关 举报
C#程序开发基础-程序控制结构(C#从入门到精通).ppt_第1页
第1页 / 共37页
C#程序开发基础-程序控制结构(C#从入门到精通).ppt_第2页
第2页 / 共37页
C#程序开发基础-程序控制结构(C#从入门到精通).ppt_第3页
第3页 / 共37页
点击查看更多>>
资源描述
第3章 C#程序开发基础 程序控制结构, 赋值和注释语句 分支结构语句 循环结构语句 字符串操作,3.1 赋值和注释语句,赋值语句和注释是程序代码中最基本的语句,本节将介绍二者的用法。,3.1.1 赋值语句,赋值语句执行赋值操作,就是给变量或常量一个数值,比如,让变量A的值是3,用语句表示就是A=3。赋值语句一般包括3部分,赋值运算符(=),变量,给变量的值。给变量的值可以是表达式的结果。 01 double x; /定义一个double型变量x 02 int y=3; /定义一个int型变量y,让y的值为3,可以读为把3赋给y, 03 int z=8; /定义一个int型变量z, 把8赋给z 04 x = y + z +Math.Sin(3.65);,3.1.2 注释语句,注释就是解释,就是对代码添加的描述性文字用来说明程序的功能、语句的作用等信息,以方便代码的阅读和维护。 C#的注释方法有三种,分别是单行注释、多行注释和XML注释。,单行注释以“/”开始,多行注释使用“/* */”跨行注释,XML注释使用特殊的注释语法,以“/”开头。在/之后,你可以使用预先定义的标签注释代码,也可以插入自己定义标签。,01 /* 多行注释,介绍程序的名称、功能和开发时间。 02 * 程序名: HelloWorld * 03 * 功 能:输出字符串Hello World! * 04 * 时 间: 2009-10-10 * 05 */ 06 namespace HelloWorld 07 08 public class HelloWorld 09 XML注释,说明程序的入口点和参数及返回值。,10 / 11 / 控制台应用程序入口点 12 / 命令行参数 13 / 运行成功返回0 14 / 15 16 public static int Main(string args) /程序入口点 17 /单行注释,说明语句的功能! 18 System.Console.WriteLine(“Hello World!“); /输出Hello World! 19 string name = System.Console.ReadLine(); /暂停程序的运行,接收键盘输入的字符 20 return(0); /运行成功返回 0 单行注释,说明语句的功能。 21 22 23 ,第3章 C#程序开发基础 程序控制结构, 赋值和注释语句 分支结构语句 循环结构语句 字符串操作,3.2 选择正确的道路-分支结构,3.3.1 条件语句 条件语句就是对条件进行判断,根据判断结果选择执行不同的分支。C#中提供了多种形式的条件语句。包括:if语句、if-else语句和switch语句。下面我们来一个个的学习。 单分支结构的if 语句 语法格式如下: if(条件表达式) 语句块 ,if(天气晴朗) /(条件) 去海滩玩耍, 双分支结构的if-else语句 语法格式如下: if(条件表达式) 语句块1 else 语句块2,01 static void Main(string args) 02 03 Console.Write(“请输入一个字母: “); 04 char c = (char)Console.Read(); /接收从键盘上输入的一个字符赋给c 05 if (Char.IsLower(c) /判断输入的字母是否为小写字母 06 /如果是小写字母执行下面语句 07 Console.WriteLine(“您输入的是小写字母.“); /输出“您输入的是小写字母” 08 09 else 10 /如不是小写字母执行下面语句 11 Console.WriteLine(“您输入的是大写字母.“); /输出“您输入的是大写字母” 12 13 , 多分支结构 if语句实现多分支结构的语法为,if(表达式1) 语句块1 /表达式1的值为真时执行的语句 else if(表达式2) 语句块2 /表达式2的值为真时执行的语句 else if(表达式n) 语句块n /表达式n的值为真时执行的语句 else 语句块n+1 /表达式1到n的值都不为真时执行的语句。,例:检查输入字符是否是小写字符、大写字符或数字。否则,输入字符不是字母字符。,01 Console.Write(“请输入一个字符: “); 02 char c = (char)Console.Read(); /接收键盘上输入的一个字符赋给字符型变量c 03 if (Char.IsUpper(c) /如果c是大写字母,执行下面语句 04 /下面语句输出“输入的字符是大写字母.” 05 Console.WriteLine(“输入的字符是大写字母.“); 06 07 else if (Char.IsLower(c) /如果c是小写字母,执行下面语句 08 /输出“输入的字符是小写字母.” 09 Console.WriteLine(“输入的字符是小写字母“); 10 11 else if (Char.IsDigit(c) /如果c是数字符号,执行下面语句 12 /输出“输入的字符是数字.” 13 Console.WriteLine(“输入的字符是数字.“); 14 15 else /如果c不是数字符号和字母,执行下面语句 16 /输出“输入的字符不是数字和字母.” 17 Console.WriteLine(“输入的字符不是数字和字母.“); 18 ,3.2.2 switch结构 switch语句能够根据表达式的值来选择要行的代码。在if语句中,if语句只能测试单个条件,如果需要测试多个条件,则需要书写冗长的代码。而switch语句能有效的避免冗长的代码并能测试多个条件。switch语句的语法是:,switch (表达式) case 常量表达式1: 语句1 break; case 常量表达式2: 语句2 break; case 常量表达式n: 语句n break; default: 语句n+1 break; ,【范例3-1】 输入两个数和运算符号,计算相应的运算结果。 在Visual Studio 2008中新建控制台应用程序,项目名称为“Calculator”。 在program.cs的main方法中输入如下代码(代码3-1.txt):,第3章 C#程序开发基础 程序控制结构, 赋值和注释语句 分支结构语句 循环结构语句 字符串操作,3.3.1 while循环,C#语言使用while语句实现当型循环,while循环的语法为: while (表达式) /循环体语句 ,例如,计算前100个自然数的和,即,即1+2+3+100。,1 int i, sum;/定义int变量i用于控制循环次数,sum用于累加求和 2 i = 1; /循环变量赋初始值为1 3 sum = 0; /累加器变量sum赋初值为0 4 while (i 101) /while循环,当i小于101时循环 5 /循环体,累加求和 6 sum = sum + i; /累加求和 7 i+; /循环变量的值增1 8 9,3.3.2 for循环,For循环语句是C#语句中使用最广泛,最灵活的一种循环控制语句。语法为: for(表达式1;表达式2;表达式3) /循环体 ,【范例3-2】 用for循环计算 1+2+3+100的和。,1 int sum; /定义累加变量sum 2 sum = 0; /累加变量赋初始值为0 3 Console.WriteLine(”计算1+2+3+100的和:“); 4 for (int i=1;i=100;i+)/循环变量i从1开始到100变化循环,i每次增1 5 /循环,累加求和 6 sum = sum + i; /累加求和 7 8 Console.WriteLine(”1+2+3+100=0“,sum);,3.3.3 foreach循环,for each循环用于遍历整个集合或数组,可以获取集合中的所有对象,循环条件不使用布尔表达式。foreach循环简单易用,代码简洁。在以后的学习中,我们会经常用到。语法如下: foreach(数据类型 局部变量 in 集合或者数组) /代码块 ,例如:输出数组中的每个元素。,string str =”Jan“, ”Feb“, ”Mar“, ”Apr“, ”May“, ”Jun“; /定义数组并赋初值 foreach (string s in str)/如果数组中存在元素则执行循环 Console.WriteLine(s);/分别输出数组中的每个元素 ,3.3.4 循环嵌套,循环嵌套就是在循环体中还可以使用循环语句,前面讲过的几种循环都可以互相嵌套的。 例:找出100之内的素数。,1 static void Main(string args) 2 3 Console.Write(”100之中的素数有:“);/输出提示信息 4 for (int i = 2; i 100; i+) /外层循环,i从2到100循环分别判断i是否是素数 5 6 bool isPrime = true ;/定义isPrime变量,标志某个数是否为素数 7 for (int j = 2; j i-1; j+) /内层循环,j从2到i-1循环,看j能否整除i 8 9 if (i % j = 0) /如果i能整除以j,说明i不是素数 10 11 isPrime = false; /i不是素数,设置isPrime=false 12 break; /跳出内层循环,继续外层循环 13 14 15 /内层循环结束 16 if (isPrime) /i如果是素数则输出 17 18 Console.Write(” 0 , “,i) ;/输出素数i 19 20 /外层循环结束 21 ,第3章 C#程序开发基础 程序控制结构, 赋值和注释语句 分支结构语句 循环结构语句 字符串操作,3.4 字符串操作,字符串是程序中用的非常多的数据类型,也是最常用的一种引用类型。虽然C#是严格区分大小写的,但是string和String在C#中是一样的。String类属于System命名空间,是.NET Framework提供的专门处理字符串的类库。string相当于String在C#中的别名,在C#中它们是完全相同的。,3.4.1 静态串String,String对象的内容是不可改变的,所以也称为静态串。不可改变指的是只要创建一个String类型的对象,就不能再更改对象的值,任何赋值、修改操作都将被分配一个新值。.NET Framework提供了很多处理字符处的方法,下面介绍常用的一些方法。,可以使用String类的Compare、CompareOrdinal、CompareTo、Equals、EndsWith 和 StartsWith等方法进行字符串的比较。 使用 IndexOf、IndexOfAny、LastIndexOf 和 LastIndexOfAny 方法可获取字符串中子字符串。 使用 Copy 和 CopyTo 可将字符串或子字符串复制到另一个字符串或 Char 类型的数组。 使用 Substring 和 Split 方法可通过原始字符串的组成部分创建一个或多个新字符串。 使用 Concat 和 Join 方法可通过一个或多个子字符串创建新字符串。 使用 Insert、Replace、Remove、PadLeft、PadRight、Trim、TrimEnd 和 TrimStart 可修改字符串的全部或部分。 使用 ToLower、ToLowerInvariant、ToUpper 和 ToUpperInvariant方法可更改字符串中 Unicode 字符的大小写。 使用 Length 属性可获取字符串中 Char 对象的数量;使用 Chars 属性可访问字符串中实际的 Char 对象。,【范例3-3】 String类比较、连接和分割字符串方法的使用。, 在Visual Studio 2008中新建控制台应用程序,项目名称为“StringDemo“。 在program.cs的main方法中输入如下代码(代码3-3.txt):,3.4.2 动态串StringBuilder,字符串对象是“不可变的”,即它们一旦创建就无法更改。对字符串进行操作的方法实际上返回的是新的字符串对象。因此,出于性能方面的原因,大量的连接或其他涉及字符串的操作应当用System.Text.StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。,【范例3-4】动态字符串的使用。,1 StringBuilder sb1 = new StringBuilder();/构造一个空 StringBuilder名为sb1 2 Console.WriteLine(“sb1的初始容量为:0”, sb1.Capacity);/输出sb1的容量 3 Console.WriteLine(“sb1的初始长度为:0“, sb1.Length); /输出sb1的长度 4 sb1.Append(“hello world“); /向sb1中添加字符串,构造新字符串 5 Console.WriteLine(“向sb1中添加后sb1的容量为:0“, sb1.Capacity); 6 Console.WriteLine(“向sb1中添加后sb1的长度为:0“, sb1.Length); 7 sb1.Append(“ hello C# I am very like learning English. “);,8 Console.WriteLine(“在次向sb1中添加后sb1的容量为:0“, sb1.Capacity); 9 Console.WriteLine(“在次向sb1中添加后sb1的长度为:0“, sb1.Length); 10 StringBuilder sb2 = new StringBuilder(“I Love java“, 30);/创建动态串sb2 11 Console.WriteLine(“sb2的原始内容是:“); 12 Console.WriteLine(sb2); 13 Console.WriteLine(“使用replace方法将sb2中的java换成C#后内容为:“); 14 Console.WriteLine(sb2.Replace(“java“, “C#“);/输出替换后的sb2的内容 15 Console.WriteLine(“使用insert方法在sb2第七个字符中添加java and 后sb2的内容为“); 16 Console.WriteLine(sb2.Insert(7, “java and “);/输出添加java and后sb2的内容 17 Console.WriteLine(“使用remove方法将sb2中第个字符以后的删除后sb2的内容为:“); 18 Console.WriteLine(sb2.Remove(0, 7);/输出删除第7个字符后的sb2的内容,3.6 跟我上机,编写程序,利用循环语句求两个正整数的最大公约数和最小公倍数。 编写一个程序打印字母表和对应的ASCII码值。,Good bye,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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