




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机程序设计计算机程序设计 二、 C程序结构和设计方法 第2页刘勇 中国科学技术大学 C语言程序设计讲义 提纲提纲 n1 C语言的产生和发展 n2 C语言的特点 n3 C程序的基本结构 n4 程序设计的方法 第3页刘勇 中国科学技术大学 C语言程序设计讲义 1 C1 C语言的产生和发展语言的产生和发展 nC 语言在 1969 到1973 年间随着Unix 操作系统的开发而诞 生并流行.发明者为美国贝尔实验室的Dennis Ritchie等人。 Dennis Ritchie 第4页刘勇 中国科学技术大学 C语言程序设计讲义 1 C1 C语言的产生和发展语言的产生和发展 C语言的标准: n1978年,丹尼斯里奇(Dennis Ritchie)和 Brian Kernighan 合作出版了C程序设计语言的第一版。书中介 绍的C语言标准也被C语言程序员称作“K /*调用库函数打印一行字符。printf函 数的功能是把要输出的内容送到显示器去显示*/ 运行结果:Hello, World! 第7页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n分析: n程序包括两部分: 1.预处理部分: 1.这里的功能是“文件包含”,#include命令;其他 还可以有“宏定义”、“条件编译”。 2.程序基本部分: 1.仅有一个main()主函数;必须的。 2.主函数内调用了库函数printf(); 3.还可以自己定义函数。 4.注释部分 /单行注释 或 /*多行注释*/ 第8页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n【例2】 #include /include称为文件包含命令 #include/扩展名为.h的文件称为头文件 int main() double x,s; /定义两个实数变量,以被后面程序使用 printf(“input number:n“); /显示提示信息 scanf(“%lf“, /从键盘获得一个实数x s=sin(x); /求x的正弦,并把它赋给变量s printf(“sine of %lf is %lfn“,x,s); /显示程序运算结果 /main函数结束 第9页刘勇 中国科学技术大学 C语言程序设计讲义 【例3】 #include int main() /*主函数*/ int max(int a, int b); /*对函数max的说明*/ int x,y,z; /*变量说明*/ printf (“input two numbers:n”); /*输出提示信息*/ scanf (“%d%d“, /*输入x,y值*/ z=max (x,y); /*调用max函数*/ printf(“maxmum=%d”,z); /*输出结果*/ int max (int a,int b) /*定义max函数*/ if (ab) return a; else return b; /*把结果返回主调函数*/ 3 C3 C程序的基本结构程序的基本结构 第10页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 nC程序结构的特点: 1.C程序是由函数组成的 2.函数由说明部分和函数体组成 3.C程序总是从main函数开始执行的 4.C程序书写格式自由 5.每个语句和数据定义后必须有一个分号 6.C语言本身没有输入输出语句 7.可以用/*.*/做注释 第11页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n从书写清晰,便于阅读,理解,维护的角度出发,在书写程序 时应遵循以下规则: 1.一个说明或一个语句占一行。 2.用 括起来的部分,通常表示了程序的某一层次结构。 一般与该结构语句的第一个字母对齐,并单独占一行。 3.低一层次的语句或说明可比高一层次的语句或说明缩进 若干格后书写。以便看起来更加清晰,增加程序的可读性 。 4.在编程时应力求遵循这些规则,以养成良好的编程风格 。 第12页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n程序的词法种类: 1 标识符 在程序中使用的变量名、函数名、标号等统称为标识符。除库 函数的函数名由系统定义外,其余都由用户自定义。C 规定, 标识符只能是字母(AZ,az)、数字(09)、下划线(_)组成 的字符串,并且其第一个字符必须是字母或下划线。 以下标识符是合法的: a, x, x3, BOOK_1, sum5 以下标识符是非法的: 3s 以数字开头 s*T 出现非法字符* -3x 以减号开头 bowy-1 出现非法字符-(减号) 第13页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n程序的词法种类 在使用标识符时还必须注意以下几点: (1)标准C不限制标识符的长度,但它受各种版本的C 语 言编译系统限制,同时也受到具体机器的限制。例如在 某版本C 中规定标识符前八位有效,当两个标识符前八 位相同时,则被认为是同一个标识符。 (2)在标识符中,大小写是有区别的。例如BOOK和book 是两个不同的标识符。 (3)标识符虽然可由程序员随意定义,但标识符是用于 标识某个量的符号。因此,命名应尽量有相应的意义, 以便于阅读理解,作到“顾名思义”。 第14页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n程序的词法种类: 2.关键字 关键字是由语言规定的具有特定意义的字符串,通常也称为 保留字。用户定义的标识符不应与关键字相同。语言的关键字 分为以下几类: (1)类型说明符 用于定义、说明变量、函数或其它数据结构的类型。如前面例 题中用到的int, double等 (2)语句定义符 用于表示一个语句的功能。如例1.3中用到的if else就是条件 语句的语句定义符。 (3)预处理命令字 用于表示一个预处理命令。如前面各例中用到的include。 第15页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n程序的词法种类: 3.运算符 语言中含有相当丰富的运算符。运算符与变量,函数 一起组成表达式,表示各种运算功能。运算符由一个或多 个字符组成。 4.分隔符 在语言中采用的分隔符有逗号和空格两种。逗号主要 用在类型说明和函数参数表中,分隔各个变量。空格多用 于语句各单词之间,作间隔符。在关键字、标识符之间必 须要有一个以上的空格符作间隔,否则将会出现语法错误 ,例如把int a;写成 inta; C编译器会把inta当成一个标 识符处理,其结果必然出错。 第16页刘勇 中国科学技术大学 C语言程序设计讲义 3 C3 C程序的基本结构程序的基本结构 n程序的词法种类: 5.常量 C 语言中使用的常量可分为数字常量、字符常量、字符 串常量、符号常量、转义字符等多种。在后面章节中将专 门给予介绍。 6.注释符 C 语言的注释符是以“/*”开头并以“*/”结尾的串。 在“/*”和“*/”之间的即为注释。程序编译时,不对注 释作任何处理。注释可出现在程序中的任何位置。注释用 来向用户提示或解释程序的意义。在调试程序中对暂不使 用的语句也可用注释符括起来,使翻译跳过不作处理,待 调试结束后再去掉注释符。 第17页刘勇 中国科学技术大学 C语言程序设计讲义 4 4 程序设计的方法程序设计的方法 问题分析:将需求转化为计算机能够处理的数据和模型。 (建模) 算法设计:把求解步骤思路表示成流程图等形式,规划数 据结构 算法实现:使用开发工具编制程序,编辑、编译。语法错 误和逻辑错误。 调试与更新:排错、修改;文档;参数调整、升级更新 第18页刘勇 中国科学技术大学 C语言程序设计讲义 4 4 程序设计的方法程序设计的方法 n例:37页10 - 分析: 一般项 termi=(-1)i+1(x2i-1)/(2i-1)!,故 n算法描述 1.初始化i=1,sinx=0,x=指定值 2.求termi 3.若|termi|10-7,则sinx=sinx+termi;i=i+1;转2 否则 输出sinx值,结束。 第19页刘勇 中国科学技术大学 C语言程序设计讲义 (续)(续) n算法细化: 1.初始化i=1,sinx=0,x=指定值; 2.求termi 1.t1=x; t2=1; 2.n=22i-1, t1=t1*x,t2=t2*n /再细化。 3.termi=t1/t2; 4.若i为偶数,则termi=-termi; 3.若|termi|10-7,则sinx=sinx+termi;i=i+1;转2 否则 输出sinx值,结束。 第20页刘勇 中国科学技术大学 C语言程序设计讲义 (续)(续) n更优的算法: 1.初始化:x=指定值,t=x, sinx=0; n=1; 2.若|t| = 10-7转6; 3.sinx=sinx+t; 4.n=n+1; 5.t=-t*x*x/(2n-2)*(2n-1);转2; 6.输出sinx值,结束 第21页刘勇 中国科学技术大学 C语言程序设计讲义 4 4 程序设计的方法程序设计的方法 n结构化程序设计方法: 自顶向下; 逐步细化; 模块化设计; 结构化编码。 n思想:把一个复杂任务逐步分拆,逐层细化到便于理解和描 述的程度;最终形成一个由若干独立模块组成的树状层次结 构。由
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年铁道概论试题及答案
- 2025年大学体育教育专业题库- 培养体育文化意识提高体育综合素质
- 2025年护士执业资格考试题库(护理伦理学专项)护理伦理学知识考察试卷
- 2025年大学武术与民族传统体育专业题库-传统文化传承与武术发展研究
- 2025年电工岗前安全试题及答案
- 2025年《医患沟通学》试题库及参考答案
- 2025年大学人文教育专业题库- 活动体验与人文思维
- 2025年大学科学教育专业题库- 科学教育的综合实践教学
- 2025年大学科学教育专业题库- 科学教育的实施与评价
- 2025年资产评估师职业资格考试真题模拟卷:资产评估行业政策动态与案例分析试题
- 中通规章管理制度
- 茶山管理协议书
- 代办土地证协议书
- 创意美术课程教学大纲
- 2025年生物性污染对人体健康的危害与生物安全防控措施
- 现代文献检索与利用3-文献检索技术
- GB/T 45542-2025工业锅炉综合能效评价技术规范
- DB11 396-2006 地理标志产品 平谷大桃
- 2025年小学数学新教材培训
- 2025胃癌诊疗规范
- 2025届江苏省苏锡常镇四市高三下学期教学情况调(一)(一模)英语+答案
评论
0/150
提交评论