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主要是为了简化代 ...
随机推荐
- 解决MVC模型验证在IE 6 7下不起作用或者报错
文件版本列出: Jquery版本1.7.1 jQuery Validation 版本1.9.0 (VS2012创建MVC项目自动生成的版本) 最好VS2012创建MVC项目自动生成的版本,而不是VS2 ...
- iOS开发之UITabBarController
1.概述 跟UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换,典型例子就是QQ.微信等应用. 2.UITabB ...
- SocketServer模块
在利用select实现伪并发的socket博文中我们说了: 如果要实现一个server端可以和多个客户端进行通信可以使用 1.多线程 2.多进程 3.select I/O多路复用 在那篇博文中我们介绍 ...
- Linux上SQL及MYSQL简单操作
Linux上检查MYSQL是否安装: $ sudo service mysql start Ubuntu Linux安装配置MYSQL: $ sudo apt-get install mysql-se ...
- 一个web应用的诞生(9)--回到用户
在开始之前,我们首先根据之前的内容想象一个场景,用户张三在网上浏览,看到了这个轻博客,发现了感兴趣的内容,于是想要为大家分享一下心情,恩?发现需要注册,好,输入用户名,密码,邮箱,并上传头像后,就可以 ...
- crontab的定时任务不能自动执行,但是手动执行脚本一直能成功
crontab 问题小记: 环境变量问题, 养成良好的习惯, 在脚本开头export PATH 原因是 crontab 执行定时任务时,用的不是系统环境变量,而是自己的环境变量,可以把 echo $P ...
- 《Python基础教程》第1章读书笔记
# -*- coding:utf-8 -*- x = "hello " y = "world" print x+y print "hello &quo ...
- 使用FSharp 探索Dotnet图像处理功能1--反色变化
坚持写博客是最近的目标.加油. 业余学习fsharp以来一直觉得这才是Dotnet开发,或者说所有开发者应该拥有的语言.配合Visual Studio的代码提示,即时执行窗口.开发程序有着极大的乐趣. ...
- URL转换成二维码
转载请注明出处:http://www.cnblogs.com/cnwutianhao/p/6685804.html 二维码已经成为我们日常生活中的一个不可获取的产物,火车票上,景区门票,超市付款等等都 ...
- 在 redhat 6.4上安装Python 2.7.5
在工作环境中使用的是python 2.7.*,但是CentOS 6.4中默认使用的python版本是2.6.6,故需要升级版本. 安装步骤如下: 1,先安装GCC,用如下命令yum install g ...