C语言程序设计教学大纲
(71022404)
一、说明
(一)课程性质
本课程是计算机科学与工程学院各个专业都要必修的一门专业基础课,是《数据结构》、《面向对象的程序设计(JA V A)》、《操作系统》等后续课程的基础,更是软件技术的基础,在整个教学体系中占有非常重要的地位。
(二)教学目的
通过本课程的学习,学会用C语言编写程序,能够读懂较复杂C语言程序,掌握相对复杂的C语言程序设计的技能,培养学生进行程序跟踪调试与改错的能力,更好地理解设计程序的思路。
通过本课程的学习,使学生理解计算机处理问题的思维方法,并养成良好的编程习惯,培养工程化的软件开发的思维,增强解决问题的编程实践能力,为将来从事软件开发、特别是接近硬件的底层软件开发,以及后继课程的学习和解决工程问题、科学技术问题奠定基础。
(三)教学内容
教学内容主要包括:C语言的基本概念、语法和基本用法;基本编程工具的使用;基本算法;结构化程序设计的基本方法;在Windows和Linux等不同操作系统环境下进行编写、编译、运行C语言程序的方法。编程递归函数
知识模块顺序和对应的内容、学时如下:
(四)教学时数
总共90学时,其中讲课学时:54,上机学时:36
(五)教学方式
板书讲解、多媒体演示、上机实验。
二、本文
理论部分
第1章概述
教学要点:
了解C语言的发展历程;理解学C语言的理由;了解软件的基本概念和软件开发的基本过程。
教学时数:
2学时
教学内容:
1.1 C语言发展史与学习C语言的理由(0.5学时)
1.2 软件开发与编程的概念(0.5学时)
软件的基本概念;软件开发的基本流程
1.3 运行C程序的步骤和编程集成环境(1学时)
简单的C语言程序举例;程序编写、编译、运行的过程;相关集成开发环境与工具,程序的开发环境(Visual studio和Code:Blocks)简介。
第2章C数据类型
教学要点:
掌握常量与变量的概念;掌握简单的屏幕输出方法;掌握基本数据类型的作用、特点、区别;理解计算变量或数据类型所占内存空间的字节数;掌握变量的赋值和赋值运算符。
教学时数:
2学时
教学内容:
2.1 常量、变量以及数据类型(0.7学时)
常量与变量的概念;变量的定义方法
2.2 不同数据类型的变量占内存空间大小的计算。(0.5学时)
2.3 简单的屏幕输出(0.5学时)
printf()函数以及相关头文件的简单使用。
2.4 变量的赋值和赋值运算符(0.3学时)
赋值运算符的使用方式和运算结果。
第3章运算符和表达式
教学要点:
掌握各种算术运算符、关系运算符、逻辑运算符,以及相关的表达式;理解复合赋值运算符;掌握增1和减1运算符;理解宏常量与const常量;了解自动类型转换;理解强制类型转换运算符;了解常用的标准数学函数。
教学时数:
2学时
教学内容:
3.1 算术、关系、逻辑运算符及其表达式(0.5学时)
各种算术运算符和表达式、关系运算符和表达式、逻辑运算符和表达式。
3.2 复合赋值运算符、增1、减1运算符(0.5学时)
3.3 宏常量与const常量(0.5学时)
3.4 类型转换(0.3学时)
3.5 常用的标准数学函数(0.2学时)
第4章键盘输入和屏幕输出
教学要点:
理解字符常量与转义字符,以及常用的输入/输出函数,包括;getchar()和putchar()函数、scanf()和printf()函数的使用。特别要给学生强调利用getchar()和scanf()函数读取字符输入时要注意的问题。
教学时数:
1学时
教学内容:
4.1 单个字符的输入和输出(0.5学时)
字符常量;字符的输入和输出,主要是getchar()和putchar()函数的使用。
4.2 数据的格式化屏幕输出和键盘输入(0.5学时)
第5章选择控制结构
教学要点:
要求学生掌握选择控制结构和条件语句,掌握算法的流程图描述方法;掌握单分支、双分支、多分枝选择控制结构,以及条件语句;掌握用于多路选择的switch语句。
教学时数:
4学时
教学内容:
5.1 算法的概念以及描述方法(1.5学时)
5.2 用于单分支、双分支控制的条件语句(1学时)
5.3 条件运算符与条件语句(0.5学时)
5.4 用于多路选择的switch语句(1学时)
第6章循环控制结构
教学要点:
掌握循环控制结构与循环语句;掌握嵌套循环;理解控制流程转移的跳转语句。
教学时数:
4学时
教学内容:
6.1 循环控制结构与循环语句(1学时)
6.2 计数控制与条件控制的循环(1学时)
6.3 流程的转移控制(1学时)
6.4 循环语句综合实例(1学时)
第7章函数
教学要点:
掌握函数定义与调用的方法;理解递归函数的设计;理解变量的作用域与存储类型。
教学时数:
4学时
教学内容:
7.1 函数的定义与调用(1学时)
7.2 递归函数(1学时)
7.3 变量的作用域和存储类型(1学时)
7.4 函数封装与模块化程序设计实例(1学时)
第8章数组
教学要点:
掌握数组的定义与数组元素的引用;重点介绍向函数传递数组的方法。
教学时数:
4学时
教学内容:
8.1 一维和二维数组的定义、初始化、引用(1学时)
8.2 向函数传递一维数组(1学时)
8.3 常用的排序和查算法(1.5学时)
8.4 向函数传递二维数组(0.5学时)
第9章指针
教学要点:
掌握指针变量的使用方法;掌握指针变量作为函数参数的方法;理解按值和按地址调用函数的区别;理解函数指针的应用。
教学时数:
6学时
教学内容:
9.1 变量的内存地址(0.5学时)
9.2 指针变量的定义和初始化、间接寻址运算符(1学时)
9.3 按值调用与按地址调用(1学时)
9.4 用指针变量作函数参数(2学时)
9.5 函数指针及其应用(1.5学时)
第10章字符串
教学要点:
掌握面向函数传递字符串以及字符串输入/输出、复制、连接等常用的字符串处理操作。
教学时数:
4学时
教学内容:
10.1 字符串常量、字符串的存储与字符指针(1学时)
10.2 字符串的访问和输入/输出(0.5学时)
10.3 字符串处理函数(0.5学时)
10.4 向函数传递字符串(1.5学时)
10.5 从函数返回字符串指针(0.5学时)
第11章指针和数组
教学要点:
掌握指针和一维数组、二维数组之间的关系;能够向函数传递一维数组和二维数组;理解指针数组的概念与应用;理解动态数组的应用。
教学时数:
6学时
教学内容:
11.1 指针和一维数组间的关系(1学时)
11.2 指针和二维数组间的关系(1学时)
11.3 指针数组及其应用(2学时)
11.3.1 指针数组用于表示多个字符串(1.5学时)
11.3.2 指针数组用于表示命令行参数(0.5学时)
11.4 动态数组(2学时)
主要包括:C程序的内存映像;动态内存分配函数;长度可变的一维动态数组;长度可变的二维动态数组。
第12章结构体和共用体
教学要点:
结合具体实例,介绍结构体和共用体数据类型的定义和使用;强调对动态数据结构的理解与应用。
教学时数:
6学时
教学内容:
12.1 从基本数据类型到抽象数据类型(0.3学时)
12.2 结构体的定义与typedef定义(0.7学时)
12.3 结构体数组的定义和初始化(1学时)
12.4 结构体指针的定义和初始化(0.5学时)
12.5 向函数传递结构体(0.5学时)
12.6 共用体(0.5学时)
12.7 枚举数据类型(0.5学时)
12.8 动态数据结构——单向链表(2学时)
第13章文件操作
教学要点:
介绍文件相关的概念,特别是不同类型文件的读写方法。
教学时数:
4学时
教学内容:
13.1 二进制文件和文本文件(0.5学时)
13.2 文件的打开和关闭(0.5学时)
13.3 按字符读写文件(0.5学时)
13.4 按格式读写文件(0.5学时)
13.5 按数据块读写文件(1学时)
13.6 文件的随机读写(0.5学时)
13.7 标准输入/输出重定向(0.5学时)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。