c语言程序设计各章重点与难点分析
- 格式:docx
- 大小:19.96 KB
- 文档页数:2
《C语言程序设计》课程教学大纲一、课程教学目的本课程系统研究C语言的基本知识和基本语法,较好地训练学生解决问题的逻辑思维能力以及编程思路和技巧,使学生具有较强的利用C语言编写软件的能力,为培养学生有较强软件开发能力打下良好基础。
二、课程教学要求通过本课程的研究,应熟练掌握C语言中的基本知识、各种语句及程序控制结构,熟练掌握C语言的函数、数组、指针、结构体、链表等数据结构的基本算法;并能熟练地运用C语言进行结构化程序设计;具有较强的程序修改调试能力;具备较强的逻辑思维能力和独立思考能力。
三、课时分配本学科计划学时为246学时,其中理论与实训课时比例为7:3.四、课程教学重、难点课程教学重点:掌握C语言变量类型及不同类型常量的表示;标准的输入输出函数的使用;运算符及常用数学函数的使用;控制流程、数组和指针的使用;结构体、链表的构造使用;函数结构、函数参数传递及递归等方面的知识;基本的文件操作。
难点:指针的使用、结构体链表的构造和使用及函数的参数传递。
五、课程教学方法(或手段)本课程实践性较强,故采用讲授和上机操作相结合的方式进行教学。
六、课程教学内容第一章C言语概述1.教学内容(1)编程历史的回顾、程序设计介绍(过程式,面向对象,函数式,逻辑式);(2) C语言的历史背景、特点;(3) C言语源步伐的格式和步伐结构;(4) C程序的上机步骤。
2.重、难点提醒(1)重点:掌握简单的C程序格式,包括main()函数、数据说明、函数开始和结束标志等;(2)难点:编程入门和对言语的理解。
第二章算法1.教学内容(1)算法的概念及特征;评价算法优劣的方法(时间和空间);(2)简单算法举例;(3)算法的表示(自然语言、流程图、N-S流程图);(4)结构化步伐设计的基本思想及基本步调。
2.重、难点提醒(1)重点:算法流程图三种基本结构(以后各章研究中使用流程图强化对步伐的理解);(2)难点:算法概念和对结构化步伐设计思想的理解。
第一章C语言及程序设计概述本章要求:了解C语言的特点、C语言与其它高级语言相比有什么异同;了解C程序在PC机上的建立、编译和运行过程;了解C语言程序设计思想的基本篇;重点:①C语言的主要特点;②C语言在PC机上的运行过程及上机操作过程;③常用算法的应用难点:无一、C语言概述C语言是目前国际上在各种计算机运行较为广泛流行的一种高级语言.主要表现为:C语言:适合于作为系统描述语言—-可用来写系统软件。
具有高级语言的特点,又有低级语言(汇编语言)的特点。
C语言:是AT&T贝尔实验室的Dennis Ritchie在1972年发明的。
C语言:是在B语言的基础上发展起来的.(ALGOL 60)C语言:最早开始是用于UNIX操作系统。
(C语言和UNIX是相辅相成的)DBASE 、Microsoft Exel 、 Microsoft Word、PC—DOS等,则是用C语言加上若干汇编子程序编写的。
1983年:——制定的新标准,称为(美国国家标准化协会)ANSI C1987年:—-Turbo C1.0 (Borland) 1988年:TC 1.5(图形和文本窗口)1989年:——Turbo C2。
0 (DOS操作系统、查错、Tiny模式生成com文件)1991年:—-Turbo C++(3.0) 支持windows 3.X说明:Turbo C语言可以在程序的任何地方嵌入汇编代码,提高速度,可以直接使用存储器和寄存器。
二.C语言的特点1.语言简洁、紧凑、使用方便、灵活C语言:——共有32个关键字,9种控制语句;程序书写自由,主要用小写字母表示;2.运算符丰富C语言的运算符包含的范围很广泛,共有34种运算符;即:把括号、赋值、强制类型转换都作为运算符处理3.有丰富的数据类型整型、实型、字符型、数据类型、指针类型、结构体类型、共用体(联合)类型等。
实现复杂的数据结构(链表、树、栈、图)的运算。
4.具有结构化的功能,用函数作为程序模块,实现程序的模块化5.语法限制不太严格,程序设计自由度大.(放宽了语法检查)例:1)对数组下标越界不作检查,由程序编写者自己保证程序的正确;2)整型数据、字符型数据、逻辑型数据可以通用。
计算机等级考试二级C语言重点难点分析与题解第1章应试指南第2章数据结构与算法本章节主要考查算法的基本概念、基本的数据结构及其基本操作、查找和排序算法。
本章的内容在历次试题中所占的比例约为11.2%,都是以选择题和填空题的形式出现的。
本章历次试题分数分布如表2-1所示。
从表2-1中我们可以看出,算法的基本概念、数据结构的定义、栈和树几乎是每次必考的知识点;查找和排序基本上每次有一道试题;线性表、队列和线性链表很少单独出题,但经常与其它知识点结合出题。
本章涉及知识点分值在历次试题中比重如图2-1所示。
2.1 算法的基本概念从图2-1可以看出,该节知识点所占试题比重为18%,属于重点考查对象,基本上每次必考,主要考查算法的定义和对算法复杂度的理解。
历次试题分值在0-4分之间波动,其变化趋势如图2-2所示。
2.1.1 考点1:算法的定义算法是对一个问题求解步骤的一种描述,是求解问题的方法,它是指令的有限序列,其中每条指令表示一个或者多个操作。
一般来说,一个算法具有以下5个主要的特征。
(1)有穷性:一个算法(对任何合法的输入)在执行有穷步后能够结束,并且在有限的时间内完成。
(2)确定性:算法中的每一步都有确切的含义。
(3)可行性:算法中的操作能够用已经实现的基本运算执行有限次来实现。
(4)输入:一个算法有零个或者多个输入,零个输入就是算法本身缺定了初始条件。
(5)输出:一个算法有一个或者多个输出,以反映出数据加工的结果。
例2.1.1 问题处理方案的正确而完整的描述称为______。
[2005年4月填空第5题]答案:算法例2.1.2 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是()。
A.有零个或多个输入 B.有零个或多个输出C.有穷性 D.可行性答案:B例2.1.3 算法具有5个特性,以下选项中不属于算法特性的是()。
A.有穷性 B.简洁性 C.可行性 D.确定性答案:B第3章程序设计基础本章主要考查程序设计的一些基本知识,比如程序设计的方法与风格、结构化程序设计与面向对象程序设计的基本思想。
《C语言程序设计》教学大纲及复习重点课程名称:C语言程序设计适用专业:2016级计算机应用技术(专科)2016级计算机科学与技术(专升本函授)、计算机应用技术(专科函授)辅导教材:《C语言程序设计》钟志水周鸣争主编电子科技大学出版一、本课程的地位、任务和作用本课程是计算机科学与技术、计算机应用技术等各专业的系定必修课,通过本课程的学习可以使学生掌握结构化程序设计的方法,确立程序设计的思维方式,培养和提高学生的应用程序开发能力,并为计算机软件技术基础、数据结构、软件工程、C++、嵌入式系统及应用、计算机网络等后续课程的学习打下基础。
二、本课程的相关课程本课程的先修课程为大学计算机基础。
通过对大学计算机基础的学习,可以使学生理解计算机工作的基本原理和计算机语言的一些基本概念,有助于编程思想的培养;另一方面为学生上机实践提供相应支持。
三、本课程的基本内容第1章C语言概述C语言的发展过程及特点;C语言程序的基本结构;算法及其描述;C语言字符集、标识符与关键字;C程序的上机步骤。
第2章数据类型与运算C的数据类型;常量与变量;整型数据;实型数据;字符型数据;运算符和表达式;不同类型数据间的混合运算。
第3章顺序结构程序设计C语言的基本语句;数据输入与输出;顺序结构程序设计举例。
第4章选择结构程序设计关系运算;逻辑运算;if语句;switch 语句;选择结构程序举例第5章循环结构程序设计while 语句;do-while语句;for语句;转移语句;循环的嵌套;循环结构程序举例及综合三种结构编程。
第6章数组一维数组的定义、引用、初始化;一维数组程序举例;二维数组的定义、引用、初始化;二维数组程序举例;字符数组的定义、引用、初始化;字符串处理函数;字符数组应用举例;常见算法讲解。
第7章函数与编译预处理函数的定义;函数调用的形式与方式;函数的嵌套与递归调用;变量的作用域;变量的存储方式;内部函数和外部函数;编译预处理。
C语言程序设计谭浩强(第四版)期末复习重点第一章程序设计和C语言1.1.什么是计算机程序程序:一组计算机能识别和执行的指令。
只要让计算机执行这个程序,计算机就会自动地、有条不紊地进行工作..计算机的一切操作都是由程序控制的,离开程序,计算机将一事无成。
1.2什么是计算机语言计算机语言:人和计算机交流信息的、计算机和人都能识别的语言。
计算机语言发展阶段:机器语言(由0和1组成的指令)符号语言(用英文字母和数字表示指令)高级语言(接近于人的自然语言和数学语言)面向过程的语言(非结构化的语言、结构化语言);面向对象的语言1.3C语言的发展及其特点C语言是一种用途广泛、功能强大、使用灵活的过程性编程语言,既可用于编写应用软件,又能用于编写系统软件。
因此C语言问世以后得到迅速推广。
C语言主要特点:语言简洁、紧凑,使用方便、灵活。
(只有37个关键字、9种控制语句;程序书写形式自由,源程序短)运算符丰富。
(34种运算符;把括号、赋值、强制类型转换等都作为运算符处理;表达式类型多样化)数据类型丰富。
(包括:整型、浮点型、字符型、数组类型、指针类型、结构体类型、共用体类型;C99又扩充了复数浮点类型、超长整型、布尔类型;指针类型数据,能用来实现各种复杂的数据结构的运算。
)具有结构化的控制语句。
(如ifele语句、while语句、dowhile语句、witch语句、for语句用函数作为程序的模块单位,便于实现程序的模块化;C语言是完全模块化和结构化的语言)语法限制不太严格,程序设计自由度大。
(对数组下标越界不做检查;对变量的类型使用比较灵活,例如,整型量与字符型数据可以通用;C语言允许程序编写者有较大的自由度,因此放宽了语法检查)允许直接访问物理地址,能进行位操作,可以直接对硬件进行操作。
(C语言具有高级语言的功能和低级语言的许多功能,可用来编写系统软件;这种双重性,使它既是成功的系统描述语言,又是通用的程序设计语言)用C语言编写的程序可移植性好。
《C语言程序设计教程》第一章教案一、教学目标1. 让学生了解C语言的发展历程和特点。
2. 掌握C语言的基本语法和结构。
3. 学会使用C语言编写简单的程序。
二、教学内容1. C语言的发展历程和特点2. C语言的基本语法和结构3. C语言程序的基本框架4. 简单的C语言程序示例三、教学方法采用讲授法、示例法、练习法相结合的方式进行教学。
四、教学步骤1. 引入话题:介绍C语言的发展历程和特点。
2. 讲解C语言的基本语法和结构,包括数据类型、变量、常量、运算符、表达式等。
3. 讲解C语言程序的基本框架,包括主函数、变量定义、函数体等。
4. 通过示例程序,让学生了解和掌握C语言编程的基本方法。
5. 布置练习题,让学生课后巩固所学知识。
五、教学评价通过课堂提问、练习题、课后作业等方式对学生的学习情况进行评价。
《C语言程序设计教程》第二章教案一、教学目标1. 让学生掌握C语言的运算符和表达式。
2. 学会使用C语言进行基本的输入输出操作。
3. 了解C语言的控制语句,包括条件语句和循环语句。
二、教学内容1. C语言的运算符和表达式2. C语言的输入输出操作3. C语言的控制语句三、教学方法采用讲授法、示例法、练习法相结合的方式进行教学。
四、教学步骤1. 复习C语言的基本语法,引入运算符和表达式的概念。
2. 讲解各种运算符的用法和优先级,通过示例让学生掌握运算符和表达式的使用。
3. 讲解C语言的输入输出操作,包括printf函数和scanf函数的使用。
4. 讲解C语言的控制语句,包括if语句、switch语句、for循环、while循环等。
5. 通过示例程序,让学生掌握控制语句的使用方法。
6. 布置练习题,让学生课后巩固所学知识。
五、教学评价通过课堂提问、练习题、课后作业等方式对学生的学习情况进行评价。
《C语言程序设计教程》第三章教案一、教学目标1. 让学生掌握C语言的函数概念和作用。
2. 学会自定义函数,并了解函数的调用方式。
《C语言程序设计》教案第一章:C语言概述1.1 C语言的发展历史1.2 C语言的特点1.3 C语言的应用领域1.4 集成开发环境的使用第二章:C语言基础语法2.1 数据类型2.1.1 整型2.1.2 浮点型2.1.3 字符型2.2 变量和常量2.2.1 变量的声明和使用2.2.2 常量的定义和使用2.3 运算符与表达式2.3.1 算术运算符2.3.2 关系运算符2.3.3 逻辑运算符2.3.4 赋值运算符2.3.5 条件运算符2.3.6 逗号运算符2.4 输入输出函数2.4.1 标准输入输出函数2.4.2 格式化输入输出函数第三章:控制语句3.1 顺序结构3.2 选择结构3.2.1 if语句3.2.2 switch语句3.3 循环结构3.3.1 while循环3.3.2 do-while循环3.3.3 for循环3.3.4 循环控制语句第四章:函数与编译预处理4.1 函数的定义和调用4.1.1 函数的声明4.1.2 函数的实现4.1.3 函数的调用4.2 变量的作用域4.2.1 全局变量4.2.2 局部变量4.3 静态变量和动态内存分配4.3.1 静态变量的使用4.3.2 动态内存分配函数4.4 编译预处理指令4.4.1 宏定义4.4.2 文件包含4.4.3 条件编译第五章:数组和字符串5.1 一维数组5.1.1 数组的声明和初始化5.1.2 数组的访问和操作5.2 二维数组5.2.1 二维数组的声明和初始化5.2.2 二维数组的访问和操作5.3 字符串5.3.1 字符串的概念5.3.2 字符串的存储结构5.3.3 字符串的操作函数第六章:指针6.1 指针的概念6.2 指针的声明和赋值6.3 指针与数组6.3.1 指向数组的指针6.3.2 指针数组6.3.3 数组的指针6.4 指针与函数6.4.1 指针作为函数参数6.4.2 返回指针的函数6.5 指针与动态内存分配6.5.1 动态内存分配的概念6.5.2 动态内存分配函数6.5.3 内存泄漏与释放第七章:结构体、联合体和枚举7.1 结构体的定义和使用7.1.1 结构体的声明7.1.2 结构体的初始化7.1.3 结构体的访问7.2 联合体的定义和使用7.2.1 联合体的声明7.2.2 联合体的初始化7.2.3 联合体的访问7.3 枚举类型的定义和使用7.3.1 枚举类型的声明7.3.2 枚举类型的访问第八章:文件操作8.1 文件的概念8.2 文件打开与关闭8.2.1 文件打开函数8.2.2 文件关闭函数8.3 文件的读写操作8.3.1 文件读取函数8.3.2 文件写入函数8.4 文件指针的定位8.4.1 文件位置指针8.4.2 文件定位函数8.5 文件操作的错误处理第九章:标准库函数9.1 标准输入输出库函数9.2 字符串处理库函数9.3 数学计算库函数9.4 日期和时间库函数9.5 高级输入输出库函数第十章:编程实践与案例分析10.1 数据结构的应用10.1.1 链表的实现10.1.2 栈和队列的应用10.2 算法设计与分析10.2.1 排序算法10.2.2 搜索算法10.3 数据库编程10.3.1 数据库连接10.3.2 数据库操作10.4 网络编程10.4.1 套接字编程基础10.4.2 网络通信协议10.5 实际项目案例分析10.5.1 项目需求分析10.5.2 项目设计与实现10.5.3 项目测试与优化重点和难点解析一、C语言的发展历史和特点重点关注C语言的历史背景和设计初衷,以及其为何能在多年后仍然被广泛使用。
《C语言程序设计教程》全册教案完整版教学设计第一章:C语言概述1.1 教学目标让学生了解C语言的历史背景和发展趋势。
让学生掌握C语言的特点和基本语法。
让学生了解C语言的应用领域。
1.2 教学内容C语言的历史背景和发展趋势。
C语言的特点:简洁、高效、灵活、跨平台。
C语言的基本语法:变量、数据类型、运算符、表达式。
C语言的应用领域:操作系统、嵌入式系统、游戏开发等。
1.3 教学方法采用讲解和案例相结合的方式,让学生了解C语言的历史背景和发展趋势。
通过举例和练习,让学生掌握C语言的基本语法和特点。
通过实际案例和项目,让学生了解C语言的应用领域。
1.4 教学评估通过课堂提问和讨论,了解学生对C语言的认知程度。
通过课后练习和项目,评估学生对C语言基本语法的掌握情况。
第二章:数据类型、运算符和表达式2.1 教学目标让学生掌握C语言的数据类型:整型、浮点型、字符型等。
让学生掌握C语言的运算符:算术运算符、关系运算符、逻辑运算符等。
让学生掌握C语言的表达式:赋值表达式、逻辑表达式、算术表达式等。
2.2 教学内容C语言的数据类型:整型、浮点型、字符型等。
C语言的运算符:算术运算符、关系运算符、逻辑运算符等。
C语言的表达式:赋值表达式、逻辑表达式、算术表达式等。
2.3 教学方法通过讲解和案例相结合的方式,让学生掌握C语言的数据类型。
通过举例和练习,让学生掌握C语言的运算符和表达式。
2.4 教学评估通过课堂提问和讨论,了解学生对C语言数据类型的认知程度。
通过课后练习和项目,评估学生对C语言运算符和表达式的掌握情况。
第三章:控制语句3.1 教学目标让学生掌握C语言的控制语句:条件语句、循环语句等。
3.2 教学内容C语言的控制语句:条件语句、循环语句等。
3.3 教学方法通过讲解和案例相结合的方式,让学生掌握C语言的控制语句。
3.4 教学评估通过课堂提问和讨论,了解学生对C语言控制语句的认知程度。
通过课后练习和项目,评估学生对C语言控制语句的掌握情况。
章重点难点
第 1 章
程序设计基础
知识
C 语言的特点和程序结构计算机内存模型
第 2 章
数据类型、运算符与表达式常用数据类型;
变量声明;
常用运算符与表达式;
1 )变量数据类型的选定;
2 ) ++ 、 -- 、 % 运算符的
使用;
3 )表达式中的类型转换;
第 3 章
简单的 C 程序设计字符输入输出函数;
格式输入输出函数;
按指定格式进行输入输出操作时
格式控制符与变量的匹配;
第 4 章
程序的控制结构基本控制结构;
基本控制语句;
累加、累乘、统计等算
法;
结构化程序设计的基本思
想;
1 )设计累加和累乘算法,寻
找累加项或累乘项的构成规律;
2 )循环语句在控制流程时的区
别和联系;
3 )条件语句的嵌套和循环语句
的嵌套;
4 ) break 语句和 continue
语句的作用及区别;
第 5 章函数函数间的数据传递方式;
参数结合规则;
变量的作用域和存储类
别;
模块化程序设计方法
1 )对函数“ 单向值传递”
的参数传递方式的理解;
2 )变量的作用域;
3 )变量的存储类别;
第 6 章数组向函数传递一维和二维数
组;用字符数组表示字符
串;
字符串处理函数;
1 )对数组名特殊含义的理解;
2 )字符数组与其它数组的区
别;
3 )字符串处理函数在字符串处
理中的应用;
第 7 章指针指针的概念;
利用字符指针存取字符
串;
指针与数组的关系;
变量的指针作为函数参
数;
1 )对指针数据类型的理解;
2 )二维数组的地址和指针概
念;
3 )字符数组和字符指针的区别
与联系;
4 )指向数组的指针和指针数组
的区别;
第 8 章
结构体和共用体结构体和共用体类型的定
义和应用场合;
1 )嵌套结构体的成员引用、结
构体指针变量的成员引用;
结构体变量、结构体数组和结构体指针作函数参数;2 )向函数传递结构体指针的方法;
3 )对结构体和共用体占用字节数的理解;
4 )对共用体的共用内存的理解;
第 9 章
函数的高级应用递归函数;
返回指针值的函数;
函数指针
1 )对递归函数调用过程的理
解;
2 )对函数指针的概念的理解;
3 )函数指针作函数参数;
第 10 章文件操作文件的概念;
文件的使用;
1 )对流的概念的理解;
2 )文件读写函数的区别及其灵
活运用;
3 )文件操作的错误处理;。