- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
chapter3_3程序设计风格new
南京大学 计算机科学与技术系 Base of Programming 1/18 第3章第3讲:程序设计风格 0 程序设计(Program design/Programming) 计算机解题的方式与人解题的方式存在差异 程序设计(设计和编制程序的过程) 设计程序:数据结构设计和算法设计 编制程序:把设计转化为某种程序语言的代码 程序设计方法 面向过程 面向问题 面向对象 程序设计语言 程序设计的结果必然要用一种能被计算机接受的语言表示出来,即编程实现(Coding)。程序设计语言是人与计算机、计算机之间对话的工具,是用来书写计算机程序的语言 机器语言(Machine language) 汇编语言(Assembly language) 高级语言(High-level language) 1 程序设计风格 程序设计风格通常有非结构化与结构化之分 程序设计风格通常是指对程序进行静态分析所能确认的程序特性,它涉及程序的易读性。 结构化程序设计(Structured Programming,简称SP) 结构化程序设计自1969年由荷兰学者迪克斯特拉(E.W.dijkstra)提出后,经数十年的发展,如今已被广泛用于程序设计中。 它要求整个程序可分解为不同功能的模块,每一个模块又由不同的子模块组成 … ,最小的模块是一个最基本的结构。 这样的程序一般具有良好的书写形式和结构,可以避免程序中无规则的跳转和繁杂的逻辑关系,易于阅读和理解。是一种良好程序设计风格的典范。 SP不仅要求所编出的程序结构良好,而且还要求程序设计过程也是结构良好的,后者是前者的基础。 对程序设计过程而言,“结构良好”是指 采用分解和抽象的方法来完成程序设计任务, 具体体现为:“自顶向下、逐步精化”的程序设计过程。 对程序而言,“结构良好”是指: 每个程序单位应具有单入口、单出口的性质。 不包含不会停止执行的语句,程序在有限时间内结束。 程序中没有无用语句,程序中所有语句都有被执行的机会。 结构化程序设计规定了几种具有良好特性的“基本结构”,以作为程序设计中的基本单元,再由这些基本单元构成大的程序。其基本结构主要有三种,即顺序结构、分支(选择)结构和循环结构。 采用一致/有意义的标识符为程序实体(如变量、函数等)命名。 使用符号常量 为程序书写注释 采用代码的缩进格式 …… 自定义标识符命名建议☆ 【建议1】自定义标识符应当直观,用词尽量准确,可望文知意,便于记忆和阅读。切忌使用汉语拼音来命名。 【建议2】标识符的长度应当符合“min-length max-information”原则。一般来说,长名字能更好地表达含义,但名字并非越长越好,单字符的名字也是有用的,常见的如i,j,k,m,n,x,y,z等,它们通常可用作函数内的局部变量。? 【建议3】程序中不要出现仅靠大小写区分的相似的 标识符。例如: int x, y, X; // 变量x 与 X 容易混淆 void foo(int x); // 函数foo 与FOO容易混淆 void FOO(int y);? 【建议4】用一对反义词命名具有相反含义的变量或函数等。例如: int minValue,maxValue; int SetValue(…),GetValue(…); [建议5] 函数名和类型名用大写字母开头的单词组合而成。如:void??Init(void);?? void??SetValue(int value); [建议6] 变量名和参数名的首单词用小写字母开头。如:int flag;int?stuAge; int current_value [建议7] 符号常量名全用大写字母,用下划线分割单词。如:#define MAX_LENGTH 100 #define PI 3.14 [建议8] 静态变量名加前缀s_(表示static)。如:static int s_initValue; [建议9] 全局变量名加前缀g_(表示global)。如: int g_howManyBook; 程序排版建议☆ 【建议1】在每个函数定义结束之后加空行。 【建议2】在一个函数体内,逻辑上密切相关的语句之间不加空行,其它地方加空行分隔。 【建议3】一行代码只做一件事情,比如只定义一个变量,或只写一条语句。这样的代码容易阅读,并且便于写注释。 【建议4】尽可能在定义变量的同时初始化该变量,如果变量的引用处和其定义处相隔比较远,变量的初始化很容易被忘记。如果引用了未初始化的变量,可能会导致程序错误。本建议可以减少隐患。 【建议5】长表达式要在低优先级操作符处拆分成新行, 操作符放在新行之首(以
您可能关注的文档
- 马钢冷轧平整机封闭方案-1.doc
- 第二章 系统化设计方法.ppt
- 购买HTC的注意事项.doc
- 第二章 设计方法总论3.ppt
- 隧道照明中应用LED灯具的节能分析.doc
- 第二章 设计方法总论1.ppt
- 初步设计和施工图设计流程.doc
- 第二章室内设计方法、程序及作品赏析.ppt
- 建筑升降机安装及拆除施工方案.doc
- P11FBDE讲解1.doc
- 中国国家标准 GB/T 5211.9-2025颜料和体质颜料通用试验方法 第9部分:相同类型着色颜料耐光性的比较.pdf
- 《GB/T 5211.9-2025颜料和体质颜料通用试验方法 第9部分:相同类型着色颜料耐光性的比较》.pdf
- 《GB/T 37228-2025安全与韧性 应急管理 突发事件管理指南》.pdf
- GB/T 23724.3-2025起重机 检查 第3部分:塔式起重机.pdf
- 中国国家标准 GB/T 25163-2025防止儿童开启包装 可重新盖紧包装的要求与试验方法.pdf
- 《GB/T 25163-2025防止儿童开启包装 可重新盖紧包装的要求与试验方法》.pdf
- GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射.pdf
- 中国国家标准 GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射.pdf
- 《GB/T 16263.5-2025信息技术 ASN.1编码规则 第5部分:W3C XML模式定义到ASN.1的映射》.pdf
- GB/T 11349.2-2025机械振动与冲击 机械导纳的试验确定 第2部分:用激振器作单点平动激励测量.pdf
最近下载
- 宾馆装修改造项目立项建议书.doc VIP
- 悬臂法挂篮施工监测方案.docx VIP
- 财税大楼装修项目建议书.doc VIP
- XXX教学楼装修改造项目建议书.pdf VIP
- 提高胸外科患者肺功能锻炼的依从性品管圈汇报书ppt.pptx
- 2025广西百色工业投资发展集团有限公司招聘27人笔试参考题库附答案解析.docx VIP
- 2025国内短剧行业市场规模、出海短剧市场机遇及未来短剧制作方向分析报告.pptx VIP
- 2025广西百色工业投资发展集团有限公司招聘27人考试备考题库及答案解析.docx VIP
- 2025广西百色工业投资发展集团有限公司招聘27人笔试备考试题及答案解析.docx VIP
- 小升初语文成语错别字专项练习.pdf VIP
文档评论(0)