- 欢迎访问江苏自考网!江苏自考网为考生提供江苏自学考试信息服务,网站信息供学习交流使用,非政府官方网站,官方信息以江苏教育考试院www.jseea.cn为准。
27080 C语言程序设计
自考在线学习
+问答
江苏技术师范学院编 (高纲号 0371)
一、学习目的和要求
通过本章的学习,了解C语言出现的背景,C语言的特点,通过简单C程序的介绍,初步认识C程序,并初步掌握C程序的上机步骤。
二、考试内容
第一节 C 语言出现的历史背景
(一)C语言的性质:C语言是国际上广泛流行的、很有发展前途的计算机高级语言。它适合于作为系统描述语言,即用来写系统软件,也可用来写应用软件。
(二)C语言的发展过程:C语言是在B语言的基础上发展起来的,即1972年至1973年间,贝尔实验室的D.M.Ritchie在 B语言的基础上设计出了C语言。
(三)C语言的种类:包括Microsoft C.Turbo C.Quick C等,本课程运用的是Turbo c 2.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)退出Turbo C系统,回到DOS命令状态。
三、考核知识点
(一)C语言的特点及构成
(二)C语言的上机步骤
四、考核要求
(一)C语言的特点
(二)C语言的构成
(三)C语言的上机步骤
一、学习目的和要求
通过本章的学习,掌握C程序常量与变量;整型、实型、字符型数据的各种表示形式;变量赋初值的方式;各类数据间混合运算时类型的转换;算述运算符和算术表达式;赋值运算符和赋值表达式;逗号运算符和逗号表达式的定义及内涵。
二、考试内容
第一节 常量与变量
(一)常量和符号常量:
1.常量的定义:在程序运行过程中,其值不能改变的量。
2.常量的变型:整型常量、实型常量、字符常量。
(二)变量:
1.标识符的定义:由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。标识符是用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
2.变量的使用规则:先定义,后使用
第二节 整型数据
(一)整型常量的形式:十进制整数;八进制整数;十六进制整数。
(二)整型变量:1.整型变量的分类:基本型(in+型)、短整型(Short int型)、长整型(long int型)、无符号型。
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.直到型循环结构
第三节 赋值语句
(一)赋值语句的形式:赋值表达式加上一个分号
(二)赋值语句和赋值表达式的区别
(一)数据的输出函数的用法
(二)数据的输入函数的用法
(三)编制简单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(表达式);语句1 else语句2;3.if(表达式1)语句1 else if(表达式2)语句2...else if(表达式m)语句m else语句n。
(二)if语句的嵌套
(三)条件运算符的一般形式:表达式1?表达式2:表达式3;
(四)Switch语句(多分支选择语句)的一般形式:
(一)逻辑表达式的求解
(二)if语句的嵌套
(三)条件运算符
(四)Switch 语句
第五章 循环控制
一、学习目的和要求
通过本章的学习,要求掌握循环控制的三种形式(while,do~while,for);循环的嵌套及Continue 语句、break 语句,并能利用上述语句编写程序
二、考试内容
第一节 概述
三种形式的循环语句:竖型循环(while),直到型循环(do~ while),步长型循环(for)。
第二节 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种形式
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 语句的用法
(二)break 语句和continue 语句的功用及区别
第六章 数组
一、学习目的和要求
通过本章的学习,掌握一维数组、二维数组、字符数组的定义形式和应用方式,并会用数组编写程序。
二、考试内容
第一节 一维数组的定义和使用
(一)一维数组的定义方式:类型说明符数组名[常量表达式]
(二)一维数组元素的引用:数组名[下标]
(三)一维数组的初始化:共用4种初始化方法
(一)二维数组的定义方式:一般形式为:类型说明符数组名[常量表达式][常量表达式]
(二)二维数组元素的引用:数组名[下标][下标]
(三)二维数组的初始化:共用4种初始化方法
第三节 字符数组
(一)字符数组的定义方式:类型说明符数组名[常量表达式]
(二)字符数组的初始化方式
(三)字符数组的引用形式
(四)字符串和字符串结束标志
(五)字符数组的输入输出
(六)字符串处理函数:puts(字符数组)、gets(字符数组)、strcat(字符数组1,字符数组2),ostrcpy(字符数组1,字符串2)、strlen(字符数组)、strlwr(字符串)、strupr(字符串)
三、考核知识点
(一)一维数组的定义及引用
(二)二维数组的定义及引用
(三)字符数组的定义及引用
四、考核要求
(一)一维数组:掌握一维数组的定义和引用及初始化的方法
(二)二维数组:掌握二维数组的定义,初始化及引用的方法
(三)字符数组:1.掌握字符数组的定义及初始化的方法
2.掌握字符串和字符串结束标志
3.掌握字符数组的输入输出方法
4.掌握8个字符串处理函数
五、重点、难点
(一)一维数组的引用
(二)二维数组的引用
(三)字符数组的引用及字符串处理函数
第七章 函数
一、学习目的和要求
通过本章的学习,掌握函数的定义和调用;函数的嵌套调用、递归调用;数组作函数参数;局部变量和全局变量;动态和静态存储变量;了解内部函数;外部函数,并会用函数编制程序。
二、考试内容
第一节 概述
(一)函数的分类;1.从用户使用的角度可分为:(1)标准函数;(2)用户自定义函数;
第二节 函数定义的一般形式
(一)无参函数的定义形式:类型标识符 函数名( )
{说明部分
语句}
(二)有参函数定义的一般形式:类型标识符 函数名(形式
参数表列)
形式参数说明
{说明部分
语句}
第三节 函数参数和函数的值
(一)形式参数和实际参数:
1.实参与形参的类型应一致2.实参变量对形参变量的数据传递是单向值传递
(二)函数的返回值:1.函数返回值的定义:通过函数调用使主调函数得到的一个确定的值
2.函数值的类型
第四节 函数的调用
(一)函数调用的一般形式:函数名(实参表列)
第五节 函数的嵌套调用
(一)函数嵌套调用的定义:在调用一个函数的过程中,又调用另一个函数
(二)函数嵌套调用的执行过程
(三)函数嵌套调用的方式
第六节 函数的递归调用
(一)函数递归调用的定义:在调用一个函数的过程中又出现直接或间接地调用该函数本身
(二)函数递归调用的实现方法
第七节 数组作为函数参数
(一)数组元素作函数实参的实现方式
(二)数组名作函数参数的实现方式:实参与形参都应用数组名
(三)多维数组作函数参数的实现方式
(一)局部变量:1.局部变量的定义2.局部变量的作用域
(二)全局变量:1.全局变量的定义2.全局变量的作用域
第九节 动态存储变量和静态存储变量
(一)变量的存储类别;
(二)局部变量的存储方式;
(三)全局变量的存储方式;
第十节 内部函数和外部函数
(一)内部函数的定义形式:static 类型标识符 函数名(形参表)
(二)外部函数的定义形式:extern 类型标识符 函数名(形参表)
三、考核知识点
(一)函数的种类
(二)函数的定义形式
(三)函数的参数和函数的返回值
(四)函数的一般调用、嵌套凋用、递归调用
(五)数组作为函数参数
(六)局部变量和全局变量
(七)动态存储变量和静态存锗变量
(一)概述:掌握函数的种类
(二)函数定义的一般形式:掌握函数定义的三种基本形式
(三)函数参数和函数的值:掌握形参与实参的含义及相互关系,掌握函数的返回值的形式
(四)函数的调用:1.掌握函数调用的一般形式
2.掌握函数的调用方式
(五)函数的嵌套调用:1.理解函数嵌套调用的执行过程
2.掌握函数嵌套调用的方式
(六)函数的递归调用:掌握函数递归调用的方式
(七)数组作函数参数:掌握数组元素、数组名、多维数组作函数参数的方式
(八)局部变量和全局变量:1.掌握局部变量的含义和作用域
2.掌握全局变量的含义及作用域
(九)动态存储变量和静态存储变量:
1.掌握局部变量的存储方式
2.掌握全局变量的存储方式
五、重点、难点
(一)函数的定义及调用的一般形式
(二)形参与实参的值传递
(三)函数返回值
(四)函数的嵌套调用、递归调用
(五)数组作函数参数
第八章 编译预处理
一、学习目的和要求
通过本章的学习,掌握宏定义的方式及应用,了解文件包含和条件编译。
二、考试内容
第一节 宏定义
(一)不带参数的宏定义的一般形式:#define 标识符字符串
(二)带参数的宏定义的一般形式:#define 宏名(参数表)字符串
(三)宏定义的作用域:
第二节 文件包含
(一)文件包含的定义:一个源文件可以将另外一个源文件的全部内容包含进来。
(二)文件包含的一般形式:#include“文件名”
(一)条件编译的定义:对源程序中满足一定条件的其中一部分内容进行编译。
(二)条件编译的几种形式:1.#ifdef 标识符
程序段1
#else
程序段2
#endif
2.#ifdef 标识符
程序段1
#else
程序段2
#endif
3.#if 表达式
程序段l
#else
程序段2
#endif
三、考核知识点
(一)宏定义
(二)文件包含
(三)条件编译
(一)宏定义:1.掌握不带参数宏定义的定义形式和用法
2.掌握带参数宏定义的定义形式和用法
3.掌握宏定义的作用域
(二)文件包含:掌握文件包含的用法
(三)条件编译:掌握条件编译的用法
五、重点、难点
不带参数的宏定义和带参数的宏定义的用法及作用域
第九章 指针
一、学习目的和要求
通过本章的学习,掌握指针的概念、数据组的指针、字符串指针、函数指针、返回指针值的函数、指针数组及指向指针的指针,并会用指针编程来解决实际问题。
二、考试内容
第一节 指针的概念
(一)指针的定义:变量的地址即为变量的指针
(二)指针和指针变量的区别
(一)指针变量定义的一般形式:类型标识符 *标识符
(二)指针变量的引用
(三)指针变量作函数参数的用法
第三节 数组的指针和指向数组的指针变量
(一)指向数组元素的指针变量的定义与赋值
(二)通过指针引用数组元素
(三)数组名作函数参数1.形参和实参都用数组名;2.实参用数组名,形参用指针变量;3.实参形参都用指针变量;4.实参为指针变量,形参为数组名
(四)指向多维数组的指针和指针变量:
1.多维数组的地址
2.多维数组的指针
第四节 字符串的指针和指向字符串的指针变量
(一)字符串的表示形式:
1.用字符数组实现
2.用字符指针实现
(二)字符串指针作函数参数;
(三)字符指针变量与字符数组;
(一)用函数指针变量调用函数:指向函数的指针变量的一般意义形式为数据类型标识符(*指针变量名)( );
(二)把指向函数的指针变量作函数参数
第六节 返回指针值的函数
(一)返回指针值的函数一般定义形式:类型标识符 *函数名(参数表);
第七节 指针数组和指向指针的指针
(一)指针数组:
1.指针数组的定义形式:类型标识*数组名[数组长度说明]
2.指针数组的含义及应用
(二)指向指针的指针
(三)指针数组作main函数的形参:
1.一般形式:main(argc,argv)
2.argc、argv的含义
三、考核知识点
(一)变量的指针和指向变量的指针变量;
(二)数组的指针和指向数组的指针变量;
(三)字符串的指针和指向字符串的指针变量;
四、考核要求
(一)指针的概念:掌握指针、指针变量的定义及两者之间的区别
(二)变量的指针和指向变量的指针变量:
1.掌握指针变量的引用方式
2.掌握指针变量作为函数参数的方式
(三)数组的指针和指向数组的指针变量:
1.掌握指向数组元素的指针变量的定义与赋值方式;2掌握通过指针引用数组元素的方法;3.掌握数纰名作函数参数的方式;4.掌握指向多维数组的指针和指针变量的用法
(四)字符串的指针和指向字符串的指针变量:1.掌握字符串的表示形式;2.掌握字符串指针作函数参数的用法;3.掌握字符指针变量与字符数组的用法
(五)函数的指针和指向函数的指针变量:1.掌握用函数指针变量调用函数的方法;2.掌握指向函数的指针变量作函数参数的方法
(六)返回指针值的函数:掌握返回指针值的函数的使用方法
(七)指针数组和指向指针的指针:1.掌握指针数组的概念及使用方法;2.掌握指向指针的指针的用法;3.掌握指针数组作 main函数的形参的方式;4.掌握argc、argv的具体含义
(一)指针变量作函数参数
(二)数组的指针和指向数组的指针变量
(三)字符串指针和指向字符串的指针变量
(四)函数的指针和指向函数的指针变量
(五)指针数组及指向指针的指针
(六)指针数组作main函数的形参
第十章 结构体与共用体
一、学习目的和要求
通过本章的学习,掌握结构体类型变量定义方式、结构体类型变量的引用和初始化,掌握结构体数组、指向结构体类型数据的指针及用指针处理链表,了解共用体,枚举类型和typedef定义类型。
二、考试内容
第一节 概述
定义一个结构体类型的一般形式:struct结构体名{成员表列};
定义结构体类型变量的方法有三种:1.先定义结构体类型再定义变量名;2.在定义类型的同时定义变量;3.直接定义结构类型变量
第三节 结构体类型变量的引用
结构体变量的引用应遵守四T规则
第四节 结构体变量的初始化
(一)对外部存储类型的结构体变量进行初始化的方法
(二)对静态存储类型的结构体变量进行初始化的方法
第五节 结构体数组
(一)结构体数组的定义
(二)结构体数组的初始化
(三)结构体数组的应用
第六节 指向结构体类型数据的指针
(一)指向结构体变量的指针
(二)指向结构体数组的指针
(三)用指向结构体的指针作函数参数
第七节 用指针处理链表
(一)链表的概述:1.链表的定义 2.处理链表的三个有关函数
(二)建立链表的方法
(三)输出链表的方法
(四)对链表的删除操作方法
(五)对链表的插入操作方法
第八节 共用体
(一)共用体的概念: 1.共用体类型变量的定义形式:union共用体名
{成员表列)变量表列:
(二)共用体变量的引用方式:
(三)共用体类型数据的特点
(四)共用体类型变量的应用
第九节 枚举类型
枚举类型变量的定义及特点
第十节 用 typedef 定义类型
用 typedef 定义变量的方式
(一)结构体
(二)用指针处理链表
(三)共用体
四、考核要求
(一)结构体:1.掌握定义结构体类型变量的方法
2.掌握结构体类型变量的引用
3.掌握结构体变量的初始化
4.掌握结构体数组
5.掌握指向结构体类型数据的指针
(二)用指针处理链表:1.掌握建立链表的方法
2.掌握输出链表的方法
3.掌握对链表的删除操作
4.掌握对链表的插入操作
(三)共用体:1.掌握共用体的概念;2.掌握共用体变量的引用方式;3.掌握共用体数据类型的特点
(四)枚举类型:掌握枚举类型的定义方式及特点
(五)typedef 类型:了解typedef 定义类型的方式
五、重点、难点
(一)结构体数组及指向结构体类型数据的指针
(二)链表的操作
一、学习目的和要求
通过本章的学习,掌握数值的三种表示方法:原码、反码、补码;掌握位运算符的含义及所实现的功能,了解位段的内涵。
二、考试内容
第一节 概述
(一)原码、反码、补码的定义及正负数用原码、反码、补码的表示形式。
第二节 位运算符
(一)位运算符的种类:δ(按位与)、|(按位或)、∧(按位异或)、~(取反)、《(左移、)》(右移)
(二)各种位运算符所实现的功能
第三节 位段
(一)位段的定义:是以位为单位定义长度的结构体类型中的成员
(二)位段的应用
(一)正负数原码、反码、补码的表示形式
(二)位运算符所实现的功能
四、考核要求
(一)掌握正负数原码、反码、补码的表示形式
(二)掌握位运算符的种类及功能
(三)了解位段的定义及应用形式
五、重点、难点
(一)正、负数的反码、补码
(二)位运算符的具体应用形式及所实现的功能
第十二章 文件
一、学习目的和要求
通过本章的学习,掌握文件的定义、文件类型指针、文件的打开与关闭、文件的读写;了解文件的定位及出错的检测方法。
二、考试内容
第一节 C 文件概述
(一)文件的含义:存储在外部介质上数据的集合
第二节 文件类型指针
(一)定义文件型指针变量的方式:FILE * fp;
第三节 文件的打开与关闭
(一)文件的打开(fopen函数)通用方式:FILE * fp;
fp=fopen(文件名,使用文件方式)
(二)使用文件方式及含义
(三)打开文件的常用方法:
if((fp=fopen("filel","r"))=NULL)
{printf("cannot open this file\n");
exit(0);}
(四)文件的关闭的一般形式:fclose(文件指针);
第四节 文件的读写
(一)fputc 函数:1.fputc 函数的一般形式:fputc(ch,fp);2. fputc 函数的作用:把一个字符写到磁盘文件上
(二)fgetc 函数:1.fgetc 函数的调用形式:ch=fgetc(fp);
2.fgetc 函数的作用:从指定文件读入一个字符
(三)fputc 函数和fgetc函数的应用
(四)fprintf 函数的一般调用方式:fprintf(文件指针,格式字符串,输出表列)
第五节 文件的定位
(一)rewind 函数的作用:使位置指针重新返回文件的开头
(二)fseek 函数的作用:改变文件的位置指针
(三)fseek 函数的调用方式:fseek(文件类型指针.位移量,起始点)
第六节 出错的检测
(一)ferror 函数的一般调用方式:ferror(fp);
(二)clearerr 函数的作用:使文件错误标志和文件结束标志置为0。
三、考核知识点
(一)文件的打开与关闭
(二)fputc函数;fgetc函数、fprintf函数、fscanf函数
四、考核要求
(一)掌握文件的定义及文件的存取单位;
(二)掌握文件类型指针变量的定义力式;
(三)掌握文件的打开与关闭的方法;
(四)掌握fputc函数、fgetc函数、fprintf函数及fscanf函数
(五)了解文件的定位函数及检测文件出错的函数
(一)文件的打开与关闭
(二)fputc、fgetc、fprintf、fscanf 函数的用法
三、有关说明与实施要求
为了使本大纲的规定在个人自学和考试命题中得到贯彻和落实,特对有关问题作如下说明,并提出具体实施要求。
1。考核目标的说明:为使考试内容具体化和考试要求标准化,本大纲在列出各章节考试内容的基础上,对各章规定了考核目标、考核知识点、考核要求及重点难点。明确考核目标,使自学应考者能明确考试内容和要求,可有目的地系统学习教材,使考试命题明确考核范围,更准确地安排试题的难易度。
本大纲中要求掌握的内容是考试必考内容,要求了解的内容不作考试要求。
2.学习方法指导:
(1)认真阅读教材:阅读教材是自学的基本环节。阅读教材前,应先了解自学考试大纲中的学习目的和要求、考核知识点、考核要求及考试重点、难点。理解每一章的基本要点,然后系统地读书。读书过程中应当记忆基本概念、语法,并阅读教材中的例程序,弄懂编写程序的步骤和基本方法。
(2)做好读书笔记:写读书笔记是巩固所学知识的一种重要方法,阅读教材是理解课程内容的基础,要切实深刻地理解掌握课程内容,必须把读书与思考结合起来,通过写读书笔记用自己的语言表达出来变成自己的东西。
3.关于自学教材:自学教材为《C程序设计》,谭浩强主编,清华大学出版社1991年以后版本
4.考试时间长度:120分钟
5.考试的题型:填空题、选择题、分析程序输出结果题、完善程序题
6.题型举例及解答要求:
一、填空题:
1.将下列表达式(1)-(6)作为printf("%x",--)的第二个参数,请把相应的输出填在( )中。(int a=5;)
(1)-1( ) (2)!a∧a( )
(3)a‖O( ) (4)17δ20( )
(5)a<<5( ) (6)sizeof(int)( )
解答要求:在认真阅读上述内容的基础上,在每个括号中填入一个答案。
二、选择题:在下列备选答案中,先选出一个正确答案,将其序号填在题后的括号内。
1.下列说明中正确的是( )
A、char a,b;*c; B、char a;*b,c;
C、char *a,b,c; D、char a,b,*c;
2.以下程序的输出是( )。
main( ){printf("%d",NULL);}
A、'\O' B、1 C、O D、无定义
三、分析下列程序的输出结果:阅读程序后,在输出结果后的括号内填入正确的答案。
一、课程性质与设置目的要求
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语言的种类:包括Microsoft C.Turbo C.Quick C等,本课程运用的是Turbo c 2.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)退出Turbo C系统,回到DOS命令状态。
三、考核知识点
(一)C语言的特点及构成
(二)C语言的上机步骤
四、考核要求
(一)C语言的特点
(二)C语言的构成
(三)C语言的上机步骤
第二章 数据类型、运算符与表达式
一、学习目的和要求
通过本章的学习,掌握C程序常量与变量;整型、实型、字符型数据的各种表示形式;变量赋初值的方式;各类数据间混合运算时类型的转换;算述运算符和算术表达式;赋值运算符和赋值表达式;逗号运算符和逗号表达式的定义及内涵。
二、考试内容
第一节 常量与变量
(一)常量和符号常量:
1.常量的定义:在程序运行过程中,其值不能改变的量。
2.常量的变型:整型常量、实型常量、字符常量。
(二)变量:
1.标识符的定义:由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。标识符是用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
2.变量的使用规则:先定义,后使用
第二节 整型数据
(一)整型常量的形式:十进制整数;八进制整数;十六进制整数。
(二)整型变量:1.整型变量的分类:基本型(in+型)、短整型(Short int型)、长整型(long int型)、无符号型。
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格式符的各种用法。
(二)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函数的具体应用
(二)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(表达式);语句1 else语句2;3.if(表达式1)语句1 else if(表达式2)语句2...else if(表达式m)语句m else语句n。
(二)if语句的嵌套
(三)条件运算符的一般形式:表达式1?表达式2:表达式3;
(四)Switch语句(多分支选择语句)的一般形式:
Switch(表达式)
ζcase 常量表过式1:语句1
case 常量表达式2:语句2
┇
case 常量表达式n:语句n
default : 语句 n+1
ζcase 常量表过式1:语句1
case 常量表达式2:语句2
┇
case 常量表达式n:语句n
default : 语句 n+1
三、考核知识点
(一)关系运算符、逻辑运算符、关系表达式及逻辑表达式的求解方法
(二)if语句及条件运算符的用法
(三)switch 语句留用法
(二)if语句及条件运算符的用法
(三)switch 语句留用法
四、考核要求
(一)关系运算符的关系表达式:
1、掌握6种关系运算符间的优先次序
2、掌握求解关系表达式的方法
2、掌握求解关系表达式的方法
(二)逻辑运算符和逻辑表达式:
1、掌握逻辑运算符及其优先次序
2、掌握求解逻辑表达式的方法
2、掌握求解逻辑表达式的方法
(三)if语句:
1、掌握if语句的三种基本形式的用法
2、掌握if语句的嵌套
3、掌握条件运算的用法
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 语句在循环中的含义
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.使用库函数;#include"stdio.h"
2.调用用户自定义函数:类型标识符 被调用函数的函数名( );
3.使用数学库中的函数:#include"math.h"
第五节 函数的嵌套调用
(一)函数嵌套调用的定义:在调用一个函数的过程中,又调用另一个函数
(二)函数嵌套调用的执行过程
(三)函数嵌套调用的方式
第六节 函数的递归调用
(一)函数递归调用的定义:在调用一个函数的过程中又出现直接或间接地调用该函数本身
(二)函数递归调用的实现方法
第七节 数组作为函数参数
(一)数组元素作函数实参的实现方式
(二)数组名作函数参数的实现方式:实参与形参都应用数组名
(三)多维数组作函数参数的实现方式
第八节 局部变量和全局变量
(一)局部变量:1.局部变量的定义2.局部变量的作用域
(二)全局变量:1.全局变量的定义2.全局变量的作用域
第九节 动态存储变量和静态存储变量
(一)变量的存储类别;
(二)局部变量的存储方式;
(三)全局变量的存储方式;
第十节 内部函数和外部函数
(一)内部函数的定义形式:static 类型标识符 函数名(形参表)
(二)外部函数的定义形式:extern 类型标识符 函数名(形参表)
三、考核知识点
(一)函数的种类
(二)函数的定义形式
(三)函数的参数和函数的返回值
(四)函数的一般调用、嵌套凋用、递归调用
(五)数组作为函数参数
(六)局部变量和全局变量
(七)动态存储变量和静态存锗变量
四、考核要求
(一)概述:掌握函数的种类
(二)函数定义的一般形式:掌握函数定义的三种基本形式
(三)函数参数和函数的值:掌握形参与实参的含义及相互关系,掌握函数的返回值的形式
(四)函数的调用:1.掌握函数调用的一般形式
2.掌握函数的调用方式
(五)函数的嵌套调用:1.理解函数嵌套调用的执行过程
2.掌握函数嵌套调用的方式
(六)函数的递归调用:掌握函数递归调用的方式
(七)数组作函数参数:掌握数组元素、数组名、多维数组作函数参数的方式
(八)局部变量和全局变量:1.掌握局部变量的含义和作用域
2.掌握全局变量的含义及作用域
(九)动态存储变量和静态存储变量:
1.掌握局部变量的存储方式
2.掌握全局变量的存储方式
五、重点、难点
(一)函数的定义及调用的一般形式
(二)形参与实参的值传递
(三)函数返回值
(四)函数的嵌套调用、递归调用
(五)数组作函数参数
(六)局部变量和全局变量
(七)动态存储变量和静态存储变量
(七)动态存储变量和静态存储变量
第八章 编译预处理
一、学习目的和要求
通过本章的学习,掌握宏定义的方式及应用,了解文件包含和条件编译。
二、考试内容
第一节 宏定义
(一)不带参数的宏定义的一般形式:#define 标识符字符串
(二)带参数的宏定义的一般形式:#define 宏名(参数表)字符串
(三)宏定义的作用域:
第二节 文件包含
(一)文件包含的定义:一个源文件可以将另外一个源文件的全部内容包含进来。
(二)文件包含的一般形式:#include“文件名”
第三节 条件编译
(一)条件编译的定义:对源程序中满足一定条件的其中一部分内容进行编译。
(二)条件编译的几种形式:1.#ifdef 标识符
程序段1
#else
程序段2
#endif
2.#ifdef 标识符
程序段1
#else
程序段2
#endif
3.#if 表达式
程序段l
#else
程序段2
#endif
三、考核知识点
(一)宏定义
(二)文件包含
(三)条件编译
四、考核要求
(一)宏定义:1.掌握不带参数宏定义的定义形式和用法
2.掌握带参数宏定义的定义形式和用法
3.掌握宏定义的作用域
(二)文件包含:掌握文件包含的用法
(三)条件编译:掌握条件编译的用法
五、重点、难点
不带参数的宏定义和带参数的宏定义的用法及作用域
第九章 指针
一、学习目的和要求
通过本章的学习,掌握指针的概念、数据组的指针、字符串指针、函数指针、返回指针值的函数、指针数组及指向指针的指针,并会用指针编程来解决实际问题。
二、考试内容
第一节 指针的概念
(一)指针的定义:变量的地址即为变量的指针
(二)指针和指针变量的区别
第二节 变量的指针和指向变量的指针变量
(一)指针变量定义的一般形式:类型标识符 *标识符
(二)指针变量的引用
(三)指针变量作函数参数的用法
第三节 数组的指针和指向数组的指针变量
(一)指向数组元素的指针变量的定义与赋值
(二)通过指针引用数组元素
(三)数组名作函数参数1.形参和实参都用数组名;2.实参用数组名,形参用指针变量;3.实参形参都用指针变量;4.实参为指针变量,形参为数组名
(四)指向多维数组的指针和指针变量:
1.多维数组的地址
2.多维数组的指针
第四节 字符串的指针和指向字符串的指针变量
(一)字符串的表示形式:
1.用字符数组实现
2.用字符指针实现
(二)字符串指针作函数参数;
(三)字符指针变量与字符数组;
第五节 函数的指针和指向函数的指针变量
(一)用函数指针变量调用函数:指向函数的指针变量的一般意义形式为数据类型标识符(*指针变量名)( );
(二)把指向函数的指针变量作函数参数
第六节 返回指针值的函数
(一)返回指针值的函数一般定义形式:类型标识符 *函数名(参数表);
第七节 指针数组和指向指针的指针
(一)指针数组:
1.指针数组的定义形式:类型标识*数组名[数组长度说明]
2.指针数组的含义及应用
(二)指向指针的指针
(三)指针数组作main函数的形参:
1.一般形式:main(argc,argv)
2.argc、argv的含义
三、考核知识点
(一)变量的指针和指向变量的指针变量;
(二)数组的指针和指向数组的指针变量;
(三)字符串的指针和指向字符串的指针变量;
(四)函数的指针和指向函数的指针变量;
(五)返回指针值的函数;
(六)指针数组和指向指针的指针
(五)返回指针值的函数;
(六)指针数组和指向指针的指针
四、考核要求
(一)指针的概念:掌握指针、指针变量的定义及两者之间的区别
(二)变量的指针和指向变量的指针变量:
1.掌握指针变量的引用方式
2.掌握指针变量作为函数参数的方式
(三)数组的指针和指向数组的指针变量:
1.掌握指向数组元素的指针变量的定义与赋值方式;2掌握通过指针引用数组元素的方法;3.掌握数纰名作函数参数的方式;4.掌握指向多维数组的指针和指针变量的用法
(四)字符串的指针和指向字符串的指针变量:1.掌握字符串的表示形式;2.掌握字符串指针作函数参数的用法;3.掌握字符指针变量与字符数组的用法
(五)函数的指针和指向函数的指针变量:1.掌握用函数指针变量调用函数的方法;2.掌握指向函数的指针变量作函数参数的方法
(六)返回指针值的函数:掌握返回指针值的函数的使用方法
(七)指针数组和指向指针的指针:1.掌握指针数组的概念及使用方法;2.掌握指向指针的指针的用法;3.掌握指针数组作 main函数的形参的方式;4.掌握argc、argv的具体含义
五、重点、难点
(一)指针变量作函数参数
(二)数组的指针和指向数组的指针变量
(三)字符串指针和指向字符串的指针变量
(四)函数的指针和指向函数的指针变量
(五)指针数组及指向指针的指针
(六)指针数组作main函数的形参
第十章 结构体与共用体
一、学习目的和要求
通过本章的学习,掌握结构体类型变量定义方式、结构体类型变量的引用和初始化,掌握结构体数组、指向结构体类型数据的指针及用指针处理链表,了解共用体,枚举类型和typedef定义类型。
二、考试内容
第一节 概述
定义一个结构体类型的一般形式:struct结构体名{成员表列};
第二节 定义结构体类型变量的方法
定义结构体类型变量的方法有三种:1.先定义结构体类型再定义变量名;2.在定义类型的同时定义变量;3.直接定义结构类型变量
第三节 结构体类型变量的引用
结构体变量的引用应遵守四T规则
第四节 结构体变量的初始化
(一)对外部存储类型的结构体变量进行初始化的方法
(二)对静态存储类型的结构体变量进行初始化的方法
第五节 结构体数组
(一)结构体数组的定义
(二)结构体数组的初始化
(三)结构体数组的应用
第六节 指向结构体类型数据的指针
(一)指向结构体变量的指针
(二)指向结构体数组的指针
(三)用指向结构体的指针作函数参数
(四)指向结构体类型数据的指针的应用
第七节 用指针处理链表
(一)链表的概述:1.链表的定义 2.处理链表的三个有关函数
(二)建立链表的方法
(三)输出链表的方法
(四)对链表的删除操作方法
(五)对链表的插入操作方法
第八节 共用体
(一)共用体的概念: 1.共用体类型变量的定义形式:union共用体名
{成员表列)变量表列:
(二)共用体变量的引用方式:
(三)共用体类型数据的特点
(四)共用体类型变量的应用
第九节 枚举类型
枚举类型变量的定义及特点
第十节 用 typedef 定义类型
用 typedef 定义变量的方式
三、考核知识点
(一)结构体
(二)用指针处理链表
(三)共用体
四、考核要求
(一)结构体:1.掌握定义结构体类型变量的方法
2.掌握结构体类型变量的引用
3.掌握结构体变量的初始化
4.掌握结构体数组
5.掌握指向结构体类型数据的指针
(二)用指针处理链表:1.掌握建立链表的方法
2.掌握输出链表的方法
3.掌握对链表的删除操作
4.掌握对链表的插入操作
(三)共用体:1.掌握共用体的概念;2.掌握共用体变量的引用方式;3.掌握共用体数据类型的特点
(四)枚举类型:掌握枚举类型的定义方式及特点
(五)typedef 类型:了解typedef 定义类型的方式
五、重点、难点
(一)结构体数组及指向结构体类型数据的指针
(二)链表的操作
第十一 章位运算
一、学习目的和要求
通过本章的学习,掌握数值的三种表示方法:原码、反码、补码;掌握位运算符的含义及所实现的功能,了解位段的内涵。
二、考试内容
第一节 概述
(一)原码、反码、补码的定义及正负数用原码、反码、补码的表示形式。
第二节 位运算符
(一)位运算符的种类:δ(按位与)、|(按位或)、∧(按位异或)、~(取反)、《(左移、)》(右移)
(二)各种位运算符所实现的功能
第三节 位段
(一)位段的定义:是以位为单位定义长度的结构体类型中的成员
(二)位段的应用
三、考核知识点
(一)正负数原码、反码、补码的表示形式
(二)位运算符所实现的功能
四、考核要求
(一)掌握正负数原码、反码、补码的表示形式
(二)掌握位运算符的种类及功能
(三)了解位段的定义及应用形式
五、重点、难点
(一)正、负数的反码、补码
(二)位运算符的具体应用形式及所实现的功能
第十二章 文件
一、学习目的和要求
通过本章的学习,掌握文件的定义、文件类型指针、文件的打开与关闭、文件的读写;了解文件的定位及出错的检测方法。
二、考试内容
第一节 C 文件概述
(一)文件的含义:存储在外部介质上数据的集合
(二)文件的存取方式:字符
第二节 文件类型指针
(一)定义文件型指针变量的方式:FILE * fp;
第三节 文件的打开与关闭
(一)文件的打开(fopen函数)通用方式:FILE * fp;
fp=fopen(文件名,使用文件方式)
(二)使用文件方式及含义
(三)打开文件的常用方法:
if((fp=fopen("filel","r"))=NULL)
{printf("cannot open this file\n");
exit(0);}
(四)文件的关闭的一般形式:fclose(文件指针);
第四节 文件的读写
(一)fputc 函数:1.fputc 函数的一般形式:fputc(ch,fp);2. fputc 函数的作用:把一个字符写到磁盘文件上
(二)fgetc 函数:1.fgetc 函数的调用形式:ch=fgetc(fp);
2.fgetc 函数的作用:从指定文件读入一个字符
(三)fputc 函数和fgetc函数的应用
(四)fprintf 函数的一般调用方式:fprintf(文件指针,格式字符串,输出表列)
(五)fscanf 函数的一般调用方式:fscanf(文件指针、格式字符串、输出表列)
第五节 文件的定位
(一)rewind 函数的作用:使位置指针重新返回文件的开头
(二)fseek 函数的作用:改变文件的位置指针
(三)fseek 函数的调用方式:fseek(文件类型指针.位移量,起始点)
第六节 出错的检测
(一)ferror 函数的一般调用方式:ferror(fp);
(二)clearerr 函数的作用:使文件错误标志和文件结束标志置为0。
三、考核知识点
(一)文件的打开与关闭
(二)fputc函数;fgetc函数、fprintf函数、fscanf函数
四、考核要求
(一)掌握文件的定义及文件的存取单位;
(二)掌握文件类型指针变量的定义力式;
(三)掌握文件的打开与关闭的方法;
(四)掌握fputc函数、fgetc函数、fprintf函数及fscanf函数
(五)了解文件的定位函数及检测文件出错的函数
五、重点、难点
(一)文件的打开与关闭
(二)fputc、fgetc、fprintf、fscanf 函数的用法
三、有关说明与实施要求
为了使本大纲的规定在个人自学和考试命题中得到贯彻和落实,特对有关问题作如下说明,并提出具体实施要求。
1。考核目标的说明:为使考试内容具体化和考试要求标准化,本大纲在列出各章节考试内容的基础上,对各章规定了考核目标、考核知识点、考核要求及重点难点。明确考核目标,使自学应考者能明确考试内容和要求,可有目的地系统学习教材,使考试命题明确考核范围,更准确地安排试题的难易度。
本大纲中要求掌握的内容是考试必考内容,要求了解的内容不作考试要求。
2.学习方法指导:
(1)认真阅读教材:阅读教材是自学的基本环节。阅读教材前,应先了解自学考试大纲中的学习目的和要求、考核知识点、考核要求及考试重点、难点。理解每一章的基本要点,然后系统地读书。读书过程中应当记忆基本概念、语法,并阅读教材中的例程序,弄懂编写程序的步骤和基本方法。
(2)做好读书笔记:写读书笔记是巩固所学知识的一种重要方法,阅读教材是理解课程内容的基础,要切实深刻地理解掌握课程内容,必须把读书与思考结合起来,通过写读书笔记用自己的语言表达出来变成自己的东西。
(3)认真作练习:在阅读教材后,应按照教材上的范例,多做语法练习题及编程题和上机调试程序,把C语言的语法和C程序的设计方法在平时的练习中逐步消化。
3.关于自学教材:自学教材为《C程序设计》,谭浩强主编,清华大学出版社1991年以后版本
4.考试时间长度:120分钟
5.考试的题型:填空题、选择题、分析程序输出结果题、完善程序题
6.题型举例及解答要求:
一、填空题:
1.将下列表达式(1)-(6)作为printf("%x",--)的第二个参数,请把相应的输出填在( )中。(int a=5;)
(1)-1( ) (2)!a∧a( )
(3)a‖O( ) (4)17δ20( )
(5)a<<5( ) (6)sizeof(int)( )
解答要求:在认真阅读上述内容的基础上,在每个括号中填入一个答案。
二、选择题:在下列备选答案中,先选出一个正确答案,将其序号填在题后的括号内。
1.下列说明中正确的是( )
A、char a,b;*c; B、char a;*b,c;
C、char *a,b,c; D、char a,b,*c;
2.以下程序的输出是( )。
main( ){printf("%d",NULL);}
A、'\O' B、1 C、O D、无定义
三、分析下列程序的输出结果:阅读程序后,在输出结果后的括号内填入正确的答案。
1.long fun(int n)
{long s;
if(n= =‖n= =2) S=2;
else s=n+fun(n-1);
return(s);}
main( )
{long x;
x=fun(4);
printf(″%ld ″,x);}
输出结果:( )
{long s;
if(n= =‖n= =2) S=2;
else s=n+fun(n-1);
return(s);}
main( )
{long x;
x=fun(4);
printf(″%ld ″,x);}
输出结果:( )
四、完善下列程序:在程序中标有数码的空缺中填入正确的答案,每空只能填写一条。
#define SIZE 12
main( )
{int a[SIZE],i,j,t;
for(i=o;i<SIZE;(++) scanf(″%d″, (1) );
i=o;j= (2) ;
while(i<j) {t=a[i]; (3) ; (4) ;i++;j (5) ;}
for(i=o;i<SIZE;i++)
printf(″%3d″,a[i]);printf(″ ″);}
main( )
{int a[SIZE],i,j,t;
for(i=o;i<SIZE;(++) scanf(″%d″, (1) );
i=o;j= (2) ;
while(i<j) {t=a[i]; (3) ; (4) ;i++;j (5) ;}
for(i=o;i<SIZE;i++)
printf(″%3d″,a[i]);printf(″ ″);}
江苏自考助学报名预约
我已阅读并同意《用户隐私条款》
上一篇:03614 采购法务与合同管理(高纲1600)
下一篇:02039 物理教育学
近期更新
- 江苏自考考试大纲:04723投资银行理... 10-31
- 江苏省自考考试大纲28778心理档案建... 07-19
- 江苏省自考考试大纲27186制单结汇与... 07-19
- 江苏省自考08413数据库原理与应用考试大纲 07-19
- 江苏省高等教育自学考试大纲06637园... 07-19
- 江苏省高等教育自学考试大纲06071内... 07-19
- 江苏省高等自学考试大纲05082波谱学 07-19
- 江苏省高等教育自学考试大纲30456 ... 08-13
- 江苏省高等教育自学考试大纲29945 ... 08-13
考试资讯
- 2024年10月南通自考报名时间已出! 08-30
- 2024年10月苏州自考报名时间已出! 08-30
- 2024年10月常州自考报名时间已出! 08-30
- 2024年10月徐州自考报名时间已出! 08-29
- 2024年10月无锡自考报名时间已出! 08-29
- 2024年10月南京自考报名时间已出! 08-29
- 无锡自考报名缴费如何缴? 08-22
- 无锡自考报名专业和课程如何选择? 08-22
- 无锡自考报名注册需要注意什么? 08-22
扫一扫加入微信交流群
与其他自考生一起互动、学习探讨,提升自己。
扫一扫关注微信公众号
随时获取自考信息以及各类学习资料、学习方法、教程。
扫描小程序选择报考专业
进入在线做题学习
查看了解自考专业
查询最新政策公告
进入历年真题学习