C语言程序设计入门学习课件

上传人:s9****2 文档编号:569376364 上传时间:2024-07-29 格式:PPT 页数:41 大小:659.01KB
返回 下载 相关 举报
C语言程序设计入门学习课件_第1页
第1页 / 共41页
C语言程序设计入门学习课件_第2页
第2页 / 共41页
C语言程序设计入门学习课件_第3页
第3页 / 共41页
C语言程序设计入门学习课件_第4页
第4页 / 共41页
C语言程序设计入门学习课件_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《C语言程序设计入门学习课件》由会员分享,可在线阅读,更多相关《C语言程序设计入门学习课件(41页珍藏版)》请在金锄头文库上搜索。

1、 C语言程序设计入门学习课件第1章 概 述1.1 C1.1 C语言概述语言概述1.2 C1.2 C语言的基本符号语言的基本符号1.3 1.3 算法及其描述方法算法及其描述方法1.4 1.4 程序设计方法简介程序设计方法简介2学习目标学习目标重点掌握重点掌握1.1.2节(节(C语言的组成和结构特点)语言的组成和结构特点)7个个特点需要牢记特点需要牢记重点掌握重点掌握1.2节(节(C使用基本符号和用户标识符的使用基本符号和用户标识符的4条构成规则)条构成规则)了解程序设计语言的发展阶段了解程序设计语言的发展阶段了解了解C语言的语言的6个特点个特点算法的算法的5个特性填空选择个特性填空选择掌握算法掌

2、握算法3个描述方法中的个描述方法中的N-S结构化流程图结构化流程图3C C语言的用途语言的用途用用C语言编制程序从而使用计算机语言编制程序从而使用计算机国际上广泛流行的高级语言国际上广泛流行的高级语言既可编系统软件,也可编应用软件既可编系统软件,也可编应用软件功能强大,且又有低级语言特性功能强大,且又有低级语言特性41.1.1 C语言及其特点1.1.2 C语言程序的组成和结构特点1.1 C1.1 C语言概述语言概述5n第一代:机器语言(低级语言):计算机能识别和直接执行的二进制语言。面向机器、可移植性差、效率高、编程不直观、难懂、易错。 11111 110001、程序设计语言1.1.1 C1.

3、1.1 C语言及其特点语言及其特点 63送入寄存器A寄存器A内容与56相加,结果送回A6n第二代:汇编语言(低级语言)用助记符来表示机器语言,不能直接执行MOVA,63ADDA,56 n第三代:高级语言:接近自然语言,不能直接执行 A=63+561、程序设计语言63送入寄存器A寄存器A内容与56相加,结果送回A72、C语言简介n最初C语言为描述和实现UNIX操作系统nALGOL 60CPLBCPLBC 标准C语言ANSI CISO Cn1983,美国国家标准化协会(ANSI),根据C问世以来的各种版本对C语言的发展和扩充制定了新的标准,称为ANSI Cn1990,国际标准化组织(ISO)接受A

4、NSI C为ISO C标准。1.1.1 C1.1.1 C语言及其特点语言及其特点 83、C语言特点n(1) 较低级语言(中级语言) 位操作、 直接访问物理地址等汇编语言具有的功能(2) 结构化语言(3) 具有丰富的运算能力(4) 数据类型丰富 (5) 具有预处理能力(6) 可移植性好 (7) 语法限制不严格 类型检验太弱 类型转换较随便1.1.1 C1.1.1 C语言及其特点语言及其特点 91.1.21.1.2C C语言程序的组成和结构特点语言程序的组成和结构特点例1.1最小的C程序main() 例1.2简单的C程序main() printf(“This is a C program.”);

5、10 例1.3 求两个整数的和 main() int a,b,sum; a=3; b=4; sum=add(a,b); printf(sum=a+b=%dn,sum); int add(int x,int y) int z; z=x+y; return(z);1.1.2 C1.1.2 C语言程序的结构特点语言程序的结构特点111.1.21.1.2C C语言程序的组成和结构特点语言程序的组成和结构特点例1.4 求两个整数的最小值main() int a,b,c; printf(Input two integers: );scanf(%d,%d,&a,&b); c=min(a,b); printf

