- 1、本文档共186页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C 语言程序设计实例荟萃
* The specification for Calculator The program should accept two numbers, separated by an arithmetic operator, and should produce the correct arithmetic result, if this is calculable. Numbers are non-negative whole numbers. Arithmetic operators are +, -, * and /. Calculable means that the result must be finite, whole and positive. Input consists of number operator number return. Input may be separated by spaces and is separated from the result by a new line. If the user fails to type in correct data then an error message not an expression will be output. A potentially incalculable result will produce the error message: cannot calculate. * Test data * Not so straightforward test data * Test as you code bugs (technical term) are errors in programs bugs are difficult to find in complete programs test each method as soon as you have written it two ways of testing methods: test harnesses - write a small program to test each method incremental testing - use the whole program to test each new method either way, testing as you go takes up less time then post testing * Example test harness to test evaluate class Expression{ int first; char op; int sec; } void main(){ Expression e; e.first = readInt(); e.op = readChar(); e.sec = readInt(); println(evaluate(e)); } int evaluate( Expression e ) { switch ( e.op ) { case + : {return e.first + e.sec; } case - : {return e.first - e.sec; } case * : {return e.first * e.sec; } case / : {return e.first / e.sec; } } return 0; } * Alternatively, use incremental testing Write the declarations and main program first. All declarations for methods have to be written as well. These should include comments. The bodies of each method should be trivial. These are called stubs. Execute the program. If there is a bug then fix it. Then replace one stub at a time. Each time testing the code. Bugs can always be isolated to the latest added code. * Example stubs for testing the main program Expression readExpression(){ Expression
您可能关注的文档
- Atomic, nuclear and quantum physics - Welcome to Coeur …原子,核和量子物理学-欢迎来到圣心….doc
- AutoCAD 2016中文版从入门到精通(实例版).doc
- Amtax_Compact_哈希在线氨氮剖析仪应用仿单及培训手册[优质文档].ppt
- AutoCAD 2016中文版土木工程设计从入门到精通.doc
- autocad初学者如何有效提高绘图速度(AutoCAD beginners how to effectively improve the speed of drawing).doc
- AutoCAD 2016中文版电气设计从入门到精通.doc
- A品牌20xx年某市场销售工作总结及xx年销售工作计划.doc
- A类教育心理学和教育学题2011年05月复习四川省教师资格认证考试 教育学真题.doc
- AutoLISP_Visual_LISP教程《第十章》.ppt
- A型半挡墙构件预制开工报告.doc
- 第12课 大一统王朝的巩固 课件(20张ppt).pptx
- 第17课 君主立宪制的英国 课件.pptx
- 第6课 戊戌变法 课件(22张ppt).pptx
- 第三章 物态变化 第2节_熔化和凝固_课件 (共46张ppt) 人教版(2024) 八年级上册.pptx
- 第三章 物态变化 第5节_跨学科实践:探索厨房中的物态变化问题_课件 (共28张ppt) 人教版(2024) 八年级上册.pptx
- 2025年山东省中考英语一轮复习外研版九年级上册.教材核心考点精讲精练(61页,含答案).docx
- 2025年山东省中考英语一轮复习(鲁教版)教材核心讲练六年级上册(24页,含答案).docx
- 第12课近代战争与西方文化的扩张 课件(共48张ppt)1.pptx
- 第11课 西汉建立和“文景之治” 课件(共17张ppt)1.pptx
- 唱歌 跳绳课件(共15张ppt内嵌音频)人音版(简谱)(2024)音乐一年级上册第三单元 快乐的一天1.pptx
文档评论(0)