硕士研究生考试初试C语言程序设计科目考试大纲
一、考查目标
1. 了解程序设计、算法等概念,掌握结构化程序设计的要求以及顺序、分支和循环三种基本结构;
2. 了解C语言源程序的基本构成。熟练掌握C语言的数据类型、常量和变量的使用以及各种运算符和表达式的使用;
3. 熟练掌握基本输入输出函数的格式和用法,了解C语言中语句的分类,学会顺序结构程序设计;
4. 熟练掌握关系运算和逻辑运算;熟练掌握if语句,switch语句;学会选择结构程序设计;
5. 熟练掌握while 语句,do-while 语句,for 语句,break 语句,continue 语句格式和执行过程;学会循环结构程序设计;
6. 熟练掌握标准函数的调用、用户函数的定义、调用和说明,函数的参数和返回值。了解带参数主函数、函数的嵌套调用以及函数的递归调用;了解用户标识符的作用域与存储类别;
7. 掌握编译预处理命令的使用;
8. 熟练掌握数组的定义及其在程序设计中的应用;
9. 掌握指针变量的定义和用法,指针与函数的关系,指针与数组的关系及函数之间对数组的引用;熟练掌握字符串的处理;
10. 理解结构体、共用体的定义和用法以及动态存储分配;学会typedef的用法;
11. 理解文件及其应用。
二、考试形式与试卷结构
(一)试卷满分及考试时间
考试满分150分,考试时间3小时。
(二)答题方式
答题方式为闭卷、笔试。
(三)试卷内容结构
数据描述和基本操作(20分)
C程序流程设计(40分)
模块化程序设计(25分)
指针(25分)
结构体与共用体(20分)
文件(20分)
(四)试卷题型结构
分析设计题(60分)
综合应用题(90分)
三、考查内容及要求
(一)C语言的发展过程
1.考核知识点
1)C语言出现的历史背景;2)C语言的特点;3)简单的C语言程序介绍;4)运行C程序的步骤与方法。
2.考核要求
1) 了解C语言的发展历史和特点;2) 理解C程序的构成及C函数的组成;3) 掌握C程序的上机步骤。
(二)程序的灵魂——算法
1.考核知识点
1) 算法的概念;2) 简单算法举例;3) 算法的特性;4) 怎样表示一个算法;5) 结构化程序设计方法。
2.考核要求
1) 了解算法的不同表示方法;2) 理解算法的概念和特性;3) 理解算法的 N-S 流程图表示法;4) 掌握算法的传统流程图表示法和结构化程序设计方法。
(三)数据类型、运算符与表达式
1.考核知识点
1) C 语言的数据类型;2) 常量与变量;3) 整型数据;4) 浮点型数据;5) 字符型数据;6) 变量赋初值;7) 各类数值型数据间的混合运算;8) 算术运算符和算术表达式;9) 赋值运算符和赋值表达式;10) 逗号运算符和逗号表达式。
2.考核要求
1) 理解 C 语言的各种数据类型、运算符;2) 理解表达式运算中运算符的优先级和结合性;3) 掌握各种基本数据类型的常量、变量的表示方法;4) 掌握常用运算符(算术运算符、赋值运算符)的用法。
(四)最简单的 C 程序设计
1.考核知识点
1) C 语句概述;2) 赋值语句;3) 数据输入输出的概念及在 C 语言中的实现;4) 字符数据的输入输出;5) 格式输入与输出。
2.考核要求
1) 了解各种类型的 C 语句;2) 理解程序执行的顺序性;3) 掌握数据输入/输出的函数的使用方法。
(五)选择结构程序设计
1.考核知识点
1) 关系运算符和关系表达式;2) 逻辑运算符和逻辑表达式;3) if 语句;4) switch 语句。
2.考核要求
1) 理解关系运算和逻辑运算及用法;2) 掌握 if 语句三种形式和 switch 语句的用法;3) 理解 if 语句和 switch 语句的嵌套;4) 掌握分支结构程序设计的基本方法。
(六)循环控制
1.考核知识点
1) 用 while 语句实现循环;2) 用 do…while 语句实现循环;3) 用 for 语句实现循环;4) 循环的嵌套;5) 几种循环的比较;6) break 语句和 continue 语句
2.考核要求
1) 理解循环的要素和控制方法;2) 掌握 WHILE 语句、DO…WHILE 语句的用法;3) 熟练掌握 FOR 语句的用法;4) 掌握循环的嵌套;5) 理解 break 语句和 continue 语句的用法。
(七)数组
1.考核知识点
1) 一维数组的定义和引用;2) 二维数组的定义和引用;3) 字符数组。
2.考核要求
1) 掌握一维数组和二维数组的定义和引用;2) 掌握字符数组的概念、定义与使用方法;3) 掌握常用字符串处理函数的功能与用法;4) 掌握应用一维和二维数组进行程序设计的一般方法与典型算法。
(八)函数
1.考核知识点
1) 函数定义的一般形式;2) 函数参数和函数的值;3) 函数的调用;4) 函数的嵌套调用;5) 函数的递归调用;6) 数组作为函数参数;7) 局部变量和全局变量;8) 变量的存储类别。
2.考核要求
1) 理解函数的功能;2) 掌握函数定义和调用;3) 理解函数调用中的值传递;4) 掌握变量的作用域和存储类别。
(九)预处理命令
1.考核知识点
1) 宏定义;2) “文件包含”处理;3) 条件编译。
2.考核要求
1) 了解“文件包含”处理和条件编译的几种形式;2) 理解预处理的概念;3) 掌握宏定义的方法。
(十)指针
1.考核知识点
1) 地址和指针的概念;2) 变量的指针和指向变量的指针变量;3) 数组与指针;4) 字符串与指针;5) 指向函数的指针;6) 返回指针值的函数;7) 指针数组和指向指针的指针;8) 有关指针的数据类型和指针运算。
2.考核要求
1) 了解指向函数的指针;2) 了解返回指针值的函数;3) 了解指针数组和指向指针的指针的概念以及带参数的 main()函数;4) 理解指针的概念;5) 掌握指针变量的定义和应用;6) 掌握指针与字符串的关系;7) 掌握指针变量作为函数参数的用法。
(十一)结构体与共用体
1.考核知识点
1) 定义结构体类型变量的方法;2) 结构体变量的引用;3) 结构体变量的初始化;4) 结构体数组;5) 指向结构体类型数据的指针;6) 共用体;7) 枚举类型;8) 用 typedef 定义类型。
2.考核要求
1) 了解结构体数组的定义和数组元素的引用;2) 理解结构体和共用体体的含义;3) 掌握结构体与共用体类型变量的定义、初始化及引用。
(十二)文件
1.考核知识点
1) C 文件概述;2) 文件类型指针;3) 文件的打开与关闭;4) 文件的读写;5) 文件的定位;6) 出错的检测;7) 文件输入输出。
2.考核要求
1) 了解文件的概念;2) 了解文件类型指针的定义和含义;3) 了解文件定位的操作及相关的标准函数;4) 了解出错检测函数的作用;5) 掌握文件操作的相关标准函数。
四、考试用具说明
考生应自带必需的文具,如2B铅笔、黑色字迹钢笔、圆珠笔或签字笔、直尺、计算器(最好含有复数运算功能)。