条件执行语句

if 语句

语法:

  1. if(条件)
  2. {
  3. 语句1;语句2;语句3;
  4. ···
  5. }

执行过程: 先判断条件是否为true ,如果为true则执行语句块中的内容。如果为false,则跳过语句块,执行下面代码。

注:if括号中的条件,要能计算成bool类型的值。默认情况下,if语句只能带一句话。在我们写程序时,即使if后只有一句话,也要用{}括起来,养成良好的书写格式。

if-else 语句

语法:

  1. if(条件)
  2. {
  3. 语句1;
  4. }
  5. else
  6. {
  7. 语句2;
  8. }

执行过程:先判断条件是否为true,如果为true,则执行语句1中的内容,并且跳过语句2.。如果为false,则跳过语句1,执行语句2中的内容。

if-else-if语句

语法:

  1. if(条件1)
  2. {
  3. 语句1;
  4. }
  5. else if(条件2)
  6. {
  7. 语句2;
  8. }
  9. else
  10. {
  11. 语句3;
  12. }

执行过程:判断条件1是否为true,如果为true,则执行语句1,并且跳过语句块2,和语句块3。如果条件为false,则跳过语句块1进行条件2的判断,如果条件2为true,则执行语句2,且跳过语句块1和3。如果条件2为false,则跳过语句2,执行语句3。

练习:  //1)让用户输入一个整数n。2)如果接收的值n为正数,输出1~n间的全部整数。3)如果接收的值n为负值,用break或者return退出程序。

  1. {
  2. Console.WriteLine("请输入一个数字:");
  3. int n = Convert.ToInt32(Console.ReadLine());
  4. if (n > 0)
  5. {
  6. for (int i = 1; i <= n; i++) //利用for循环--如果接收的值n为正数,输出1~n间的全部整数
  7. {
  8. Console.WriteLine(i);
  9. }
  10. }
  11. else
  12. {
  13. return;
  14. }
  15. Console.ReadKey();
  16. }

switch 语句

语法:

  1. switch(表达式)
  2. {
  3. case 值1:    语句块1;
  4. break;
  5. case 值2:    语句块2;
  6. break;
  7. case 值3:    语句块3;
  8. break;
  9. default 值4: 语句块4;
  10. break;
  11. ···
  12. }

执行过程:首先计算表达式,根据表达式结果进行匹配case的值,如果有匹配项,则执行相应的后面的语句,直到后面break跳出switch语句。如果没有匹配项,有default就执行其后面的语句,如果没有default,则跳出switch语句,什么都不执行。

注:switch语句中不是必须有default的,有些弱类型语言是不用写的,但是为了程序更完整、更安全,建议写上default

例如:

  1. for (int i = 1; i < 6; i++)
  2. {
  3. switch (i)
  4. {
  5. case 2:
  6. Console.WriteLine("i={0}----在case2中", i);
  7. break;
  8. case 5:
  9. Console.WriteLine("i={0}----在case5中", i);
  10. break;
  11. default:
  12. Console.WriteLine("i={0}----在default中", i);
  13. break;
  14. }
  15. }

输出结果为:

i=1----在default中
i=2----在case2中
i=3----在default中
i=4----在default中
i=5----在case5中

关于if-else if和switch case 的区别:

相同点:都可以实现多分支结构

不同点:switch一般用于等值比较,if -else if 一般用于范围比较

循环语句

while语句

语法:

  1. while(条件) // 循环条件
  2. {
  3. 要循环执行的N调程序。 //循环体。
  4. }

执行过程:1先判断循环条件,如果为true,则跳向2,如果为false 则跳出循环,循环结束。
                    2执行循环体,循环体执行完后跳向1。

注意:在循环体中,一定要有那么一句话,改变循环条件中的某个变量的值。使循环条件终有一天成为false。如果没有这句话,这个循环将成为死循环。

do-while语句

语法:

do
{
循环体
}
while(条件);

执行过程:1执行循环体。

2判断条件是否成立,如果为true跳向1,如果为false 则跳出循环,循环结束。

while和do-while的区别

while:先循环,后执行。

do-while:先执行,后循环。

for语句

语法:

  1. for (表达式1;表达式2;表达式3)
  2. {
  3. 循环体;
  4. }

执行过程:1执行表达式1,转向2。

2判断表达式2,如果为true,则转向3。如果为false,则跳出循环。

3执行循环体。转向4。

4执行表达式3, 转向2。

注: for循环多用于已知循环次数。

跳转语句

break语句

用处:可以用于switch-case判断中,用于跳出switch。还可以用在循环中,用于跳出循环。

例:

  1. int x = 0;
  2. while (true)
  3. {
  4. x++;
  5. if (x >= 6)
  6. {
  7. break; //利用break,当x大于等于6时,跳出循环。
  8. }
  9. }

如果这道题没有break,则会陷入死循环。

注:break用于循环中时,跳出的是break所在的循环。

continue语句

用处:用于循环中,程序一旦执行到continue语句,立即结束本次循环(就是不再执行循环体continue下面的语句)直接进行下一次循环。

对于do-while/while循环直接进行下一次循环条件的判断,如果条件成立,则再次进入循环。对于for循环,先执行表达式3,再判断循环条件是否成功。

例:

