摘要:
因此我们了解到,我们需要更加精确的判断时间的界限。因此我们重新将代码改为如下:[代码]上述的代码,使用了4个条件的嵌套判断,将退房的时间作了精确的判断(考虑到了分秒的临界点),同时初学的人员再次要了解到注释的重要性,以上的逻辑,如果不描写注释,估计过一个月后,你自己都不知道自己在干什么了。现在我们运行程序,设定以下的时间段[代码]我们程序的运行结果得到了我们乐于见到的5.5天结构化编程,还有一个重... 阅读全文
摘要:
《五灯会元》卷十七中,有一则青原惟信禅师的语录:“老僧三十年前未参禅时,见山是山,见水是水。及至后来亲见知识,有个入处,见山不是山,见水不是水。而今得个休歇处,依前见山只是山,见水只是水。”这描述了我们对世界的一个观察和思考的过程,只要我们对事物进行执着的观察和思考,那在认识事物的过程中总是会经过以上的三个不同的过程和境界。我们在本节,将通过一个案例描述作为程序员应如何对待... 阅读全文
摘要:
数据类型转换是我们从小学就开始学习的内容,只不过在小学我们称为单位换算。比如一条狗加一匹马等于是多少呢?总不是两条狗或两匹马吧。我们需要把单位转为都可以计算的单位,比如动物。结果就是两只动物。这样的转换,我们称为数据类型转换。在C#中数据类型转换又分为隐式转换和显式转换。隐式转换是默认的转换,而显式转换就是必须明确说明的转换。比如¥1+$1的问题,在国际贸易结算中,默认将人民币转换为美元,那计算的... 阅读全文
摘要:
在2.2.1我们对C#的基本数据类型有了基本了解。C#将数据类型分为:值类型、引用类型和指针类型。通用类型系统支持两种一般类别的类型,每一类都细分成子类别: q 值类型:值类型直接包含它们的数据,值类型的实例要么在堆栈上,要么内联在结构中。值类型可以是内联的(由运行库实现)、用户定义的或枚举的。有关内联值类型的列表,请参见 .NET Framework 类库。q 引用类型:引用类型存储对值的内存地... 阅读全文
摘要:
我们开发了函数,当函数的调用者在使用函数的时候,我们希望函数的调用者可以正确的使用函数,比如给予函数正确的参数值。但在实际的过程中,函数的调用者可能由于各种原因给予了错误的值。在这种情况下,我们需要向调用者抛出错误信息,并中断程序的执行,这个过程我们称为异常。程序必须能够统一处理在执行期间发生的错误。公共语言运行库提供了一个模型,以统一的方式通知程序发生的错误,从而为设计容错软件提供了极大的帮助。... 阅读全文
摘要:
在软件开发的过程中,我们经常会重复的使用一些代码片段,因此我们往往将这样的代码片段作为函数进行调用。函数有4种模式的定义和使用q 有参数,有返回值:y=f(x)q 有参数,无返回值:f(x)q 无参数,有返回值:y=f()q 无参数,无返回值:f()在游戏、图形、建筑领域的软件应用中,我们经常需要计算几何图形的面积。对于这些经常需要使用的计算,我们往往将计算的代码封装为函数进行使用。[代码]我们来... 阅读全文
摘要:
在循环或条件判断执行中,我们有时候需要中断当前的执行控制,C#提供了两个关键字break、continue。continue是用在循环语句中,将控制权传递给它所在的封闭迭代语句的下一次迭代。break 语句用于终止最近的封闭循环或它所在的 switch或if 语句。控制传递给终止语句后面的语句(如果有的话)。[代码]初学者提示:除非你有足够的理由,否则不要轻易使用break、continue。在一... 阅读全文
摘要:
很多时候的重复执行,是我们知道需要执行多少次。比如那道高斯经典的从1加到100的题目,用代码模拟高斯的同学的计算模型为如下[代码]for 语句重复执行括起来的语句,如下所述: 首先,计算变量 i 的初始值。然后,只要 i 的值小于或等于 100,条件计算结果就为 true。此时,将执行result += i; 语句并重新计算 i。当 i 大于 100 时,条件变成 false 并且控制传递到循环外... 阅读全文
摘要:
很多时候,我们需要重复的执行一些代码,这样我们就需要迭代循环控制。以下案例描述了如何控制重复的执行。假设,你购买房子的首付需要30万人民币,你入职工作的第一年,每月工资是3500,以后每年薪水增长20%。你是一个很有计划的人,无论薪水多少,你都将收入的一半存起来。那么,你需要多少年可以存到你需要的首付呢?[代码]while语句,每次开始执行循环前需要进行判断,如果首次条件不满足,就不会进行循环执行... 阅读全文
摘要:
有些条件判断并非简单的真假模式,而是在多种可能中选择一个处理。这种情况,我们需要使用switch case语句进行处理。以下是对上海地铁自动售票机的模拟[代码]上述代码运行的结果如图。如果你输入正确的数字:3、4、5、6系统就会提示你选择的票价,如果你输入的是超过范围的数字,则系统没有任何提示。switch 语句是一个控制语句,它通过将控制传递给其体内的一个 case 语句来处理多个选择。控制传递... 阅读全文
摘要:
在C#中,用于处理条件选择的语句有if, else, switch, case四个关键字。if, else用于处理单支的逻辑判断。以下代码演示根据age(年龄)的值输出信息:[代码]我们也可以将上面的代码改写成嵌套的if else过程。[代码]如果正确的录入代码,执行后的结果也同样如图2.1.10。初学者注意:在if后的()的表达式是逻辑表达式,该()后面不能写“;”。在i... 阅读全文
摘要:
结构化程序设计(structured programming)是以模块功能和处理过程设计为主的详细设计。其概念最早由E.W.Dijikstra在1965年提出的,是软件发展的一个重要的里程碑。它的主要观点是采用自顶向下、逐步求精的程序设计方法,使用三种基本控制结构(顺序、选择、重复)构造程序。任何程序都可由这三种基本控制结构构造 。程序从主程序(Main)入口开始,逐行顺序执行,当遇到选择的时候,... 阅读全文
摘要:
控制台项目,Visual Studio 2008默认的为我们建立了Program.cs文件,并且在该文件中创建了一个Program的类(class),你应该看到大致如下的代码界面[代码]如果你看到的是一个窗体,那么你在建立项目的时候,选择错了项目模板,请正确选择控制台应用程序。我们的代码将写在Mian函数内[代码]这个函数,我们称为入口函数或主控函数。程序的运行从这个函数开始。我们尝试正确的录入以... 阅读全文
摘要:
在学校里,为了实现课堂练习,为了完成作业,为了实现而实现的代码过程,我将其定义为编程,这个时候,你只要正确的让编译器把你的代码顺利的编译通过,输出你希望的或者说你的导师希望的结果即可,你不需要考虑弹性、扩展性和维护性,也不需要考虑你的代码是否强壮,也不需要考虑是否具有价值,因为你只是在编程。而软件开发,是使用代码编写出具有商业质量的软件,在这个过程中,你需要仔细的考察你的每行代码,你需要真正的使用... 阅读全文