从程序设计语言到程序
88页1、C语言程序设计进阶 尹宝林,第一讲:从程序设计语言到程序,2005-1-2,C语言程序设计进阶,2,初学者的困难,写出符合要求的程序 不知如何下手 不知程序错在哪里 不知如何改正错误 不知如何检查程序是否符合要求 不知如何写出高质量的程序,2005-1-2,C语言程序设计进阶,3,感到困难的原因,对编程语言的掌握 对解题过程的掌握 对相关知识和技术的掌握 实践经验,2005-1-2,C语言程序设计进阶,4,解决问题的方法,掌握程序设计的基本过程 掌握程序设计各步骤的相关技术 加强练习 多做练习 阅读高水平的程序,2005-1-2,C语言程序设计进阶,5,程序设计的基本过程,明确任务要求 明确已知条件 逐步分解、自顶向下的设计 提出解题思路 确定关键算法和数据结构 确定程序结构 编码实现可运行的程序 检验程序是否符合要求,2005-1-2,C语言程序设计进阶,6,程序设计的步骤,分析 明确程序设计的目标和要求 明确已知条件和约束 设计 描述问题求解的过程和步骤 逐步缩短出发点和目标间的距离 编码 从设计到程序的转换,2005-1-2,C语言程序设计进阶,7,程序设计的步骤(续),调试 发
2、现和改正编码中的错误 语法错误 语义错误 逻辑错误 检查和保证编码的正确性,2005-1-2,C语言程序设计进阶,8,程序设计的步骤(续),测试 排除设计错误 检验程序的正确性和可靠性 保证程序的功能和性能符合目标要求,2005-1-2,C语言程序设计进阶,9,不同规模程序的差异,设计目标不同 功能和性能要求 生命周期、可维护性、可扩展性 可靠性 程序复杂程度不同 结构 代码量 错误处理方式,2005-1-2,C语言程序设计进阶,10,不同规模程序的差异(续),使用环境和方式的差异 使用环境 单一平台 多种平台 网络环境 使用人员 自用 他人:专业人员 vs 一般用户 与其它程序的关系和交互方式,2005-1-2,C语言程序设计进阶,11,不同规模程序的差异(续),工作内容差异 主要体现在分析、设计和测试 重点随程序复杂性增加而逐渐前移 测试工作的重要性随程序复杂性增加而增加,2005-1-2,C语言程序设计进阶,12,问题分析,分析的依据 明确的要求:问题描述 隐含的要求:规则、环境、常识 分析的方法 认真阅读题目,理解题目要点 认真思考,准确把握要求 记录关键点,2005-1-2,
3、C语言程序设计进阶,13,问题分析(续),分析要点 明确问题的要求 功能:对环境及输入数据的处理过程及结果 性能:对系统资源的占用量 使用方式和环境 人机界面 输入/输出数据及格式 与其它系统的交互 理解问题的性质 把握所要解决的关键问题,2005-1-2,C语言程序设计进阶,14,分析结果的质量要求,具体、准确、完整 符合题目的各项要求:明确的和隐含的 后续工作的依据:可操作性 后续工作检查的标准 必要的文档 记录需求要点 基本功能、输入数据的来源,数据格式、类型、数量和范围、需要处理的特殊情况 计算结果的输出格式和目标文件,2005-1-2,C语言程序设计进阶,15,问题分析的例,已知一元多项式A = anxn + + a1x + a0, B = bnxn + + b1x + b0 根据运算符+、-、*,分别计算A + B、A - B、A * B。 输入数据由三行组成。第一行是多项式A,第二行是多项式B,第三行是一个运算符,表示所要进行的运算。多项式中除常数项外的每一项的形式为AnXN,其中An是一个整数,表示该项的系数,X是变量名,N是该项的次数。各项与+之间可以有0个或多个空格
4、符。输入的多项式A和B的最高次数均不超过500,系数的绝对值不超过10000。 输出结果写在标准输出上,占一行。结果多项式按降幂方式排列,各项的表示形式与输入形式相同,按常规的方式显示。例如,系数为0的项不输出;除常数项外,系数为1的项不显示系数。各项与运算符之间空一格。 【输入样例】 3x5 + 5x3 + 6 9x6 + 2x5 + 6x3 + x2 + 6 - 【输出样例】 -9x6 + x5 - x3 - x2,2005-1-2,C语言程序设计进阶,16,多项式运算程序的功能,读入数据 数据结构和存储空间 完成计算 数据结构和算法 输出结果 格式要求,2005-1-2,C语言程序设计进阶,17,输出结果的格式要求,对于一般项, 输出结果占一行 结果多项式按降幂方式排列 如果系数为0,则不输出该项 各项与运算符之间空一格 除常数项外,如果系数为正负1,则不显示系数 系数的正负号不直接输出,而是转化为该项前面的运算符:正号对应运算符+, 负号对应运算符- 如果指数为0,则不输出x0而只输出系数。这包括系数为1的情况,2005-1-2,C语言程序设计进阶,18,输出结果的格式要求(续
《从程序设计语言到程序》由会员suns****4568分享,可在线阅读,更多相关《从程序设计语言到程序》请在金锄头文库上搜索。
土地管理与地籍测量---第八章界址点测量
人机工程学案例分析(2)
工程安全培训_201303
第9章房地产投资决策分析
第2章房地产经纪制度
ACM程序设计-东北林业大学acm05
《亲爱的汉修先生》读书交流会
中原_深圳新世界尖岗山项目市场汇报_40P_2012年_别墅_项目分析_量价走势
五年级数学质量分析演示文稿
人工智能小镇-智慧小镇建设20180525
景观基本知识及发展历程
建设工程信息管理(2)
机电驱动技术第二章步进驱动技术
工程力学-第9章圆轴扭转时的应力变形分析与强度刚度设计
第一章第二节幼儿园文化环境建设的原则
第一章检测技术的基础知识
第一章__现代表面工程技术
第六章钢结构工程
第9节项目试运行管理
班主任工作经验交流课件(4)
2024-04-09 27页
2024-04-09 29页
2024-04-09 27页
2024-04-09 27页
2024-04-09 27页
2024-04-09 28页
2024-04-09 27页
2024-04-09 34页
2024-04-09 27页
2024-04-09 27页