第1章 C语言概述_第1页
第1章 C语言概述_第2页
第1章 C语言概述_第3页
第1章 C语言概述_第4页
第1章 C语言概述_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页C C语言程序设计课程简介语言程序设计课程简介 C语言是当今使用最广泛的高级语言,是操作系统、编译系统等大型复杂系统的首选语言。实践证明,用该语言编写的程序,灵活、方便、简洁、高效、数据结构丰富、功能齐全。C语言自问世以来,很快就流行于全世界,并为各种规模的通用计算机所必备。 同时,C语言以其灵活方便的特点,成为培养学生计算机语言思维,了解计算机编程思想的最佳语言,它已被当今国内外众多主要高校列为各理工科专业必修课程。 C C语言程序设计语言程序设计C

2、 C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页教学要求教学要求达到三个层面的教学达到三个层面的教学:掌握掌握C C语言的基本结构、各种数据类型和控制流程语言的基本结构、各种数据类型和控制流程的语法、语义和语用。的语法、语义和语用。 学习运用计算机语言进行程序设计的思想和方法,学习运用计算机语言进行程序设计的思想和方法,初步受到程序设计方法、技巧、风格和素养的训初步受到程序设计方法、技巧、风格和素养的训练。练。 熟悉并掌握一些常用基本熟悉并掌握一些常用基本算法和算法和C C语言程序设计技术,语言程序设计技术,培养学生利用培养学生利

3、用C C语言解决一语言解决一般问题的程序设计能力。般问题的程序设计能力。 C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页课时安排第一章:第一章:C C语言程序设计概述语言程序设计概述 2 2课时课时第二章:基本数据类型与表达式第二章:基本数据类型与表达式 4 4课时课时 第三章:顺序程序设计第三章:顺序程序设计 2 2课时课时 第四章:选择结构程序设计第四章:选择结构程序设计 4 4课时课时 第五章:循环结构程序设计第五章:循环结构程序设计 6 6课时课时 第六章:函数与编译预处理第六章:函数与编

4、译预处理 4 4课时课时 第七章:数组第七章:数组 4 4课时课时 第八章:指针第八章:指针 4 4课时课时 第九章:结构体与共用体第九章:结构体与共用体 2 2课时课时 第十章:文件第十章:文件 2 2课时课时 第十一、十二章第十一、十二章 选讲选讲C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 1.1 1.1 程序与程序设计语言程序与程序设计语言 1.2 1.2 算法及其描述算法及其描述 1.3 C1.3 C语言的发展及特点语言的发展及特点 1.4 C1.4 C语言程序的基本结构语言程序的基本

5、结构 1.5 C1.5 C语言字符集、标识符与关键字语言字符集、标识符与关键字 1.6 C1.6 C语言程序的开发环境语言程序的开发环境第第 1 1 章章 C C语言程序设计概述语言程序设计概述C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页教学目的和基本要求:教学目的和基本要求:要求学生了解程序语言及算法的概念,C语言特点,C程序开发过程,简单C程序结构。 教学重点:教学重点:算法的概念、C程序开发过程、简单C程序结构。 C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设

6、计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页明白三个概念:明白三个概念: 语言、程序、算法语言、程序、算法自然语言自然语言: 人与人之间交流的工具,通过自然语言实现人与人之间的沟通,使别人能够明白的按照语言的表达来办事、工作。 如:汉语、英语、德语、法语、日语等。1.1 1.1 程序与程序设计程序与程序设计什么是语言?什么是语言?计算机语言:计算机语言:(又叫程序设计语言) 人与计算机之间交流的工具,通过计算机语言实现人与计算机之间的沟通,使计算机能够明白的按照语言的表达来办事、工作。 如:C语言、foxpro、basic、java、汇编语言、机器语言等。C C语言程序

7、设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 程序就是按照计算机语言的语法规则、语句格式,编制成的一段能够让计算机理解并按照执行的语句的集合。类比的说,计算机程序就好比于自然语言的一段话,或一篇文章,可以让他人理解并执行。什么是程序?什么是程序? 通俗的讲,程序就是一个用计算机语言描述的,可以通俗的讲,程序就是一个用计算机语言描述的,可以由计算机执行的某一问题的解决步骤。由计算机执行的某一问题的解决步骤。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设

