C#语言最基本的重要语句:控制程序流的语句。它们不是按代码在程序中的排列位置顺序执行的。

条件语句

条件语句可以根据条件是否满足或根据表达式的值来控制代码的执行分支。C#有两个控制代码的分支结构: if语句,测试特定条件是否满足:switch语句,比较表达式和多个不同的值。

  • 对于条件分支,C#继承了C和C++的if..else 结构。对于用过程语言编程的人,其语法非常直观:

    1 if (condition) 
    2   Console.WriteLine(true);
    3 else
    4      Console.WriteLine(false)
  • 对于条件分支,C#继承了C和C++的if..else 结构。对于用过程语言编程的人,其语法非常直观:

     1  bool isZero;
    2  int i = 0; 
    3 if (i==0) 
    4 {   
    5 isZero = true;   
    6    Console.WriteLine("i is Zero");     
    7 }       
    8 else
    9 {   
    10     isZero = false;       
    11     Console.WriteLine("i is No-Zero");   
    12 }
  • 还可以单独使用if语句,不加最后的else语句。也可以合并else if 语句。
    单独使用if语句
    1 if (condition)
    2 {   
    3  Console.WriteLine(true);
    4  }

    合并else if 语句

     1  string input;
    2  input = Console.ReadLine();
    3 if (input == "") 
    4 {   
    5     Console.WriteLine("You typed in an empty string");   
    6 }       
    7 else if (input.Length < 5)   
    8 {     
    9     Console.WriteLine("The string had less than 5 characters.");     
    10 }     
    11 else if (input.Length < 10)     
    12 {           
    13     Console.WriteLine( "The string had at least 5 but less than 10 C haracters.");     
    14 }

    添加到if字句中的else if 语句的个数不受限制。注意,在上面的例子中,声明了一个字符串变量input让用户在命令行中输入文本,把文本填充到input中,然后测试该字符串变量的长度。代码还显示了在C#中如何进行字符串处理。

  • 对于if语句,要注意的一点是如果条件分支中只有一条语句,就不需要使用花括号。
    1 if (condition)   
    2       Console.WriteLine(true);

    但是为了保持与一致性,大部分人都会加上花括号。前面介绍的if语句还演示了用于比较数值的一些C#运算符。特别注意,C# “==” 对变量进行等于比较运算。此时不要使用 “=”,一个“=”用于赋值。前面介绍的if语句还演示了用于比较数值的一些C#运算符。特别注意,C# “==” 对变量进行等于比较运算。此时不要使用 “=”,一个“=”用于赋值。

  • 前面介绍的if语句还演示了用于比较数值的一些C#运算符。特别注意,C# “==” 对变量进行等于比较运算。此时不要使用 “=”,一个“=”用于赋值。
    在C#中,if子句中的表达式必须等于布尔值(Boolean)。不能直接测试整数(如从函数中返回的值),而必须显示地把返回的整数转换为布尔值 true和false,例如,将值与0或null进行比较:
    1 if (Dosomething() != 0)
    2 {
    3  
    4 } 
    5 else
    6 {         
    7  }  

    提示

在if语句中不使用花括号,可能在维护代码时导致错误。无论if语句返回true还是false,都常常给if语句添加第二条语句。每次都是用花括号,就可以避免这个编码错误。

使用if语句的一个指导原则是只有语句和if语句同一行上,才不允许程序员使用花括号,遵守这条指导原则,程序员就不太可能在添加第二条语句时不添加花括号。

