C107002B C语言程序设计
(2学分,32学时;基础能力教育平台/信息能力模块;适用专业:电气工程及其自动化;先修课:大学计算机基础)
本课程是提升学生中计算机应用能力的一门必修课,属于基础能力教育平台。C语言是本专业最常用的计算机程序设计语言,本课程可为后续专业课程及实践环节提供直接支持,也能培养学生建立程序设计的基本技能。
通过讲授C语言这种结构化程序设计语言,本课程旨在向学生介绍计算机程序设计的基本思想与方法,培养学生使用计算机高级语言进行算法分析、流程设计及程序编写的信息处理方法,训练学生的计算思维和逻辑思维,最终使学生具备借助计算机程序语言解决电气工程领域专业问题的基础能力。
本课程通过理论授课和上机实验等方式向学生传授C语言程序设计的基础知识,包括:计算机语言基础、数据类型及其运算、分支结构、循环结构、模块化程序设计、编译预处理及数组、指针、结构体与共用体以及文件操作等。
课程教学内容和要求
教学内容包括20学时课堂授课和12学时的专题实验,教学要求包括三级:了解、理解和掌握,具体解释如下:
了解:是指学生能辨认的科学事实、概念、原则、术语,知道事物的分类、过程及变化倾向,包括必要的记忆。
理解:是指学生能用自己的语言把学过的知识加以叙述、解释、归纳,并能把某一事实或概念分解为若干部分,指出它们之间的内在联系或与其它事物的相互关系。
掌握:是指学生能根据不同情况对某些概念、定理、原理、方法等在正确理解的基础上结合实例加以运用,包括分析与综合。
序号 |
知识单元 (章节) |
知识点 |
教学要求 |
推荐学时 |
教学 方式 |
支撑课程目标 |
1 |
C程序设计入门 |
计算机原理及程序设计语言概述 |
了解机器语言、汇编语言及高级语言之间的区别和联系;了解C语言的历史、特点;熟悉C语言运行环境,初步了解运行一个C语言程序的过程。 |
2 |
讲授+演示 |
|
熟悉开发环境 |
通过HelloWorld例程引入开发环境。 |
2 |
分支 结构 |
if语句 |
掌握if语句的几种形式、复习巩固条件运算,通过例程掌握if语句的一般应用。 |
2 |
讲授+演示 |
|
关系运算 |
掌握关系运算符及关系表达式。 |
逻辑运算 |
掌握逻辑运算符以及逻辑表达式,了解逻辑运算符预先次序。 |
switch语句 |
掌握switch语句的一般形式,通过例程掌握其应用。 |
3 |
实验1 |
熟悉开发环境 |
编写一个简单的程序,要求熟悉代码编写、编译和文件保存。 |
2 |
机房 或 教室 |
|
if语句实验 |
完成简单if语句和两重嵌套的if复杂语句两个程序。 |
switch语句实验 |
完成一个简单的switch语句程序。 |
4 |
循环 结构 |
for语句 |
掌握for语句一般形式以及3个表达式的作用,通过例程掌握for语句的一般应用。 |
2 |
讲授+演示 |
|
while语句 |
掌握while语句和do-while的一般形式,通过例程掌握它们的一般应用。 |
循环的中断 |
掌握continue和break语句的作用,通过例程理解他们的用法和区别。 |
5 |
实验2 |
for语句实验 |
完成简单for语句和两重嵌套的for复杂语句两个程序。 |
2 |
机房 |
|
while语句实验 |
完成一个while语句的程序,然后改造成do-while形式。 |
6 |
数据类型和表达式 |
数据类型 |
掌握数据类型存储原理,以及整型、字符型、实数型(浮点型)定义和区别。 |
4 |
讲授+演示 |
|
输入和输出 |
掌握不同数据类型的输入和输出,了解其它输入和输出方法。 |
类型转换 |
掌握自动数据类型转换和强制数据类型转换。 |
表达式 |
掌握算术表达式、赋值表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式以及位运算。 |
7 |
数组 |
一维数组 |
掌握一维数组的定义、引用、初始化,通过例程理解一维数组的应用。 |
3 |
讲授+演示 |
|
排序算法 |
理解冒泡法和排序法算法,通过例程掌握上述两种算法的实现,了解其它排序算法。 |
二维数组 |
掌握二维数组的定义、引用、初始化,通过例程理解二维数组的应用。 |
字符数组 |
掌握字符数组的定义、引用、初始化,通过例程理解字符数组的应用。 |
8 |
实验3 |
一维数组实验 |
编写一个简单一维数组程序。 |
2 |
机房 |
|
排序算法实验 |
完成一个冒泡排序算法的程序。 |
二维数组实验 |
完成一个二维数组的程序。 |
10 |
函数 |
函数的定义和调用 |
通过例程引入函数,熟悉函数在C语言的基本使用方法。 |
3 |
讲授+演示 |
|
函数的参数 |
通过例程,掌握函数形参和实参的关系,深入理解“值传递”的含义。 |
变量的作用域 |
通过简单例程,理解局部变量和全局变量的区别,了解C99标准中局部变量的定义位置。 |
11 |
实验4 |
函数实验1 |
编写一个没有参数和返回值的函数程序。 |
2 |
上机 |
|
函数实验2 |
完成一个既带有参数又带有返回值的函数程序。 |
12 |
指针 |
指针的概念 |
理解指针与变量地址的关系。 |
2 |
讲授+演示 |
|
指针变量的定义和引用 |
掌握指针变量的定义、初始化及指针的运算。 |
指针与数组 |
通过简单的例程,让学生掌握指针与数组之间的关系。 |
指针与字符串 |
从指针与数组出发,进一步介绍指针与特殊数组—字符数组的关系。 |
指针与函数 |
结合指针与数组的关系,进一步介绍指针作为函数参数的应用。 |
数组名参数 |
结合函数的指针型参数,理解数组名作为函数参数的联系和区别。 |
13 |
结构体 |
结构体变量的定义和引用 |
通过例程,掌握结构体变量的定义、初始化以及如何使用。 |
2 |
讲授+演示 |
|
结构体数组 |
通过例程掌握结构体数组的使用。 |
结构体指针 |
通过例程了解结构体指针的使用。 |
其它自定义数据类型 |
简单介绍共用体、枚举等其它自定义数据类型。 |
14 |
实验5 |
指针实验 |
编写一个简单指针程序。 |
2 |
上机 |
|
指针参数实验 |
完成一个指针参数的函数程序,然后将指针参数修改为数组名参数,重复实验。 |
结构体实验 |
完成一个具有代表性的结构体使用的程序。 |
15 |
实验 考试 |
综合知识考试 |
对上面需掌握的知识点进行综合性考查。 |
2 |
上机 |
|