8、计语言程序设计上一页上一页下一页下一页人们常把编写程序的过程称为程序设计。人们常把编写程序的过程称为程序设计。 计算机可以直接识别和执行的二进制语言。计算机可以直接识别和执行的二进制语言。如:如: 加法指令加法指令: 1 0 0 0 0 0 0 0: 1 0 0 0 0 0 0 0 减法指令减法指令: 1 0 0 1 0 0 0 0: 1 0 0 1 0 0 0 0特点:特点:计算机可以直接识别和执行,效率高,计算机可以直接识别和执行,效率高, 节省内存节省内存;但难以阅读和记忆;但难以阅读和记忆。 程序设计程序设计 按照不同种计算机语言的语法编写的程序,我们把它按照不同种计算机语言的语法编写

9、的程序,我们把它称为某一种语言的程序。称为某一种语言的程序。 用用C C语言编写的程序,我们称为语言编写的程序,我们称为C C语言程序。类似的语言程序。类似的有机器语言程序、汇编语言程序、有机器语言程序、汇编语言程序、basicbasic语言程序等。语言程序等。 程序设计语言的种类很多,从其发展历史以程序设计语言的种类很多,从其发展历史以及功能情况来划分可以大致划分成五个阶段:及功能情况来划分可以大致划分成五个阶段:1、机器语言:机器语言:C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页2、汇编语言

10、:汇编语言: 用用“助记符助记符”来表示机器指令。来表示机器指令。如:如: ADD A, B ADD A, B SUB A, B SUB A, B计算机不能直接识别和执行用汇编语言编写的源程计算机不能直接识别和执行用汇编语言编写的源程序,它必须经过一个叫汇编程序的系统软件翻译成序,它必须经过一个叫汇编程序的系统软件翻译成机器语言程序(即目标程序)后才能执行。机器语言程序(即目标程序)后才能执行。3、算法语言算法语言 (又称为面向过程的语言)(又称为面向过程的语言) 即高级语言,不依赖于机器,降低了编程的难度。即高级语言,不依赖于机器,降低了编程的难度。如:如:C C、PASCALPASCAL、

11、FORTRANFORTRAN等,用等,用+和和-来来 表示加减运算。表示加减运算。计算机也不能直接执行算法语言描述的源程序,必计算机也不能直接执行算法语言描述的源程序,必须先经过编译程序或解释程序翻译成目标程序后,须先经过编译程序或解释程序翻译成目标程序后,才能由计算机执行。才能由计算机执行。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页4、面向任务的程序设计语言:面向任务的程序设计语言: 是非过程化的语言,不需要知道问题是如何求是非过程化的语言,不需要知道问题是如何求解的。解的。例如:要从某学生

12、表例如:要从某学生表SSSS用数据库(用数据库(SQLSQL)查询)查询语言获取表中记录的信息,采用语言获取表中记录的信息,采用SELECTSELECT语句,语句,描述如下:描述如下: SELECT SSNO,SSNAME,SSAGE,SSSEX FROM SSSELECT SSNO,SSNAME,SSAGE,SSSEX FROM SS。5 5、面向对象的程序设计语言:面向对象的程序设计语言: 认为系统是由许多对象组成的,对象通过消息认为系统是由许多对象组成的,对象通过消息相互联系和相互作用,从而完成系统的功能。如相互联系和相互作用,从而完成系统的功能。如C+C+,设计的程序更易懂,设计的程序

13、更易懂, , 更适合更大规模的程序更适合更大规模的程序开发。开发。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页这类似于学习英语中的单词与句法,并正确的运用语法规则写成文章。但是光是语法规则正确的文章,并不见得准确无误的传达了作者的意思,也有可能表错了意。程序也是一样,语法规则正确的程序,却不一定正确的描述了所要解决的问题。1.2 1.2 算法及其描述算法及其描述什么是算法?什么是算法?学好程序设计语言的两步:第一步第一步:掌握语言的语法规则,包括标识符、关键掌握语言的语法规则,包括标识符、关键字

14、、句法规则等。并能正确的运用这些语法规则编字、句法规则等。并能正确的运用这些语法规则编成计算机能识别的程序。成计算机能识别的程序。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 拿到一个需要解决的问题,在编程之前,我们首先要确定的就是解决该问题的算法,只有先得出了正确的算法,才能进一步把该算法用程序语言的形式编写出来。正确的语法正确的语法+ +正确的算法正确的算法= =正确的程序正确的程序第二步:第二步:掌握解决问题的方法和步骤。 用程序语言编程,就是用计算机看得懂的语言向计算机描述解决某个问题的

