- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言程序设计
第1章 程序设计概述
《C语言程序设计》(第3版) 张 磊 编著
21世纪高等学校规划教材 清华大学出版社
第1章 程序设计概述
1.1 程序设计语言
1.2 算法
1.3 程序设计与实现
1.4 C语言程序的基本结构
1.1 程序设计语言
程序设计语言: 计算机能够理解和识别的一种语言体系,它按照特定的规则组织计算机指令,使计算机能够自动进行各种操作处理。
计算机程序: 按照程序设计语言的规则组织起来的一组计算机指令。
程序设计语言分类: 机器语言、汇编语言和高级语言。
C 语言属于高级语言,1972年由美国的Dennis Ritchie设计发明。
1983年,美国国家标准化协会(ANSI)根据C语言问世以来各种版本对 C的发展和扩充,制定了C的标准,称为 ANSI C。1987年ANSI又公布了新的标准——87 ANSI C。
1.1 程序设计语言
C语言程序示例: 计算1到100的所有自然数的和。
/* program e1-0.c */
#includestdio.h
void main()
{
int i=1,s=0;
while(i=100) /* 循环控制 */
{
s=s+i; /* 数据累加 */
i=i+1; /* 生成下一个要累加的数 */
}
printf(sum=%d\n,s); /* 输出结果 */
}
1.2 算法
1.2.1 算法概念与算法描述
1.2.2 算法的逻辑结构
1.2.4 算法的特性
1.2.4 算法评价
1.2.1 算法概念与算法描述
算法重要性:程序=数据结构+算法
1.算法的概念
算法是求解问题的方法,是在有限步骤内求解某一问题所使用的一组定义明确的规则,是计算机处理问题所需要的具体步骤。
2.算法的描述方法
自然语言
流程图
N-S图
PAD图
伪码等。
1.2.1 算法概念与算法描述
⑴ 用自然语言描述算法
“计算1到100的所有自然数的和”
步骤① i和s赋初值,使i=1,s=0;
步骤② 判断i的值,若i≤100 则执行步骤③;否则,转步骤⑤;
步骤③ s加i;
步骤④ i加1,转步骤②;
步骤⑤ 显示s的值,结束。
1.2.1 算法概念与算法描述
⑵ 用流程图描述算法
1.2.1 算法概念与算法描述
“计算1~100自然数和”的算法
步骤① i=1,s=0;
步骤② 若i≤100 则执行步骤③;否则,转步骤⑤;
步骤③ s+i;
步骤④ i+1,转步骤②;
步骤⑤ 显示s的值,结束
1.2.2 算法的逻辑结构
顺序结构、分支结构、循环结构是算法的三种基本结构,这三种结构互相结合,可以实现任何逻辑控制。
算法
步骤① 输入一个学生两门课的成绩a1、a2;
步骤② 计算平均成绩 (a1+a2)/2→ave;
步骤③ 输出平均成绩ave,结束。
问题1-顺序结构:输入一个学生的两门课的成绩,计算出平均成绩。
1.2.2 算法的逻辑结构
问题2-分支结构:输入一个学生的两门课的成绩,若平均成绩不低于90分,则显示“优等生”,否则显示“要加油啊!”
算法
步骤① 输入一个学生两门课的成绩a1、a2;
步骤② 计算平均成绩(a1+a2)/2→ave;
步骤③ 若ave≥90,则执行步骤④;否则执行步骤⑤;
步骤④ 输出“优等生”,结束。
步骤⑤ 输出“要加油啊!”,结束。
1.2.2 算法的逻辑结构
问题3-循环结构:按照问题2的标准,统计全班的优等生人数(全班共30人)。
算法
步骤① 设置变量count对输入的数据量计数,其初值为1;设置变量result对优等生计数,其初值为0;
步骤② 若count≤30,则执行步骤③;否则转步骤⑧;
步骤③ 输入一个学生两门课的成绩a1、a2;
步骤④ 计算平均成绩(a1+a2)/2→ave;
步骤⑤ 若ave≥90,则执行步骤⑥;否则转步骤⑦;
步骤⑥ result+1→result;
步骤⑦ count+1→count;转步骤②;
步骤⑧ 输出统计结果,结束。
1.2.2 算法的逻辑结构
算法逻辑结构框图
⑴ 顺序结构
顺序结构传统流程图 顺序结构N-S图
1.2.2 算法的逻辑结构
算法逻辑结构框图
(2) 分支结构
分支结构流程图 分支结构N-S图
1.2.2 算法的逻辑结构
算法逻辑结构框图
(3) 循环结构
循环结构流程图
您可能关注的文档
- 第二章设计程序与基本内容导论.ppt
- 第1章+解决方案.ppt
- 第二章设计市场调查方案导论.ppt
- 第二章社会管理的背景导论.ppt
- 第1章+图形设备、系统和应用解决方案.ppt
- 第二章社会调查研究的类型与一般程序导论.ppt
- 第1章+医用力学基础解决方案.ppt
- 第二章社会政策学科的历史发展及理论体系导论.ppt
- 第二章摄影测量基础(二)改导论.ppt
- 第1章1.2-1.3解决方案.ppt
- 2-红河州建筑施工安全生产标准化工地复核评分表(2022年修改版).docx
- 6.锡通项目2018年下半年工作会汇报材料(2018.7.9).docx
- 2018道路工程知识点汇总(新版).docx
- 附件3:月度生产例会安全汇报资料-站台门项目部.docx
- 附件2:广东建工集团2018年度科技成果汇总表.DOC
- 马武停车区、三汇停车区停车位管理系统,0#台账缺量.doc
- 攀成钢委办发〔2015〕19号(党风廉政建设责任考核与追究办法).doc
- 1-红河州建筑工程质量管理标准化复核评分表(2022年修改版).docx
- 中交第三公路工程局第四工程分公司项目经济合同结算管理办法(修订).doc
- 厂站安全操作规程汇编.doc
文档评论(0)