课程一:《C语言程序设计》考试大纲
一、考试总体要求
1.掌握C语言的基本语法(数据的表示形式及其运算)、程序结构及对应语句应用、函数定义及应用、数组定义及应用、指针变量应用等知识点;基本的程序设计过程和技巧及思维;增强学生自身的综合素养,具备良好的职业道德和持续发展意识。
2.具备严谨的逻辑和计算思维能力;能够查阅程序设计相关算法文献,将基本原理和程序设计技巧应用到问题分析过程中,初步具备程序设计解决实际工程问题能力;确立科学的价值观念、具有较强的工程素养。
二、考试知识点
1.数据类型及其应用
包括数据类型和存储类别及其对应应用。
(1)基本类型
基本类型包括整型、实型和字符型。
①常量
掌握整型常量、实型常量、字符类型常量、字符串、符号常量的各种表示形式的格式和使用。其中,包括整型常量和实型常量的十进制、八进制和十六进制的表示形式,长整型常量和无符号型常量的表示形式,实型常量的浮点表示法和指数记数法,转义字符、常用符号常量的含义(如NULL、EOF等)。
②变量
掌握各种类型变量的定义方式和初始化格式。
(2)派生类型
派生类型包括数组类型、指针类型、结构体类型和共用体类型。熟练掌握派生类型变量的定义方式和初始化格式。
(2.1)数组类型
掌握一维和二维数组的定义和初始化、数组元素的引用。其中,包括一维字符数组和字符串、二维字符数组和字符串数组的定义和初始化以及数组元素的引用。
(2.2)指针类型
①掌握指针和地址的概念;
②掌握指针变量的定义和初始化,其中包括&和*运算;
③掌握指针变量的基本应用,其中包括通过指针引用一维数组元素、二维数组元素、字符和字符串;
④掌握指针数组、指向数组的指针;
⑤掌握指向函数的指针和返回指针值的函数;
⑥掌握内存的动态分配和void指针类型。
(2.3)结构体类型和共用体类型
①掌握结构体类型和共用体类型的类型定义;
②掌握结构体类型和共用体类型的变量的定义和初始化;
③掌握结构体类型和共用体类型的变量成员的引用和基本运算(比如:结构体类型、共用体类型的变量的内存存储字节数);
④理解结构体类型和共用体类型各自与数组、指针的基本关系和应用(比如:结构体类型指针、结构体类型数组的定义和变量的引用表示);
⑤理解链表的定义,掌握简单链表的建立和输出及遍历,了解插入和删除单向链表中的一个节点操作。
(3)枚举类型
①掌握枚举类型的类型定义;
②掌握枚举类型的变量的定义和初始化;
③掌握枚举类型的变量成员的引用和基本运算(比如:枚举类型的变量值)。
(4)空类型
掌握空类型的定义和使用。
(5)变量的存储类别、作用域和生存期
①掌握变量的存储类别:auto自动型、static静态型。
②掌握变量的作用域和生存期:包括全局变量和局部变量的定义和应用。
注意区分:自动局部变量和静态局部变量。
2.运算和语句结构
(1)基本运算
包括算术运算(含自增、自减操作)、关系运算、逻辑运算、条件运算、赋值运算。
①掌握各种运算符的含义和功能及表达式运算;
②掌握运算符的优先级和结合方向及规则;
③掌握隐式类型转换和强制类型转换。
(2)表达式
熟练掌握各类表达式的组成规则和计算过程。
(3)语句
①掌握表达式语句、空语句、复合语句;
②掌握数据的输入输出(scanf、printf、putchar、getchar)函数的格式和功能及应用;
③掌握简单控制语句(break、continue、return)的用法和功能;
④掌握选择结构语句(if、if嵌套、switch)的格式和功能;
⑤掌握循环结构语句(for、while、do...while)及其嵌套结构和应用。
3.函数
(1)函数结构
掌握main函数与其他函数之间的关系,包括标准库函数和自定义函数。
(2)函数的定义
①掌握函数定义的ANSI C格式和方法;
②掌握函数的参数(形式参数和实际参数)及参数传递,包括指针、数组作为函数的参数;
③掌握函数的返回值。
(3)函数的调用
①掌握函数调用的一般格式和方式及过程;
②掌握函数的嵌套调用和递归调用;
③掌握标准库函数的调用,函数的声明和函数原型。
常用数学函数:cos、sqrt、pow、exp、fabs、log、log10等;
常用字符函数:isalnum、isalpha、isdigit、islower、toupper等;
常用字符串函数:strcpy、strcmp、strcat、strlen等。
4.编译预处理和文件
(1)了解编译预处理的基本概念;
(2)了解宏定义;
(3)了解文件,包括文件的基本知识、文件的打开与关闭、文件的读写。
5.常用算法
以下算法针对本大纲中列出的各种数据结构。
(1)分类(排序)算法
掌握冒泡法、选择法、简单选择法等排序算法思想及相应算法实现的程序设计。
(2)检索(查找)算法
①无序数据序列的查找(见遍历算法);
②掌握有序数据序列的查找(二分法)算法思想及相应算法实现的程序设计。
(3)遍历算法
①掌握一维数组和二维数组的遍历算法思想及相应算法实现的程序设计;
②了解单向链表的遍历算法思想及相应算法实现的程序设计。
(4)了解简单的数值计算方法:如多项式函数的计算、牛顿迭代法
(5)掌握基本算法:如进制转换、迭代法(累和、累积)、递归法、辗转相除法、筛选法
三、考试设计方案(参考)
1.试卷结构
考试形式:笔试闭卷考试时长:100分钟卷面总分100分
2.试卷题型、分值比例、考核点或能力点
题型 分值比例 考核点或能力点
选择题 约20% 数据类型及其应用、语句结构、函数、数组和指针等知识点
分析计算题 约15% 运算和语句结构、函数、数组等知识点
程序阅读题 约15% 常用算法、函数、数组等实现程序设计和程序分析
程序应用题 约30% 运用数据类型及其应用、语句结构、函数、常用算法等知识点进行程序设计,解决实际工程问题
编程题 约20% 运用语句结构、函数、数组和指针等知识点实现程序设计过程和技巧