6、(min=%d,c); int min(int x,int y) int z; if(xy) z=x; else z=y; return(z); 12C语言程序的组成和结构特点语言程序的组成和结构特点nC程序由函数组成,函数是C程序的基本单位。函数中必须有且仅有一个main函数。 nC语言函数由函数首部和函数体两部分组成。函数首部:函数首部:函数类型函数类型 函数名(参数类型函数名(参数类型 参数名,参数名,) 例:例: int add(int x,int y) 或 int add(x,y) int x,y; 函数体:函数体: 变量定义;变量定义; 执行语句;执行语句; 13C语言程序的组成和

7、结构特点语言程序的组成和结构特点问题:问题:1. 判断:判断: C程序由程序由0到多个函数构成。到多个函数构成。2.什么符号是函数的标志?什么符号是函数的标志? 1.至少有一个至少有一个main函数(函数(C程序可以包含程序可以包含0个到多个用户自定义函数)个到多个用户自定义函数)2.小括号小括号14C语言程序的组成和结构特点语言程序的组成和结构特点nC程序从main函数开始执行,在main函数结束。main函数位置任意n书写格式自由。一行内可多条语句,空格和回车符不计。一个语句可多行,用“”续行。n每一个语句后必须有一个分号。函数首部后面不加分号。nC语言本身没有输入输出语句。n可以加注释

8、/* */,可多行,不可嵌套。15开始编辑编译连接执行源程序f.c有错?结果正确?结束正确无目标程序f.obj库函数和其他目标程序可执行目标程序f.exe不正确有运行C程序的流程图161.2 C语言的基本符号q1.2.1 基本符号集(ASCII字符集)指在C语言中可以出现的字符,主要由ASCII字符集中的字符组成。(鉴于信息交换的重要及为统一文字符号的编码标准,让不同厂牌机型的计算机皆能使用同一套标准化的信息交换码,于是美国国家标准局特别制定了ASCII码(America Standard Code for Information Interchange,美国信息交换标准码),作为数据传输的标

9、准码。) 阿拉伯数字阿拉伯数字10个:个:0、1、2、9 大小写英文字母各大小写英文字母各26个:个:A,B,C,Z,a,b,c,z 下划线:下划线:_ 特殊符号:特殊符号:主要是运算符和操作符主要是运算符和操作符 171.2 C语言的基本符号1.2.2 标识符作为名字的字符序列。用作常量、变量、函数、文件指针、类型等的名字。可分为以下三类:n用户标识符 n保留字/关键字 n预定义标识符 18q用户标识符:用户标识符: 用户根据需要对用到的变量、符号常量、自己的函数或文件指针进行命名构成规则: 由英文字母、数字、下划线组成,且第一 个字符不能是数字; 英文字母区别大小写; 通常识别前8个字符;

10、 取名遵循“简洁明了”和“见名知意”。1.2 C1.2 C语言的基本符号语言的基本符号19p保留字保留字/ /关键字关键字 是编译系统固有的,用做语句名、类型名的标识符。不允许作为用户标识符使用,全部小写。p预定义标识符预定义标识符 C 语言提供了大量的库函数和头文件,这些库函数名和头文件中定义的一些标识符都统称为预定义标识符。允许用户作其他用途,但将失去系统规定的原意。1.2 C1.2 C语言的基本符号语言的基本符号201.3 算法及其描述方法n1.3.1 算法的概念n1.3.2 算法的描述方法211.3.1 算法的概念1、算法就是为解决一个具体问题而采取的、算法就是为解决一个具体问题而采取

11、的确定的有限操作步骤。这里指算机算法。确定的有限操作步骤。这里指算机算法。2、算法的特性、算法的特性 (1) 有穷性 (2) 确定性(分段) (3) 有效性(除数为0) (4) 有0个或多个输入 (5) 有1个或多个输出22 3、算法的组成要素n一是操作。计算机算法的操作集是计算机所能进行的操作。主要包括各种运算。n二是控制结构。每一个算法都是由一系列的操作组成。同一操作序列,不同的执行顺序,就会得出不同的结果。 在结构化程序设计中,一个程序只能由3种基本控制结构组成。 23三种基本控制结构如下:三种基本控制结构如下:(1)顺序结构。按书写的顺序执行的。是最简单的结构,不能处理复杂问题。(2)

12、选择结构。当程序执行到某一语句时,要进行一下判断,从两种路径中选择一条。实现计算机的判断能力。(3)循环结构。将一条或多条语句重复地执行若干次。充分利用了计算机速度快的优势,实现复杂问题。24 1.3.2 算法的描述方法(举例)进行算法设计时,常用的算法描述工具有自然语言、传进行算法设计时,常用的算法描述工具有自然语言、传统流程图、统流程图、N-S结构化流程图。结构化流程图。1.自然语言表示自然语言表示 自然语言就是人们日常生活中使用的语言,可以用自然语言就是人们日常生活中使用的语言,可以用汉语、英语和数学符号等,通俗易懂,但文字冗长,汉语、英语和数学符号等,通俗易懂,但文字冗长,不易直接转化

13、为程序,易产生歧义性。不易直接转化为程序,易产生歧义性。 2.流程图表示流程图表示 流程图是一个描述程序的控制流程和指令执行情况的流程图是一个描述程序的控制流程和指令执行情况的有向图,它是程序的一种比较直观的表示形式,美国有向图,它是程序的一种比较直观的表示形式,美国国家标准化协会国家标准化协会(ANSI)规了如图规了如图1.1所示的符号作为所示的符号作为常用流程图符号常用流程图符号25判断框判断框起止框起止框处理框处理框输入输出框输入输出框流程线流程线连接符连接符图图1.1传统流程图常用符号传统流程图常用符号PAB真假(b)选择结构选择结构AB(a)顺序结构顺序结构(c)循环结构循环结构图图

14、1.2 三种基本控制结构流程图三种基本控制结构流程图A真P假真ABA当P为真ABP真假 3. N-S结构化流程图表示nN-S结构化流程图(是以两位学者名字的首字母命名)n最重要的特点:完全取消了流程线,全部算法在一个矩形框内,这样算法只能从上到下顺序执行,从而避免了算法流程的任意转向,保证了程序的质量。nN-S图形象直观,节省篇幅,尤其适于结构化程序的设计。用N-S图表示三种基本控制结构如教材图1-4所示。28例1.5 用自然语言描述求n!的算法问问题题分分析析: : 考考虑虑n!=1234nn!=1234n,因因此此计计算算n!n!可可用用n n次次乘乘法法运运算算来来实实现现,每每次次在在

15、原原有有结结果果的的基基础础上上乘乘上上一一个个数数,而这个数是从而这个数是从1 1变化到变化到n n,用自然语言描述该算法,用自然语言描述该算法: : S1: S1: 输入输入n n的值;的值;S2: S2: 如果如果n0n0,则打印,则打印“输入错输入错”提示信息,转去执行提示信息,转去执行S4S4;S3: S3: 如果如果n0n0,则,则 S3.1: S3.1: 给存放结果的变量给存放结果的变量factfact置初值置初值1 1; S3.2: S3.2: 给代表乘数的变量给代表乘数的变量i i置初值置初值1 1; S3.3: S3.3: 进行累乘运算进行累乘运算fact=fact*ifa

16、ct=fact*i; S3.4: S3.4: 乘数变量乘数变量i i增增1 1,得到下一个乘数的值,得到下一个乘数的值,i=i+1i=i+1; S3.5: S3.5: 如如果果i i未未超超过过n n,则则重重复复执执行行步步骤骤S3.3S3.3和和S3.4S3.4,否否则则执行步骤执行步骤S3.6S3.6; S3.6: S3.6: 输出输出factfact的值;的值;S4: S4: 结束算法。结束算法。图图1.3 计算计算n!的传统流程图的传统流程图开始开始读入读入nnnN 读入读入nnn为止为止输出输出fact计算计算N!的的N-S流程图流程图思思 考:考:1.求1+2+3+n2.求1!+

17、2!+3!+n!3.求1+2-3+4-5+n4.求1+1/2+1/3+1/n5.求1+1/2-1/3+1/n6.求1+22+32+42+n2321.4 程序设计方法简介1.结构化程序设计n一个比较流行的定义是: 结构化程序设计是一种进行程序设计的原则和方法,按照这种原则和方法设计出的程序的特点是结构清晰,容易阅读,容易修改,容易验证。n按照结构化程序设计方法的要求,结构化的程序由三种基本控制结构组成: 顺序结构、选择结构和循环结构。332.结构化程序设计的基本思想(1)采用三种基本结构作为程序设计的基本单元,避免无限制地使用goto语句而使流程任意转向。(2)三种基本结构就具有如下良好特性:

18、只有一个入口只有一个入口; 只有一个出口只有一个出口; 无死语句无死语句,即不存在永远都执行不到的语句; 无死循环无死循环,即不存在永远都执行不完的循环。 (3)程序设计采用“自顶向下,逐步求精,模块化设计,结构化编码”的方法。343.设计程序的过程设计程序的过程下面举例说明用结构化程序设计方法设计程序的过程。下面举例说明用结构化程序设计方法设计程序的过程。【 例例1.6 1.6 】 求三个数中的最大数。求三个数中的最大数。(1)(1)首先很容易给出程序的总体设计算法首先很容易给出程序的总体设计算法: : s1: s1: 给定或输入三个数给定或输入三个数a,b,ca,b,c;s2: s2: 在

19、在a,b,ca,b,c中找出大数赋给中找出大数赋给maxmax;s3: s3: 输出输出maxmax。s1,s2,s3s1,s2,s3表示第表示第1 1步,第步,第2 2步,第步,第3 3步。步。(2) (2) 对对s2s2需进一步细化,即求出最大数的方法,算法需进一步细化,即求出最大数的方法,算法设计设计: : s21: s21: 从从a,ba,b中取大数赋给中取大数赋给maxmax中;中;s22: s22: 再用再用maxmax与与c c进行比较,取大的赋给进行比较,取大的赋给maxmax。将将(1)(1)、(2)(2)用流程图描述如教材图用流程图描述如教材图1.61.6所示。所示。35(

20、3)用计算机语言实现算法。用计算机语言实现算法。main() int a,b,c,max; a=3;b=7;c=5; /*s1,也可以使用也可以使用scanf() 对对a,b,c赋值赋值 */ if(ab) /*s21 */ max=a; else max=b; if(maxc) /*s22 */ max=c; printf(”max=%dn”,max); /*s3 */1.5 上机步骤nVC+6.0程序安装n上机步骤: 文件新建文件c+ source file 文件名(*.c)(保存位置:选盘驱) 编译(组建)执行(!) 文件关闭工作空间37小小 结结1.C 1.C 语言程序的组成特点语言程

21、序的组成特点 (1)(1)一个一个C C源程序由函数构成源程序由函数构成, ,其中至少包括一个其中至少包括一个 主函数主函数(main()(main()函数函数) )。 (2)C(2)C程序总是由程序总是由main()main()函数开始执行。函数开始执行。 (3)(3)分号分号“;”;”是是C C语句的一部分。语句的一部分。 (4)(4)一行内可写多条语句一行内可写多条语句, ,且语句中的空格和回车且语句中的空格和回车 符均可忽略不计。符均可忽略不计。 (5)(5)程序的注释部分在程序的注释部分在/* */* */之间,之间,/ /和和* *之之 间不允许留有空格。注释允许出现在程序中间不允

22、许留有空格。注释允许出现在程序中 的任何位置上。的任何位置上。 382.2.标识符标识符 C C语言的标识符可分为保留字、预定义标识符和用户语言的标识符可分为保留字、预定义标识符和用户标识符三类。标识符三类。 用户根据需要对用户根据需要对C C程序中用到的变量、符号常量、自定程序中用到的变量、符号常量、自定义函数或文件指针进行命名,形成标识符。义函数或文件指针进行命名,形成标识符。C C 语言中,语言中,标识符的命名规则如下标识符的命名规则如下: : (1)(1)用户标识符由英文字母、数字、下划线组成用户标识符由英文字母、数字、下划线组成; ;且且 第一个字符不能是数字,必须是字母或下划线。第

23、一个字符不能是数字,必须是字母或下划线。(2)(2)标识符大小写字母不通用,保留字全部用小写字标识符大小写字母不通用,保留字全部用小写字 母。母。(3)(3)标识符中所允许包含的字符个数因不同的标识符中所允许包含的字符个数因不同的C C编译编译 系统而有所不同,通常可以识别前面系统而有所不同,通常可以识别前面8 8个字符。个字符。39(4)(4)大多数高级语言都规定用户标识符必须以字母开始,大多数高级语言都规定用户标识符必须以字母开始,而而C C中仅规定了不得用数字开始,因此以下划线开始中仅规定了不得用数字开始,因此以下划线开始的数字也是正确的变量名。的数字也是正确的变量名。(5)C (5)C

24、 语言提供了大量的库函数和头文件,这些库函数语言提供了大量的库函数和头文件,这些库函数名和头文件中定义的一些标识符都统称为预定义标识名和头文件中定义的一些标识符都统称为预定义标识符。符。C C语言允许用户定义的标识符和这些预定义标识语言允许用户定义的标识符和这些预定义标识符相同,但这些预定义标识符将失去原有的作用,例符相同,但这些预定义标识符将失去原有的作用,例如,一旦用户把如,一旦用户把printfprintf说明为整型变量,则程序中将说明为整型变量,则程序中将不能再调用不能再调用printf()printf()进行输出了,因此用户取名时应进行输出了,因此用户取名时应该注意尽量避免和预定义标

25、识符重名该注意尽量避免和预定义标识符重名( (除非有特殊需除非有特殊需要要) )。403.3.结构化程序设计方法结构化程序设计方法(1)(1)算法的概念算法的概念 简简单单地地说说,算算法法就就是是为为解解决决一一个个具具体体问问题题而而采采取取的的确确定定的的有有限限操操作作步步骤骤。这这里里的的算算法法指指的的是是计计算算机机算算法。法。 算法必须具备五个特性算法必须具备五个特性: : 有穷性、确定性、有效性、输入和输出。有穷性、确定性、有效性、输入和输出。 进进行行算算法法设设计计时时,可可以以用用不不同同的的算算法法描描述述工工具具。常用的有自然语言、传统流程图、常用的有自然语言、传统流程图、N-SN-S结构化流程图等。结构化流程图等。41

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号