C# 程序流控制 条件语句的更多相关文章

  1. (6)javascript的程序控制结构及语句-----(1)条件判断

    程序控制结构及语句 编程就是将现实应用,转换为程序能够读得懂的语法语句.Javascript编程中对程序流程控制主要是通过条件判断语句.循环控制语句及continue.break来完成的,其中条件判断 ...

  2. 编写高质量代码改善C#程序的157个建议——建议104:用多态代替条件语句

    建议104:用多态代替条件语句 假设要开发一个自动驾驶系统.在设计之初,此自动驾驶系统拥有一个驾驶系统命令的枚举类型: enum DriveCommand { Start, Stop } 当前该枚举存 ...

  3. C++程序设计基础(3)条件语句和循环语句

    注:读<程序员面试笔记>笔记总结 1.知识点 1.1条件语句 (1)if……:(2)if……else……:(3)if……else if……:(4)switch(){case ():brea ...

  4. Python —条件语句

    条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python程序语言指定任何非0和非空(null ...

  5. javascript语句——条件语句、循环语句和跳转语句

    × 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文 ...

  6. Todd's Matlab讲义第4讲:控制误差和条件语句

    误差和残量 数值求解方程\(f(x)=0\)的根,有多种方法测算结果的近似程度.最直接的方法是计算误差.第\(n\)步迭代结果与真值\(x^\*\)的差即为第\(n\)步迭代的误差: \begin{e ...

  7. (旧)子数涵数·C语言——条件语句

    首先,我们讲一下理论知识,在编程中有三种结构,分别是顺序结构.条件结构.循环结构,如果用流程图来表示的话就是: 那么在C语言中,如何灵活运用这三种结构呢?这就需要用到控制语句了. 而条件语句便是控制语 ...

  8. 在Windows8 Winrt中 高性能处理多个条件语句 用于实现自定义手势

    http://blog.csdn.net/wangrenzhu2011/article/details/8578806 (转) 在winrt中 多点触控 控件的应用越来越多,例如 各种手势与 控件之间 ...

  9. Python学习(5)条件语句

    目录 Python 条件语句 Python 简单的语句组 Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了 ...

  10. js中的条件语句

    //js中的条件语句 ; //example1 单分支语句 ){ console.log("你已经不年轻了!"); }else{ console.log("你依然很有活力 ...

随机推荐

  1. 【Java基础】-- instanceof 用法详解

    1. instanceof关键字 如果你之前一直没有怎么仔细了解过instanceof关键字,现在就来了解一下: instanceof其实是java的一个二元操作符,和=,<,>这些是类似 ...

  2. C语言离散化

    C语言离散化 最近看到STL就不想用, 于是写个C语言离散化, 居然能过主席树板子, 就写个博客介绍一下. qsort和bsearch都在<stdlib.h>或<cstdlib> ...

  3. [转]OpenSSL主配置文件openssl.cnf

    https://www.cnblogs.com/f-ck-need-u/p/6091027.html openssl系列文章:http://www.cnblogs.com/f-ck-need-u/p/ ...

  4. 龙哥量化:代写技术指标,通达信ZIG函数优化改进之字转向,高点用最高价,低点用最低价

    如果您需要代写技术指标公式, 请联系我. 龙哥QQ:591438821 龙哥微信:Long622889 N:=50; A1:ZIG(3,N/10); 代码只有两行,参数是50,表示涨幅5%,在调参数时 ...

  5. Qt数据库应用17-通用数据库请求

    一.前言 数据库请求是在数据库采集的基础上,换成http请求的形式来获取数据,这样就脱离了数据库组件,而采用的通用的http请求的形式从数据库拿数据库,这个通用性就非常广泛了,比如对方用java采集到 ...

  6. Qt编写安防视频监控系统44-视频上传

    一.前言 视频上传用来将本地存储的视频文件上传到云端服务器,间接的实现了本地视频存储到云端的功能,其实本质上是先存储在本地,文件生成后再去上传到云端的,最终的效果一样就是,为了拓展兼容性,直接做了单独 ...

  7. Qt开源作品8-通用控件移动

    一.前言 在做一些项目的过程中,有一种应用场景是需要拖动设备在一个容器中,自由拖动摆放到合适的位置,然后保存对应设备的坐标位置信息,在软件启动好以后自动加载配置好的坐标位置信息,将每个设备移动到对应的 ...

  8. 9.4classtest rewrite(仓库管理系统)

    第一部分,设计界面以及类的定义. import java.util.Scanner; public class viovo { static int number = 5;//五个商品信息 stati ...

  9. Matlab R2009b 版 license 到期问题

    打开2009b Matlab,反复提示需要激活,是lisense到期了,到期时间2017年11月11日.解决方法: 将以下内容替换 Matlab 安装路径下 license/*.lic 文件中的所有内 ...

  10. JMeter JSR223 Sampler 教程:性能测试的魔法棒

    JMeter JSR223 Sampler 教程:性能测试的魔法棒 宝子们,今天咱要深入探索 JMeter 里超厉害的 JSR223 Sampler,它就像是一把万能钥匙,能打开性能测试的各种奇妙大门 ...