软考进行时——伪代码中的约定
来源:互联网 发布:python getattr 编辑:程序博客网 时间:2024/05/16 15:59
在伪代码的使用中有以下一些约定:
1)书写上的“缩进”表示程序中的分程序(程序块)结构;
2)while、for、repeat等循环结构和if、then、else条件结构与Pascal相同。然而,对for循环来说有一点小小的不同:在Pascal中,循环计数器变量在退出循环时是未定义的, 但在这里,在循环退出后,循环计数器的值仍然保持。于是,紧接着一个for循环之后,循环计数器的值就是第一个超出for循环终值的那个数字;
3)符号“#”表示后面部分是注释;
4)多重赋值i=j=e是将表达式e的值赋给变量i和j;
5)变量(如i,j和key等)是局部于给定过程的。在没有显示说明的情况下,我们不使用全局变量;
6)数组元素是通过“数组名[下标]”这样的形式来进行访问的。A[i]表示数组A的第i个元素,符号“..”用来表示数组中的一个取值范围;
7)复合数据一般组织成对象,它们是由属性(attribute)或域(field)所组成的。域的访问是由域名跟由方括号的对象名形式来表示。在表示数组元素和对象属性时,都要用到方括,一般来说,通过上下文就可以看出其含义;
用于表示一个数组或对象的变量被看作是指向表示数组或对象的数据的一个指针。对于某个对象x的所有域f,赋值y=x就使得f[y] = f[x]。更进一步,如果有f[x] = 3,则不仅有f[x] = 3,同时f[y] = 3。换言之,在赋值 y = x 后,x 和 y 指向同一个对象;
有时,一个指针不指向任何对象。这使,我们赋给它NULL;
8)参数采用按值传递方式:被调用的过程会收到参数的的一份副本。如果它对某个参数赋值的话,主调过程是看不见这一变动的。当对象被传递使,实际传递的是一个指向对象数据的指针,而对象的各个域则不被拷贝;
9)布尔运算符“and”和“or”都具有短路能力。亦即,当我们求表达式“x and y”的值时,首先计算x的值。如果x的值为FALSE,那么整个表达式的值就不可能为TRUE了,因而就无需再对y求值了。但是,如果x的值为TRUE的话,就必须进一步计算出y的值,才能确定整个表达式的值。类似地,在计算表达式“x or y”的值时,仅当x的值为FALSE时,才需要计算子表达式y的值。短路运算符允许我们写出如“x=/(不等于)NIL and f[x] = y“这样的布尔表达式,而不用担心当我们试图在x为NIL时计算f[x],会发生怎样的情况。
转自:http://blog.csdn.net/hmsiwtv/article/details/7633781
- 软考进行时——伪代码中的约定
- 伪代码中的约定
- 伪代码约定
- 软考进行时——数据结构
- 软考进行时——软件工程
- 软考进行时
- 软考进行时——DFA和NFA
- 软考学习进行时......
- python flask中的代码约定
- 软考进行时——面向过程设计VS面向对象设计
- 【软考】——考后总结
- 软考——编译原理中的文法以及自动机
- 通过伪代码进行子程序设计
- PseudoCode——伪代码的格式
- Python——可执行的伪代码
- 软考复习之路——软考总结
- 软考复习之路——软考总结
- 【软考】——软考视频总结
- 以jquery插件形式获取json数据实现级联
- ORB特征
- svn常用命令
- android provider 中关于Cursor的一个问题
- Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明
- 软考进行时——伪代码中的约定
- PowerShell学习入门 - 5 (文件压缩与解压缩)
- 反射应用实例--根据map中的值创建对应并调用set方法给域赋值
- contentOffset,contentInset属性含义u
- AOI设备带动机器视觉行业快速发展
- Java、Android编程技巧
- ArrayList
- Linux shell拾遗
- 经常反复 调用的代码