C#基础知识-流程控制的应用(四)
流程控制我们在编程中运用到的地方非常的多,在上篇中仅仅只是简单的介绍每一种的使用,并没有运用到实例中,很难去理解它真正的作用。下面我们将实际的运用流程控制的代码写一些实例相关的程序,加深对流程控制的理解,并讲解一下异常处理以及断点调试的使用。
第一个实例我们使用switch语句来写一个大家在QQ或者微信中有玩过的输入你的名字,看看你上辈子是什么?下面是最终的一个结果:

上面的例子是不是很像我们在手机上分享过的呢?我们来思考一下这个流程,输入名字- 系统生成随机数 - 名字+随机数输出的文字 思考一下再看下面的代码:

上面实例化了一个随机数类对象(实例化会在后面的章节会讲到这里我们知道怎样使用就OK了)实例化了一个1-6之间的随机数字,然后使用一个变量name接受我们从控制台中输入的名字,在switch中使用了实例化后的rNumber对象作为一个参数,那么启动程序的时候就会随机的从1-6之间生成一个数字,然后在case中执行相应的内容。是不是很简单呢。
使用for循环输出99乘法表,最终效果如图:

这里的乘法表是一行一行的进行输出,第一行循环2次,第二行循环2次,依次….. 这里就需要使用到一个嵌套循环,最外层循环9次,因为有9行,每一行又循环它的行数次。下面看代码:

if判断这里就不演示了,在上篇中也已经有了案例,下面说一下程序调试、异常处理的常用的方法
断点调试:断点调试主要用来控制程序的运行,通过采用中断的方式停留在我们认为有问题的那条代码上。首先我们需要设置一个断点(在行号前点击空白处) – 单步运行(F11或者在菜单栏中选择) – 观察变量 – F10逐过程调试。
首先设置一个断点:

此时变量的值没有改变,当按下F11逐语句执行时。

str变量的值改变了。所以我们可以通过设置断点的方式让程序逐步执行,这样的话方便我们进行调试。
异常处理:异常处理在程序中是一个很重要的机制,当你的软件程序出现错误 BUG时,可以使用异常处理,常用的异常处理有捕获异常或者抛出异常,这里我不建议使用抛出异常的方式,在一个系统中如果没有良好的去捕获异常并写入日志中,而选择抛出视而不见的话会产生很多未知的错误,所以建议捕获异常并且使用日志的方式记录下来,方便以后程序的维护。

上面的案例
尝试将一个string类型并且赋值了中文的变量赋值给int类型,这样很明显是不可以的,这里就将异常捕获并输出控制台,异常处理的格式是try{ }语句块中放着可能会发生异常的代码,catsh(Exception e)e参数中保存了异常的信息。
也可以使用  catsh(Exception
e){  throw;  } 抛出异常,但是一般不建议这样做。
C#基础知识-流程控制的应用(四)的更多相关文章
- 016PHP基础知识——流程控制(四)
		<?php /** * 流程控制(四) do...while * do{ 代码段 * }while(){ * } * 特点:最少会执行一次代码段 */ /*$i=5; do{ echo $i; ... 
- php面试笔记(4)-php基础知识-流程控制
		本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而流程控制相关的 ... 
- 【shell编程】之基础知识-流程控制
		和Java.PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): <?php if (isset($_GET["q"])) { search(q); ... 
- 015PHP基础知识——流程控制(三)
		<?php /** *流程控制(三) */ /* 循环结构: while(){ } */ //设置脚本最长执行时间:100秒 //set_time_limit(100); $lantian = ... 
- 013PHP基础知识——流程控制(一)
		<?php /** * 13 流程控制(一) * if语句: if(表达式){ 表达式 }elseif(表达式){ 代码段 } * if语句中,一个条件成立,其他分支不执行. * if中的表达式 ... 
- Python 基础知识----流程控制
		判断语句 循环语句 嵌套 
- 014PHP基础知识——流程控制(二)
		<?php /** *switch 分支语句: * switch(表达式){ * case 值1: * ... * break; * * case 值2: * ... * break; * de ... 
- Java基础-程序流程控制第二弹(循环结构)
		Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ... 
- Go语言基础之流程控制
		Go语言基础之流程控制 流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”. Go语言中最常用额流程控制有if和for,而switch和goto主要是为了简化代 ... 
随机推荐
- 【树莓派】Linux应用相关:自动删除n天前日志
			linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志 ... 
- 谈谈在DevOps实践中,感觉最重要的这三个技术……
			从国内众多DevOps实践中,我们能看到下面三个技术尤其重要和火热: 容器:容器从根本上解决了软件对环境的依懒性,解决了各个环境之间的差异问题:它可以加速部署的速度,提高部署的效率:降低部署的成本.容 ... 
- Jmeter新建用例图示
			添加线程组 添加HTTP请求 编辑HTTP请求 添加HTTP信息头 编辑HTTP信息头 添加断言 添加查看结果树 添加聚合报告 添加响应时间 添加TPS 批量运行命令: ... 
- ECMAScript版本号总结
			最近想要研究下ES6,关于这个标准的发展历史.ES5. ES6.ES2015等等名称的定义都不怎么明确,查了很多资料,去除了程序员不关心的信息,下面是对ECMAScript规范发展历史及名词定义的 ... 
- Oracle子查询中any、some、all之间的区别
			用some,any和all对子查询中返回的多行结果进行处理. 下面我们来简单介一下这几个关键词的含义. * Some在此表示满足其中一个的意义,是用or串起来的比较从句. * Any也表示满足其中一个 ... 
- 使用register_shutdown_function触发写日志,使用fastcgi_finish_request提高响应速度
			公司内部的市场管理系统,一直是我一个人维护,最近老是有开发埋怨,内网的账号被人改了密码,账号被解绑了...哈的,错在这还不是一个完整的系统,既没有严格的权限也没有做操作日志呀... 权限现在是准备做在 ... 
- 《ECMAScript标准入门》第二版读书笔记
			title: <ECMAScript标准入门>第二版 date: 2017-04-10 tags: JavaScript categories: Reading-note 2015年6月, ... 
- Java中log4j的使用
			前言 距离上一篇文章又过去好长时间了,这段时间一直忙于工作,已经从net彻底转向Java了.工作也慢慢的步入正轨了,自己独自完成了一个小项目,不过工作中遇到了一些问题,还是得到了同学和同事的帮助.本来 ... 
- JavaScript数组基础编程题归纳
			之前的随笔"JavaScript中数组类型的属性和方法"中有介绍很多数组类型的方法,但都是一些理论.最近在练习在线编程题,发现自己还是习惯于用常规的循环来答题,对于数组的方法的使用 ... 
- Linux学习---vi/vim命令
			Vim是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用. 所以本文直接用Vim编辑器 基本上 vi/vim 共分为三种模式,分别是命令模式( ... 
