c语言综述.docx
《c语言综述.docx》由会员分享,可在线阅读,更多相关《c语言综述.docx(33页珍藏版)》请在冰豆网上搜索。
c语言综述
江苏技术师范学院编(高纲号0371)
一、课程性质与设置目的要求
C程序设计课程是江苏省高等教育自学考试机械制造及自动化专业的一门基础课;是一门考核考生运用计算机编程能力的课程。
考生在学习C程序设计课程之前,应已学习过《计算机基础教程》和《高等数学》两门课程。
本课程的教学目的是使自学应考者全面掌握C程序设计的语法与编制程序,培养考生用C语言编制程序来解决本专业或其他的一些实际问题,并为进一步学习其他的计算机语言课程打下基础。
设置本课程的具体要求是:
(1)使考生掌握C语言的基本语法规则。
(2)使考生掌握编制简单C程序的方法。
(3)使考生能运用C语言解决一。
些实际的问题。
(4)使考生掌握一些解决问题的算法。
二、考试内容与考核目标(考核知识点、考核要求)
第一章 C语言概述
一、学习目的和要求
通过本章的学习,了解C语言出现的背景,C语言的特点,通过简单C程序的介绍,初步认识C程序,并初步掌握C程序的上机步骤。
二、考试内容
第一节 C语言出现的历史背景
(一)C语言的性质:
C语言是国际上广泛流行的、很有发展前途的计算机高级语言。
它适合于作为系统描述语言,即用来写系统软件,也可用来写应用软件。
(二)C语言的发展过程:
C语言是在B语言的基础上发展起来的,即1972年至1973年间,贝尔实验室的D.M.Ritchie在B语言的基础上设计出了C语言。
(三)C语言的种类:
包括MicrosoftC.TurboC.QuickC等,本课程运用的是Turboc2.O版本。
第二节 C语言的特点
C语言的主要特点如下:
(1)语言简洁、紧凑、使用方便、灵活;
(2)运算符丰富;(3)数据结构丰富,具有现代化语言的各种数据结构;(4)具有结构化的控制语句;(j)语法限制不太严格,程序设计自由度大;(6)允许直接访问物理地址;(7)生成目标代码质量高,程序执行效率高;(8)用C语言写的程序可移植性好。
第三节 简单的C程序介绍
C程序的构成:
(1)C程序是由函数组成的;
(2)C程序总是从main函数开始执行;(3)C程序书写自由,一行内可写多个语句,一个语句可写在多行上;(4)每个语句和数据的意义最后必须加一个分号;(5)可用/*...*/对C程序中的任何部分作注释。
第四节 C程序的上机步骤
(1)C程序的界面进入;
(2)编辑源文件;(3)编译源程序;(4)执行程序;(5)退出TurboC系统,回到DOS命令状态。
三、考核知识点
(一)C语言的特点及构成
(二)C语言的上机步骤
四、考核要求
(一)C语言的特点
(二)C语言的构成
(三)C语言的上机步骤
第二章 数据类型、运算符与表达式
一、学习目的和要求
通过本章的学习,掌握C程序常量与变量;整型、实型、字符型数据的各种表示形式;变量赋初值的方式;各类数据间混合运算时类型的转换;算述运算符和算术表达式;赋值运算符和赋值表达式;逗号运算符和逗号表达式的定义及内涵。
二、考试内容
第一节 常量与变量
(一)常量和符号常量:
1.常量的定义:
在程序运行过程中,其值不能改变的量。
2.常量的变型:
整型常量、实型常量、字符常量。
(二)变量:
1.标识符的定义:
由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。
标识符是用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
2.变量的使用规则:
先定义,后使用
第二节 整型数据
(一)整型常量的形式:
十进制整数;八进制整数;十六进制整数。
(二)整型变量:
1.整型变量的分类:
基本型(in+型)、短整型(Shortint型)、长整型(longint型)、无符号型。
2.各种类型整型变量数的范围。
第三节 实型数据
(一)实型常量的表示形式:
十进制数形式;指数形式。
(二)实型变量的分类:
单精度(float型);22精度(double型)。
第四节 字符型数据
(一)字符常量:
1.字符常量的定义:
用单引号括起来的一个字符。
2.转义字符的形式及功能
(二)字符变量:
用来存放字符常量,只能放一个字符。
(三)字符串常量:
用一对双引号括起来的字符序列
(四)字符常量与字符串常量的区别
第五节 变量赋初值
变量赋初值的方法:
第六节 各类数值型数据间的混合运算
整型、实型(包括单、双精度)、字符数据问一起运算时的数据类型转换
第七节 算术运算符和算术表达式
(一)基本的算术运算符:
+、-、*、/、%
(二)算术表达式和运算符的优先级与结合性
(三)强制类型转换的形式:
(类型名)(表达式)
(四)自增、自减运算符:
++i,--i,i++,i--,其作用是使变量的值增1(或减1)
第八节 赋值运算符和赋值表达式
(一)赋值运算符:
=
(二)复合的赋值运算符:
十二如:
x*=y+8;等价于x=x*(y+8);
(三)赋值表达式的一般形式:
(变量>(赋值运算符)(表达式)
第九节 逗号运算符和逗号表达式
(一)逗号表达式的一般形式:
表达式1,表达式2
三、考核知识点
(一)标识符
(二)整型变量数、实型变量数的取值范围
(三)自加、自减运算符
(四)逗号表达式
四、考核要求
(一)标识符:
1.识别判断合法与不合法的标识符
(二)整型变量:
1.掌握四种整型变量的取值范围
2.掌握整型变量的定义方式
(三)实型变量:
1.掌握实型变量的定义方式
(四)字符型数据:
1.掌握字符变量的定义方式
2.掌握转义字符的形式及功能
3.掌握字符常量与字符串常量的区别
(五)变量赋初值:
掌握变量初始化的方法
(六)各类数值型数据间的混合运算;掌握各种类型数据间混合运算时,数据间的相互转换关系。
(七)算术表达式:
1.掌握算术运算符的优先级和结合性
2.掌握强制类型转换的形式
3.掌握自增、自减运算符的规则
(八)赋值表达式:
掌握一般赋值运算符和复合赋值运算符的含义
(九)逗号运算符及逗号表达式:
1.掌握逗号运算符的运算形式
2.掌握逗号运算符和号数间分隔符间的区别
五、重点、难点
(一)自增、自减运算符
(二)逗号表达式
第三章 最简单的C程序设计
一、学习目的和要求
通过本章的学习,掌握C程序的三种基本结构、赋值语句、数据输出、输入的方式,并会编制简单的C程序。
二、考试内容
第一节 C语句概述
C语句的种类:
1.控制语句;2.函数调用语句;3。
表达式语句;4.空语句;5.复合语句。
第二节 程序的三种基本结构
(一)C程序的三种基本结构:
1.顺序结构;2.选择结构;3.循环结构
(二)循环结构的种类:
1.竖型循环结构;2.直到型循环结构
第三节 赋值语句
(一)赋值语句的形式:
赋值表达式加上一个分号
(二)赋值语句和赋值表达式的区别
第四节 数据输出
(一)数据输出函数种类:
1、字符输出函数Putchar;2、格式输出函数Printf.
(二)Putchar函数及Printf函数的功能:
Putchar是向终端输出一字符,Printf是向终端输出若干个任意类型的数据。
(三)Printf函数的一般格式:
Printf(格式控制,输出表列)
(四)格式字符的种类:
1、d格式符;2、o格式符;3、x格式符;4、u格式符;5、c格式符;6、s格式符;7、f格式符;8、e格式符;9、g格式符。
(五)d格式符、c格式符、s格式符、f格式符、o格式符、x格式符、u格式符、e格式符的各种用法。
第五节 数据输入
(一)数据输入函数的种类:
1、字符输入函数getchar;2、格式输入函数scanf。
(二)getchar函数和scanf函数的功能:
getchar函数的从终端输入一个字符,scanf函数是从终端输入任何尖型的多个数据。
(三)scanf函数的一般形式:
scanf(格式控制,地址表列)
(四)scanf函数的具体应用
第六节 程序举例
编制简单C程序的基本方法
三、考核知识点
(一)数据的输出函数的用法
(二)数据的输入函数的用法
(三)编制简单C程序
四、考核要求
(一)C语句:
掌握C语句的5种分类形式
(二)程序的三种基本结构:
掌握理解三种基本结构的形式及作用
(三)数据输出:
1.掌握Putchar函数的用法及作用
2.掌握Printf函数的各种输出格式
(四)数据输入:
1.掌握getchar函数的用法及作用
2.掌握scanf函数的用法及作用
五、重点、难点
(一)Printf函数输出时的格式控制
(二)scanf函数的格式及用法
第四章 逻辑运算和判断选取控制
一、学习目的和要求
通过本章的学习,掌握关系运算符和关系表达式、逻辑运算符和逻辑表达式、if语句、Switch语句的用法,并能运用上述语句编写程序。
二、考试内容
第一节 关系运算符和关系表达式
(一)关系运算符及其优先次序:
C语言提供了6种关系运算符:
<;<=;>;>=;=;!
=。
前4种优先级相同,后2种相同,前4种高于后2种。
(二)关系表达式的值:
"1"代表真,"O"代表假。
第二节 逻辑运算符和逻辑表达式
(一)逻辑运算符及其优先次序:
δδ(逻辑与)、!
!
(逻辑或)、!
(逻辑非)优先次序:
!
>δδ>!
!
,即"!
"为三者最高。
(二)逻辑表达式的求解过程
第三节 if语句
(一)if语句的三种形式:
1.if(表达式)语句;2.if(表达式);语句1else语句2;3.if(表达式1)语句1 elseif(表达式2)语句2...elseif(表达式m)语句melse语句n。
(二)if语句的嵌套
(三)条件运算符的一般形式:
表达式1?
表达式2:
表达式3;
(四)Switch语句(多分支选择语句)的一般形式:
Switch(表达式)
ζcase 常量表过式1:
语句1
case 常量表达式2:
语句2
┇
case 常量表达式n:
语句n
default :
语句n+1
三、考核知识点
(一)关系运算符、逻辑运算符、关系表达式及逻辑表达式的求解方法
(二)if语句及条件运算符的用法
(三)switch语句留用法
四、考核要求
(一)关系运算符的关系表达式:
1、掌握6种关系运算符间的优先次序
2、掌握求解关系表达式的方法
(二)逻辑运算符和逻辑表达式:
1、掌握逻辑运算符及其优先次序
2、掌握求解逻辑表达式的方法
(三)if语句:
1、掌握if语句的三种基本形式的用法
2、掌握if语句的嵌套
3、掌握条件运算的用法
(四)Switch语句:
掌握Switch语句的语法特点及用法
五、重点、难点
(一)逻辑表达式的求解
(二)if语句的嵌套
(三)条件运算符
(四)Switch语句
第五章 循环控制
一、学习目的和要求
通过本章的学习,要求掌握循环控制的三种形式(while,do~while,for);循环的嵌套及Continue语句、break语句,并能利用上述语句编写程序
二、考试内容
第一节 概述
三种形式的循环语句:
竖型循环(while),直到型循环(do~while),步长型循环(for)。
第二节 while语句
(一)while语句的一般形式:
while(表达式)语句;
(二)while语句的特点:
先判断表达式,后执行语句;
(三)while语句的用法;
第三节 do-while语句
(一)do~while语句的一般形式:
do语句 while(表达式);
(二)do~while语句的特点:
先执行语句,后判断表达式;
(三)do~while语句的用法;
(四)while语句和d0~while语句的区别;
第四节 for语句
for语句的一般形式为:
for(表达式1;表达式2;表达式3)语句;
(二)for语句的执行过程;
(三)应用for语句所要注意的问题;
(四)for语句的用法。
第五节 循环的嵌套
(一)循环嵌套意义:
一个循环体内包含另一个完整的循环结构。
(二)三种循环(while循环,do~while循环,for循环)互相嵌套的6种形式
第六节 n种循环的比较
while循环,do~while循环,for循环的区别
第七节 break语句和Continue语句
(一)break语句的作用:
结束循环,接着执行循环下面的语句。
(二)continue语句的作用:
结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。
(三)break语句和continue语句的用法。
第八节 程序举例
学会编制带有循环语句的C程序
三、考核知识点
(一)while循环、do~while循环、for循环
(二)循环的嵌套
(三)break语句和continue语句
四、考核要求
(一)while语句:
1.掌握while语句的应用
(二)do~while语句:
1.掌握do~while语句的用法
2.掌握while语句和do~while语句之间的区别
(三)for语句:
1.掌握for语句的用法
2.掌握for语句的特点
(四)循环的嵌套:
掌握三种循环六种嵌套形式
(五)break语句和continue语句:
1.掌握break语句在循环中的含义
2.掌握continue语句在循环中的含义
五、重点、难点
(一)for语句的用法
(二)break语句和continue语句的功用及区别
第六章 数组
一、学习目的和要求
通过本章的学习,掌握一维数组、二维数组、字符数组的定义形式和应用方式,并会用数组编写程序。
二、考试内容
第一节 一维数组的定义和使用
(一)一维数组的定义方式:
类型说明符数组名[常量表达式]
(二)一维数组元素的引用:
数组名[下标]
(三)一维数组的初始化:
共用4种初始化方法
第二节 二维数组的定义和引用
(一)二维数组的定义方式:
一般形式为:
类型说明符数组名[常量表达式][常量表达式]
(二)二维数组元素的引用:
数组名[下标][下标]
(三)二维数组的初始化:
共用4种初始化方法
第三节 字符数组
(一)字符数组的定义方式:
类型说明符数组名[常量表达式]
(二)字符数组的初始化方式
(三)字符数组的引用形式
(四)字符串和字符串结束标志
(五)字符数组的输入输出
(六)字符串处理函数:
puts(字符数组)、gets(字符数组)、strcat(字符数组1,字符数组2),ostrcpy(字符数组1,字符串2)、strlen(字符数组)、strlwr(字符串)、strupr(字符串)
三、考核知识点
(一)一维数组的定义及引用
(二)二维数组的定义及引用
(三)字符数组的定义及引用
四、考核要求
(一)一维数组:
掌握一维数组的定义和引用及初始化的方法
(二)二维数组:
掌握二维数组的定义,初始化及引用的方法
(三)字符数组:
1.掌握字符数组的定义及初始化的方法
2.掌握字符串和字符串结束标志
3.掌握字符数组的输入输出方法
4.掌握8个字符串处理函数
五、重点、难点
(一)一维数组的引用
(二)二维数组的引用
(三)字符数组的引用及字符串处理函数
第七章 函数
一、学习目的和要求
通过本章的学习,掌握函数的定义和调用;函数的嵌套调用、递归调用;数组作函数参数;局部变量和全局变量;动态和静态存储变量;了解内部函数;外部函数,并会用函数编制程序。
二、考试内容
第一节 概述
(一)函数的分类;1.从用户使用的角度可分为:
(1)标准函数;
(2)用户自定义函数;
2.从函数的形式可分为:
(1)无参函数;
(2)有参函数
第二节 函数定义的一般形式
(一)无参函数的定义形式:
类型标识符 函数名( )
{说明部分
语句}
(二)有参函数定义的一般形式:
类型标识符 函数名(形式
参数表列)
形式参数说明
{说明部分
语句}
(三)"空色数"的定义形式:
类型说明符函数名( )
{ }
第三节 函数参数和函数的值
(一)形式参数和实际参数:
1.实参与形参的类型应一致2.实参变量对形参变量的数据传递是单向值传递
(二)函数的返回值:
1.函数返回值的定义:
通过函数调用使主调函数得到的一个确定的值
2.函数值的类型
第四节 函数的调用
(一)函数调用的一般形式:
函数名(实参表列)
(二)函数调用的方式:
1.函数语句 2。
函数表达式 3.函数参数
(三)对被调用函数的说明:
1.使用库函数;#include"stdio.h"
2.调用用户自定义函数:
类型标识符 被调用函数的函数名( );
3.使用数学库中的函数:
#include"math.h"
第五节 函数的嵌套调用
(一)函数嵌套调用的定义:
在调用一个函数的过程中,又调用另一个函数
(二)函数嵌套调用的执行过程
(三)函数嵌套调用的方式
第六节 函数的递归调用
(一)函数递归调用的定义:
在调用一个函数的过程中又出现直接或间接地调用该函数本身
(二)函数递归调用的实现方法
第七节 数组作为函数参数
(一)数组元素作函数实参的实现方式
(二)数组名作函数参数的实现方式:
实参与形参都应用数组名
(三)多维数组作函数参数的实现方式
第八节 局部变量和全局变量
(一)局部变量:
1.局部变量的定义2.局部变量的作用域
(二)全局变量:
1.全局变量的定义2.全局变量的作用域
第九节 动态存储变量和静态存储变量
(一)变量的存储类别;
(二)局部变量的存储方式;
(三)全局变量的存储方式;
第十节 内部函数和外部函数
(一)内部函数的定义形式:
static类型标识符 函数名(形参表)
(二)外部函数的定义形式:
extern类型标识符 函数名(形参表)
三、考核知识点
(一)函数的种类
(二)函数的定义形式
(三)函数的参数和函数的返回值
(四)函数的一般调用、嵌套凋用、递归调用
(五)数组作为函数参数
(六)局部变量和全局变量
(七)动态存储变量和静态存锗变量
四、考核要求
(一)概述:
掌握函数的种类
(二)函数定义的一般形式:
掌握函数定义的三种基本形式
(三)函数参数和函数的值:
掌握形参与实参的含义及相互关系,掌握函数的返回值的形式
(四)函数的调用:
1.掌握函数调用的一般形式
2.掌握函数的调用方式
(五)函数的嵌套调用:
1.理解函数嵌套调用的执行过程
2.掌握函数嵌套调用的方式
(六)函数的递归调用:
掌握函数递归调用的方式
(七)数组作函数参数:
掌握数组元素、数组名、多维数组作函数参数的方式
(八)局部变量和全局变量:
1.掌握局部变量的含义和作用域
2.掌握全局变量的含义及作用域
(九)动态存储变量和静态存储变量:
1.掌握局部变量的存储方式
2.掌握全局变量的存储方式
五、重点、难点
(一)函数的定义及调用的一般形式
(二)形参与实参的值传递
(三)函数返回值
(四)函数的嵌套调用、递归调用
(五)数组作函数参数
(六)局部变量和全局变量
(七)动态存储变量和静态存储变量
第八章 编译预处理
一、学习目的和要求
通过本章的学习,掌握宏定义的方式及应用,了解文件包含和条件编译。
二、考试内容