《计算机基础Ⅱ(C语言)》教学大纲
编写人:王樱、邓红卫
审核人:魏书提、阳平
一、本大纲适用专业
全校非计算机专业理科学生。
二、编写本教学大纲的说明
(一)课程类别与教学任务
C语言是一种通用的高级程序设计语言,同时又具有其它高级语言所不具备的低级语言功能,不但可用于编写应用程序,还可用于编写系统程序。通过本课程的理论学习和上机实验,使学生了解高级语言的基本编程思想,初步掌握 C 语言的基本数据类型和基本语句,掌握基本的程序设计技巧,重点培养学生阅读 C 程序和使用 C 语言进行简单实用程序设计的能力 。
(二)本课程的基本要求
通过理论和实践教学,使学生较好地掌握C语言各方面的知识,掌握基本的程序设计过程和技巧,具备初步的高级语言程序设计能力。在 Visual C++ 6.0 集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。
(三)本课程的重点和难点
学习本课程重点是掌握 C 语言程序设计的基本知识和程序设计方法,为后续课程的学习打下基础,也使同学掌握一个用计算机解决问题的工具。其中包括:掌握数据类型(基本类型、构造类型、指针类型)、运算符与表达式;掌握结构化程序设计方法,顺序程序设计、选择结构程序设计、循环结构程序设计;掌握数组、指针及其运用;掌握函数、函数调用、函数参数传递方法,以及局部变量、全局变量;阅读、分析、设计、调试简短程序的方法及技巧。
难点:培养计算机程序设计的能力和素质,以及思维方法。
(四)本课程与其他相关课程的联系和后续课程
本课程无必要的先修课程,但在本课程学习之前最好具有使用Windows操作系统及Office办公软件的经验,以及程序设计语言的知识。本课程是后续课程《数据结构》、《c++程序设计》、《操作系统》等的重要基础,也是计算机各级考试的基础。
(五)学时、学时分配安排
总学时:64学时,其中讲课学时:32学时,实验学时:32学时
内容 |
讲课学时 |
实验课时 |
第一章 绪论 |
1 |
2 |
第二章 数据类型、运算符与表达式 |
3 |
2 |
第三章 简单的C程序设计 |
2 |
2 |
第四章 选择结构程序设计 |
4 |
4 |
第五章 循环结构程序设计 |
6 |
4 |
第六章 数组 |
3 |
4 |
第七章 函数 |
3 |
4 |
第八章 编译处理命令 |
2 |
2 |
第九章 指针 |
3 |
4 |
第十章 结构体与共用体 |
2 |
2 |
第十一章 位运算 |
1 |
|
第十二章 文件 |
2 |
2 |
(六)本课程的教学方式及其它教学环节的安排
以多媒体课件课堂讲授为主,每次课堂后辅以上机实验活动。
三、教学大纲
第一章 绪 论
【目标】
掌握:C语言程序的结构,即顺序、循环、选择三种程序设计结构。
熟悉:C语言程序设计的风格,即程序设计特色和独特的编程环境。
了解:C语言的背景及其进一步的发展。
【内容】
1.C语言的历史背景:一般介绍C语言的发展过程。
2.C语言的特点:一般介绍C语言语法特点、程序设计特点及算法特点
3.简单的C程序介绍 :详细讲解 C程序的风格和结构,重点说明C程序的结构特征和组成。
4.C程序的上机步骤: 一般介绍 三种不同的环境下如何运行C程序,重点阐述TC的上机步骤。
第二章 数据类型、运算符与表达式
【目标】
掌握:变量的定义及初始化方法、运算符与表达式的概念。
熟悉:基本数据类型及其常量的定义和使用。
了解:C语言的自动类型转换和强制类型转换、左值和赋值的概念。
【内容】
1.C的数据类型:一般介绍C语言中所使用的数据类型有哪些,如何区分。
2.常量和变量:详细讲解常量的定义及使用时的注意事项,重点阐述变量的定义和使用以及变量的初始化。
3.整型数据:重点阐述整型数据的表示方法和在内存在的存放形式。
4.实型数据:重点阐述实型数据的表示方法和在内存在的存放形式,比较整型数据和实型数据的区别。
5、字符型数据:重点阐述字符型常量、变量和使用方法和在内存中的表示形式,说明什么是字符串常量。
6.变量赋初值:详细讲解赋初值的作用和赋值语句的使用。
7.各类数据之间的混合运算:一般介绍各类型之间的转换原则。
8.算术运算符与算术表达式:详细讲解C语言运算符及其分类,说明各运算符的分类方法及运算规则。
9.赋值运算符与赋值表达式:详细介绍赋值运算符的形式和转换以及运算规则。
10.逗号运算符与逗号表达式:详细介绍该运算符的功能、形式和使用方法。
第三章 简单的C程序设计
【目标】
掌握:C语言常用的输入/输出方式,输入输出函数的格式及各自所限定的格式和内容。
熟悉:C输入/输出函数的使用技巧,分析格式化输入输出时应注意的问题。
了解:C语句的概念及种类,如何用C语句来实现特定功能。
【内容】
1.C语句概述:一般介绍C语句的分类和各类的语法形式及应注意的细节。
2.赋值语句:详细讲解赋值语句的功能和用法。
3.数据输入输出的概念有在C语言中的实现:详细讲解输入输出的概念及其实现,介绍其原理及注意事项。
4.字符数据的输入与输出:详细讲解字符数据的输入输出函数。
5.格式输入与输出:重点阐述格式输入输出函数的格式,详细讲解使用方法。
6.顺序结构程序设计举例:详细介绍相关实例,以加深理解和熟练运用本章知识。
第四章 选择结构程序设计
【目标】
掌握:if…else的三种语法,重点分析其分支走向和执行原则。
熟悉:关系运算和逻辑运算,学会使用条件控制语句来完成特定功能。
了解:switch语句的作用,了解分支较多时的解决办法。
【内容】
1.关系运算符与关系表达式:详细讲解关系运算符的使用和关系表达式的组成。
2.逻辑运算符与逻辑表达式:详细讲解逻辑运算符的使用和逻辑表达式的组成,逻辑表达式的真值表。
3.if语句:重点阐述if语句的三种形式及不同的适用范围,详细讲解if语句的嵌套和条件表达式的作用,说明条件运算符的运算规则。
4.switch语句:一般介绍switch语句的格式与功能。
5.程序举例:详细讲解,举例说明选择结构程序设计技巧。
第五章 循环结构程序设计
【目标】
掌握:WHILE语句、DO-WHILE语句的格式和用法;FOR语句的格式和用法;各种循环语句的运行流程;多重循环嵌套的概念和原则。
熟悉:程序设计中用循环方法的常用算法;使用WHILE语句和FOR语句实现应用问题的编程;BREAK、CONTINUE语句在循环语句中的作用。
了解:GOTO语句及GOTO语句构成的循环;多种循环语句的比较。
【内容】
1.GOTO语句及构成的循环:一般介绍GOTO语句及滥用GOTO语句的坏处。
2.WHILE语句、DO-WHILE语句、FOR语句:重点阐述三种循环语句的格式和功能,详细讲解通过实例讲解循环的运行流程和编程的构造方法。
3.循环的嵌套:详细讲解三种循环相互嵌套的形式和原则。
4.BREAK、CONTINUE语句:详细讲解退出循环的方法。
5.程序举例:详细讲解使用三种循环语句实现编程的方法
第六章 数组
【目标】
掌握:一维数组、二维数组的定义、初使化与引用;字符数组的定义与引用;数组的输入与输出。
熟悉:字符串处理函数。
了解:数组在内存的存储方式。
【内容】
1.一维数组的定义与引用:详细讲解一维数组的定义和引用;重点阐述:一维数组的输入与输出。
2.二维数组的定义与引用:详细讲解二维数组的定义和引用;重点阐述:二维数组的输入与输出。
3.字符数组:详细讲解字符数组的定义和字符串结束标志;字符串的输入与输出;详细介绍常用字符串函数的格式、功能与调用。
4.程序举例:详细讲解使用一维数组和二维数组实现编程的方法。
第七章 函数
【目标】
掌握:函数的定义与调用;函数参数的传递方式;函数嵌套调用的概念;局部变量和全局变量
熟悉:函数嵌套调用和递归调用的概念;变量的存储类型的概念及各种存储类型变量的生存期和有效范围
了解:内部函数和外部函数;如何运行一个多文件的程序
【内容】
1.函数的定义与调用:详细讲解函数的概念、定义函数的一般形式;调用函数的方式;被调用函数的声明。
2.函数参数和函数的值:重点阐述:形式参数和实际参数的数据传递关系;函数的返回值;数组作为函数参数的参数传递机制。
3.函数的嵌套调用:一般介绍函数嵌套调用中的调用过程。
4.函数的递归调用:一般介绍函数递归调用的概念与适用范围
5.局部变量和全局变量:重点阐述:局部变量和全局变量的概念、生存期和有效范围。
6.变量的存储类别:一般介绍动态和静态存储方式;AUTO变量、REGISTER变量、EXTERN声明变量、STATIC声明变量。
7.内部函数和外部函数:一般介绍内部函数和外部函数的概念;如何运行一个多文件的程序。
第八章 预处理命令
【目标】
掌握:有参宏与无参宏的定义及使用。
熟悉:文件包含的使用及效果。
了解:条件编译的概念 。
【内容】
1.宏定义:详细讲解宏定义的概念;无参宏的定义与替换;有参宏的定义与替换。
2.文件包含处理:一般介绍文件包含处理的概念
3.条件编译:一般介绍条件编译的概念
第九章 指针
【目标】
掌握:指针与地址的概念;指针变量的定义、初始化及指针的引用。
熟悉:数组的指针和指向数组的指针变量;字符串的指针和指向字符串的指针变量;函数的指针和指向函数的指针变量、指针数组、指向指针的指针等的基本概念。
了解:函数、数组等指针形式的应用。
【内容】
1.地址与指针与地址的概念:详细讲解指针的概念,数据在内存中的存储、读取机制。
2.变量的指针和指向指针变量的指针变量:重点阐述如何定义、引用指针变量;
3.数组的 指和指向数组的指针变量:详细讲解指向数组元素的指针和指向数组的指针的概念;举例说明如何通过指针引用数组元素,用数组名做函数参数
4.字符串的指针和指向字符串的指针变量:详细讲解字符串的指针和指向字符串的指针变量的概念;字符串指针做函数参数。
5.函数的指针和指向函数的指针变量:详细讲解用函数指针变量调用函数的方法;
6.返回指针值的函数:一般介绍返回指针值的函数的概念与定义方法
7.指针数组和指向指针的指针:详细讲解指针数组的概念;指向指针的指针的概念
第十章 结构体与共用体
【目标】
掌握:结构体和共用体类型的说明、结构体和共用体变量的定义及初始化方法;结构体与共用体变量成员的引用。
熟悉:结构体指针变量;存储动态分配和释放;链表的基本概念和基本操作;枚举类型变量的定义。
了解:typedef 的作用以及其它类型定义。
【内容】
1.结构体类型:结构体类型的说明及结构体类型变量的定义;结构体变量的引用;结构体变量的初始化;结构体数组;指针与结构体数组。
2.共用体:共用体类型的说明及共用体类型变量的定义;共用体变量的引用;共用体变量的初始化。
3.枚举类型:枚举类型的说明及枚举类型变量的定义。
4. typedef类型说明符:typedef 的基本概念;用typedef说明一种新类型名。
第十一章 位运算
【目标】
掌握:位运算符及其运算规则。
熟悉:位运算符的运算功能。
了解:位运算的运用
【内容】
1.位运算:
2.位运算符的运算功能
第十二章 文件
【目标】
掌握:文件的基本概念;文件的打开与关闭;常用的文件读写
熟悉:文件包含的使用及效果
了解:缓冲文件系统的使用
【内容】
1.C语言文件的概念:文件,文件指针。
2.文件的相关操作:打开文件,关闭文件和文件的读写;
3、文件处理的有关函数:调用getc(fgetc)和putc(fputc)函数进行输入输出;判文件结束函数feof();fscanf函数和fprintf函数;fgets函数和fputs函数;freadf函数和write函数