15、方法和步骤,计算机就是按照程序的描述,一步一步执行相应操作的。所编写的程序,不但要求语法准确无误,更要求提供的步骤也准确无误,计算机才能按照要求执行出正确的结果。 我们把我们把对某一特定问题的求解步骤的一种描述对某一特定问题的求解步骤的一种描述,称为该问题的称为该问题的算法算法。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页算法应当具备以下几个方面的特点:算法应当具备以下几个方面的特点: 1 1、一个算法必须保证执行有限步之后结束;、一个算法必须保证执行有限步之后结束;2 2、算法的每一个步骤必须

16、具有确切的定义;、算法的每一个步骤必须具有确切的定义;3 3、应对算法给出初始量;、应对算法给出初始量;4 4、算法具有一个或多个输出;、算法具有一个或多个输出;5 5、算法的每一步都必须是计算机能进行的有效操作。、算法的每一步都必须是计算机能进行的有效操作。 C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页算法的描述方法算法的描述方法 我们可以用自然语言来描述一个问题的解决步骤(对我们可以用自然语言来描述一个问题的解决步骤(对于程序而言即是这个程序的算法),也可以用其他一些约于程序而言即是这个程序

17、的算法),也可以用其他一些约定的描述工具,算法的描述一般有以下方法:定的描述工具,算法的描述一般有以下方法:1、自然语言:自然语言: 使用人们日常进行交流的语言。如:使用人们日常进行交流的语言。如:问题:从问题:从a,ba,b中找出一个大的数给中找出一个大的数给maxmax。自然语言的算法描述:自然语言的算法描述: 2、专用工具:专用工具: 借助于有关图形工具或代码符号来描述。常用的借助于有关图形工具或代码符号来描述。常用的工具有流程图、工具有流程图、N-SN-S图等。图等。第三步:第三步: 输出输出maxmax的值。的值。第二步:第二步: 如果如果a a比比b b大,则把大,则把a a的值给

18、的值给maxmax, 否则把否则把b b的值给的值给maxmax;第一步:第一步: 从键盘输入两个数从键盘输入两个数a a和和b b;C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页如用如用N-SN-S图来描述从图来描述从a a和和b b中找大数的问题。中找大数的问题。 有了正确的算法,我们就可以按照算法一步有了正确的算法,我们就可以按照算法一步一步的转换成相应的程序语言语句。一步的转换成相应的程序语言语句。 上面的右图就是把上面的右图就是把“从从a a和和b b中找大数问题中找大数问题”的算法转换

19、成了相应的的算法转换成了相应的C C语言语句。语言语句。 scanf(“%d,%d”,&a,&b);if(ab) max=a;else max=b;printf(“%d”,max);输入a和b abmaxa maxb输出maxYN 常用的算法有:迭代法、枚举法、递归法、递常用的算法有:迭代法、枚举法、递归法、递推法等。推法等。C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页二、C语言的特点 1 1、具有结构化语言的特点,用函数作为程序的组成单、具有结构化语言的特点,用函数作为程序的组成单 位,设计出

20、的程序简洁、紧凑、结构清晰;位,设计出的程序简洁、紧凑、结构清晰; 2 2、既有高级语言的特点、既有高级语言的特点( (可移植性好可移植性好) ),又有低级语言,又有低级语言 的许多功能的许多功能( (能对硬件操作能对硬件操作) ); 3 3、提供了丰富的数据类型;、提供了丰富的数据类型; 4 4、语法限制不太严格,程序设计自由度大;、语法限制不太严格,程序设计自由度大; 5 5、生成的目标代码质量高,程序执行速度快。、生成的目标代码质量高,程序执行速度快。1.3 C1.3 C语言的发展及特点语言的发展及特点一、C语言的发展概况 起源于起源于19681968年发表的年发表的CPLCPL语言语言

21、 ,目前在微型计算机上目前在微型计算机上使用的有使用的有Microsoft CMicrosoft C,Quick CQuick C,Turbo CTurbo C等多种版本。等多种版本。 C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页#include /#include /* *标准输入输出头文件标准输入输出头文件* */ / main() main() int a int a,b b,c c,s s; / /* *定义四个整型变量定义四个整型变量* */ / scanf( scanf(“%d%d%