[csharp] view plaincopyprint?

 
  1. for (int i = 0; i < 10; i++)
  2. {
  3. if (i<5)
  4. {
  5. continue;
  6. }
  7. Console.WriteLine("当i>5时,显示这句话。i={0}",i);
  8. }
  9. Console.ReadKey();

return语句

return 语句终止它出现在其中的方法的执行并将控制返回给调用方法。它还可以返回一个可选值。如果方法为void 类型,则可以省略 return 语句。

注意:return语句就是用于指定函数返回的值。return语句只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!

当执行return语句时,即使函数主体中还有其他语句,函数执行也会停止!

  1. if()
  2. {
  3. }
  4. else
  5. {
  6. return;
  7. } //跳出if-else循环。

黑马程序员-------.net基础知识三的更多相关文章

  1. 黑马程序员-------.net基础知识二

    变量 变量代表着一块内存空间,我们可以通过变量名称想内存存/取数据,有变量就不需要我们记忆复杂的内存地址. 向内存中申请一块内存空间的语法:   数据类型 变量名; 变量类型 变量类型 存储位置 自动 ...

  2. 黑马程序员-------.net基础知识一

    一 初识.net  .net是一种多语言的编程平台,可以用多达几十种的语言来进行开发,而C#就是基于.net平台的其中一种开发语言. 它的特点是: ⒈多平台:该系统可以在广泛的计算机上运行,包括从服务 ...

  3. 黑马程序员_JAVA基础知识总结3

    ------- android培训.java培训.期待与您交流! ---------- Java源文件的扩展名是.java,编译之后生成.class的文件.所有的类都有一个共同的继承祖先Object类 ...

  4. 黑马程序员_JAVA基础知识总结2

    ------- android培训.java培训.期待与您交流! ---------- IDE ---> Itegrity Development Environment Java EE --- ...

  5. 黑马程序员-------.net基础知识四

    常量(静态常量------compile-time) 语法:const 类型 常量名 =常量值: 例: [csharp] view plaincopyprint? { const double PI= ...

  6. 黑马程序员-------.net基础知识五

    方法(函数) 作用:用来重复代码,当我们在一个过程中反复的写了同样的代码,一般情况下,我们就可以把需要重复写的代码定义在方法中,用的时候只需调用即可 语法: [访问修饰符][static] 返回值类型 ...

  7. 黑马程序员+SQL基础(上)

    黑马程序员+SQL基础 ---------------<a href="http://edu.csdn.net"target="blank">ASP ...

  8. 黑马程序员+Winform基础(上)

    黑马程序员+Winform基础 ---------------<a href="http://edu.csdn.net"target="blank"> ...

  9. 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)

    正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G  QQ 1481135711 这是我总 ...

随机推荐

  1. 解决Eclipse自己主动补充问题空间

    假设我们使用增强的战斗有时当代码完成功能 String ss时却发挥String ssString; Integer i 但打了 Integer integer; 很麻烦. 为这包的关系 org.ec ...

  2. Android中FTP服务器、客户端搭建以及SwiFTP、ftp4j介绍

    本文主要内容: 1.FTP服务端部署---- 基于Android中SwiFTP开源软件介绍: 2.FTP客户端部署 --- 基于ftp4j开源jar包的客户端开发 : 3.使用步骤 --- 如何测试我 ...

  3. Sqlserver到处数据到Excel

    转:http://www.cnblogs.com/litianfei/archive/2007/08/10/850823.html ) drop procedure [dbo].[p_exporttb ...

  4. 电子设计省赛--SPWM(死区时间)

    //2014年4月17日 //2014年6月20日入"未完毕" //2014年6月21日 有两种方案:双定时器和单定时器 学长表示双定时器输出波形不好,还是单定时器好. 原理例如以 ...

  5. Systemd 入门教程:命令篇

    http://www.ruanyifeng.com/blog/2014/09/illustration-ssl.html

  6. 通过配置tomcat虚拟路径配置站点的静态资源

    我们常常站点中会提供给用户上传文件.图片.视频或者诸如为了提高性能生成的静态文件等存储在站点应用中.但如果静态资源文件和项目文件在同一个目录下,当我们重新部署文件时,war重新解压会导致静态资源文件的 ...

  7. 组合模式(Composite Pattern)

    组合模式定义:组合模式允许你将对象组合成树形结构来表现"整体/局部"层次结构,组合能让客户以一致的方式处理个别对象以及对象组合. 当涉及到如:菜单,子菜单之类的问题时,会自然而然的 ...

  8. Spring-data-redis操作redis cluster

    Redis 3.X版本引入了集群的新特性,为了保证所开发系统的高可用性项目组决定引用Redis的集群特性.对于Redis数据访问的支持,目前主要有二种方式:一.以直接调用jedis来实现:二.使用sp ...

  9. C#扫盲之:前台线程后台线程

    1.线程分类 线程由程序员创建,可是创建的方式不同,总体来说有两种,一种是个人构造,也就是使用thread类new线程对象创建,这一类线程是大部分程序员知道的,也叫专用线程;还有一种是由CLR创建,这 ...

  10. 有关IT的小笑话

    路上看到一个女孩朝我走来:“请问你是不是学计算机的?”我疑惑的点点头,她兴奋的又问:“那你有女朋友吗?”我兴奋的摇头:“没有啊,是不是你家电脑坏了?”她转身对后面的女孩说:“看吧,我就知道这种背双肩包 ...