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基础】-- isAssignableFrom的用法详细解析

    最近在java的源代码中总是可以看到isAssignableFrom()这个方法,到底是干嘛的?怎么用? 1. isAssignableFrom()是干什么用的? 首先我们必须知道的是,java里面一 ...

  2. OSG开发笔记(三十七):OSG基于windows平台msvc2017x64编译器官方稳定版本OSG3.4.1搭建环境并移植Demo

    前言   自行编译的osg版本插件比较多,如果对版本没有特定要求,但是对环境编译器有特定要求,可以反向融合编译器符合要求的osg版本.   OSG下载过程   osg官网:http://www.osg ...

  3. WxPython跨平台开发框架之参数配置管理界面的设计和实现

    我曾经在2014年在随笔<Winform开发框架之参数配置管理功能实现-基于SettingsProvider.net的构建>介绍过基于.NET开发的参数配置管理界面,本篇随笔基于类似的效果 ...

  4. Git clone报错“Connection was reset, errno 10054”

    前情 最近在使用一个UI库的时候,发现其中一个BUG,于是想尝试提一个PR. 坑位 我平时习惯用https的方式拉取代码,发现在clone代码的时候一直失败,错误提示:OpenSSL SSL_read ...

  5. Fiddler模拟网络超时

    前情 最近在优化接口请求错误的报错提示,希望尽可能的能从提示语知道当前错误大致原因,于是我需要模拟各种错误请求的状况. 问题 网络超时是很常见的接口请求错误情况,在没有服务端配合的情况下,我需要怎样来 ...

  6. C#/.NET/.NET Core技术前沿周刊 | 第 17 期(2024年12.09-12.15)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...

  7. 【Python】【爬虫】【爬狼】003_获取搜索结果的页数

    # 获取搜索内容的页数 需要的包 import urllib.request # 获取网页源码 import re # 正则表达式,进行文字匹配 from bs4 import BeautifulSo ...

  8. Linux 查看 && 修改端口范围限制

    1.显示当前临时端口的范围: sysctl net.ipv4.ip_local_port_range或 cat /proc/sys/net/ipv4/ip_local_port_range一般情形下: ...

  9. Qt编写地图综合应用43-点聚合

    一.前言 点聚合的出现就是为了减少一个可视区域内,密密麻麻绘制的太多的标注点.在地图上查询结果通常以标记点的形式展现,但是如果标记点较多,不仅会大大增加客户端的渲染时间,让客户端变得很卡,而且会让人产 ...

  10. Qt音视频开发43-人脸识别服务端

    一.前言 上一篇文章写道人脸识别客户端程序,当然要对应一个服务端程序,客户端才能正常运行,毕竟客户端程序需要与服务端程序进行交互他才能正常工作.通常人脸识别服务端程序需要和人脸识别的相关处理库在一起, ...