22、d%d%d%d”,&a,&b,&c),&a,&b,&c); / /* *变量赋值变量赋值* */ / s=a+b s=a+b* *c c; / /* *算术运算并赋值算术运算并赋值* */ / printf( printf(“s=%dns=%dn”,s)s); / /* *输出结果输出结果* */ / 1.4 C1.4 C语言程序的基本结构语言程序的基本结构一、简单的C语言程序示例例例1-11-1:从键盘输入三个任意值的整数:从键盘输入三个任意值的整数a,b,ca,b,c,按公式,按公式s=a+bs=a+bc c计算计算s s的值,并显示结果。的值,并显示结果。C C语言程序设计语言程序设计C

23、 C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 在在C C语言中语言中区分区分大小写大小写,如如MainMain、MAINMAIN、mainmain、 maiNmaiN是是不相同不相同的的。 一个完整的一个完整的C程序由若干个函数组成,程序由若干个函数组成,至少有且至少有且仅有一个仅有一个mainmain函数,函数,每个函数包括:每个函数包括: 函数说明部分函数说明部分 变量定义变量定义 函数体函数体 语句部分语句部分 语句必须以语句必须以分号分号(;)作结束标志;(;)作结束标志; 由由“/ /* *”与与“* */ /”之间

24、的内容构成之间的内容构成C C语言程序的注释语言程序的注释 部分;部分; 用预处理命令用预处理命令#include#include可以包含有关文件的信可以包含有关文件的信息。息。C C语言程序的基本结构:语言程序的基本结构:C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页一、语言字符集1 1、英文字母:大小写各、英文字母:大小写各2626个,共计个,共计5252个;个;2 2、阿拉伯数:、阿拉伯数:0 09 9共共1010个数字;个数字;3 3、下划线:、下划线:_ _; 4 4、特殊符号:通常指由

25、、特殊符号:通常指由12个符号组成的运算符。个符号组成的运算符。 算术运算符:算术运算符: + - * / % + - 关系运算符:关系运算符: = 条件运算符:条件运算符: ?: 和赋值运算符:和赋值运算符: = 其他分隔符:其他分隔符: ( ) . , ;1.5 C1.5 C语言字符集、标识符与关键字语言字符集、标识符与关键字C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 二、标识符 就是用来标识变量名、符号常量名、函数名、类就是用来标识变量名、符号常量名、函数名、类型名、文件名等的有效字符序

26、列。型名、文件名等的有效字符序列。( (类似于自然语言中类似于自然语言中各种事物的名字各种事物的名字) )C C语言规定:语言规定:标识符只能由字母、数字和下划线三种字标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。符组成,且第一个字符必须为字母或下划线。例如:例如:合法标识符合法标识符:_22A:_22A,lea_1lea_1,avg3avg3,dayday,ABCde43xyw8ABCde43xyw8不合法标识符:不合法标识符:M.J.YORKM.J.YORK,$_238$_238,#xy#xy,a a* *b b,8Tea8Tea 注意:注意:在在C C语言中

27、,大小写字母不等效。因此,语言中,大小写字母不等效。因此,a a和和A A,I I和和i i,SumSum和和sumsum,分别是两个不同的标识符,分别是两个不同的标识符C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页 与程序控制结构有关的:与程序控制结构有关的: do while for if else switch case do while for if else switch case default goto continue break return default goto conti

28、nue break return三、关键字 就是具有特定含义的标识符,用户不能用来作自就是具有特定含义的标识符,用户不能用来作自定义标识符。(类似于自然语言中的有特定意义的单词、定义标识符。(类似于自然语言中的有特定意义的单词、词汇)词汇)由由ANSIANSI标准推荐的关键字有标准推荐的关键字有3232个,常用的有:个,常用的有: 与数据类型有关的:与数据类型有关的: char int float double signed unsigned char int float double signed unsigned short long void struct union typedef s

29、hort long void struct union typedef enum sizeof enum sizeof 与存储类别有关的:与存储类别有关的: auto extern register staticauto extern register staticC C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计C C语言程序设计语言程序设计上一页上一页下一页下一页1.6 C1.6 C语言程序的开发环境语言程序的开发环境正确正确正确正确正确正确有错误有错误有错误有错误编辑编辑 编译编译 运行运行C程序的计算机执行过程:程序的计算机执行过程:C程序的上机过程:程序的上机过程:F3F3(编辑)(编辑) F2F2(存盘)(存盘) F9F9(编译)(编译) CTRL+F9CTRL+

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论