第一篇:C语言程序设计教学大纲72du
《C语言程序设计》教学大纲
课程名称:中文名称 :C语言程序设计;英文名称:C Language Programming 课程编码:161002 学 分:4.5分
总 学 时:72学时,其中,理论学时:52学时;上机学时:20学时。适用专业:全校理工科各专业 先修课程:计算机基础 执 笔 人:李新玉 审 订 人:杜友福
一、课程的性质与任务
《C语言程序设计》是为全校所有的理工科专业的学生开设的公共基础课,也是一门重要的必修课。其目的是使学生掌握程序设计的基本方法,培养学生掌握利用计算机处理问题的思维方法与应用能力。要求学生掌握程序的三种基本结构及结构化的程序设计方法,了解并掌握几种典型的算法,并且能够熟练地运用C语言编写各种应用程序,为进一步学习其它相关课程奠定基础。
二、教学内容与学时分配
第一章
程序设计基本概念
(3学时)本章重点:
一、算法及特性;
二、结构化程序设计方法。难点:算法设计及其表示。第一节 程序和程序设计
一、程序;
二、程序设计。第二节 算法
第三节 结构化程序设计方法
第四节
C语言程序的基本结构
第二章 数据类型、运算符和表达式
(5学时)本章重点:
一、标识符的正确使用;
二、各种基本数据类型的使用;
三、算术运算符的优先级和结合性;
四、表达式计算中的类型转换。难点:
一、各种类型数据在计算机内存中的存储形式;
二、自增自减运算。
第一节 C语言的数据类型 第二节 常量与变量 第三节 整型数据 第四节 实型数据 第五节 字符型数据
第六节 算术运算符与算术表达式 第七节 赋值运算符与赋值表达式
一、赋值运算符和赋值表达式;
二、复合的赋值表达式;
三、自加、自减运算符;
四、赋值运算中的类型转换。
第八节 逗号运算符与逗号表达式
第三章 顺序结构程序设计
(4学时)本章重点:
一、printf函数;
二、scanf函数。难点:输入与输出时的格式控制。第一节 C语句概述
第二节 赋值语句
第三节 数据的输入与输出
一、printf函数;
二、putchar函数;
三、scanf函数;
四、getchar函数 第四节 顺序结构程序举例
第四章 选择结构程序设计
(4学时)本章重点:
一、逻辑值的表示、使用及其运算;
二、关系运算符的运算规则及关系表达式;
三、逻辑运算符的运算规则及逻辑表达式;
四、if语句;
五、switch语句的形式与执行过程。难点:
一、逻辑表达式求值时的“非完全求解法”;
二、条件运算符具有的自右向左的结合性及条件表达式的求解过程;
三、if语句的嵌套使用问题;
四、switch语句的执行过程及在switch语句中正确使用break语句的方法。
第一节 关系运算和逻辑运算
一、逻辑量及其在C语言中的表示;
二、关系运算符和关系表达式;
三、逻辑运算符和逻辑表达式。
第二节 if语句
第三节 条件运算符和条件表达式
第四节 switch语句
第五节 语句标号和goto语句(本节内容仅要求一般了解)
第六节 选择结构程序举例
第五章
循环结构程序设计
(6学时)本章重点:
一、while循环、do-while循环及for循环的构成、执行过程及使用方法;
二、循环嵌套的使用方法;
三、用循环结构实现的典型算法,如:累加、阶乘、穷举法、递推法等。难点:
一、for循环使用时的灵活性,如:表达式的缺省及其处理、循环体是空语句等;
二、多重循环(即循环嵌套)的使用;
三、break语句和continue语句的作用和区别。
第一节 while语句
第二节 do-while语句
第三节 for语句
第四节 循环的嵌套
第五节 break和continue语句在循环体中的作用
一、break语句;
二、continue语句。
第六节 用if语句和goto语句构成的循环(本节内容仅要求一般了解)第七节 循环结构程序举例
第六章 数组
(6学时)本章重点:
一、各类数组的定义、引用及初始化;
二、用字符数组来处理字符串;
三、数组应用的典型算法,如:求最大/最小值、排序等;
四、字符串处理函数。难点:
一、二维数组的存储结构;
二、字符数组与字符串的关系;
三、字符串的输入输出。
第一节 一维数组
第二节 二维数组
第三节 字符数组
一、字符数组的定义与引用;
二、字符数组的初始化;
三、用字符数组来存放字符串;
四、字符数组的输入和输出;
五、用于字符串处理的函数;
六、字符数组应用举例。
第七章 函数
(6学时)本章重点:
一、库函数的正确使用;
二、函数的定义、调用和说明的方法;
三、调用函数和被调用函数之间的数据传递规则;
四、函数的递归调用方法。难点:
一、函数定义、调用和说明三者的关系;
二、传值调用、传址调用的含义及使用;
三、递归的实现方法。
第一节 库函数
第二节 函数的定义和返回值 第三节 函数的调用
第四节 函数的说明
第五节 调用函数和被调用函数之间的数据传递 第六节 函数的递归调用 第七节 程序举例
第八章
用户标识符的作用域和存储类型
(4学时)本章重点:
一、作用域与生存期的基本概念;
二、局部变量、全局变量的作用域、生存期及各自使用时的特点;
三、static说明对局部变量和全局变量的影响;
四、扩展全局变量作用域的方法。难点:
一、4种存储类型变量的说明方式、特点及适用范围;
二、静态局部变量的初始化及其对程序的影响;
三、全局变量与局部变量同名时的处理。
第一节 局部变量、全局变量和存储分类 第二节 局部变量及其作用域和生存期 第三节 全局变量及其作用域和生存期 第四节 函数的存储分类
第九章
编译预处理
(2学时)
本章重点:
一、不带参数的宏定义;
二、文件包含的作用;
三、编译预处理命令在程序中的实际作用。难点:
一、带参数的宏定义的替换过程;
二、宏调用与函数调用的区别。
第一节 宏定义 第二节 文件包含
第三节 条件编译(本节内容仅要求一般了解)
第十章
指针
(4学时)本章重点:
一、指针和指针变量的概念;
二、指针变量的引用;
三、一维数组与指针;
四、指针变量作为函数的参数。难点:
一、指针与内存地址的关系;
二、指针与数组的地址的关系;
三、函数指针;
四、数组的三种引用方式(下标法、首地址增量法、指针变量法)。
第一节 指针的基本概念
第二节 指针变量的定义与引用 第三节 函数之间地址值的传递 第四节 一维数组和指针
第五节 二维数组和指针(本节内容仅要求一般了解)第六节 字符串与指针
第七节 函数与指针(本节内容仅要求一般了解)
第十一章 结构体、共用体和用户定义类型
(4学时)本章重点:
一、结构体类型与结构体类型变量的定义;
二、结构体类型变量的引用方法、“.”操作符的意义以及其优先级;
三、结构体数组的定义形式、初始化及其引用方式;
四、指向结构体的指针。难点:
一、指向结构体的指针;
二、结构体数组;
三、链表的概念及其对链表的一些简单操作;
四、结构体变量的成员与共用体变量的成员在内存中的分布形式;
五、结构体变量及结构体指针作为函数的参数。
第一节 结构体类型 第二节 结构体数组
第三节 指向结构体的指针 第四节 结构体与函数 第五节 链表
第六节 共用体(本节内容仅要求一般了解)第七节 枚举类型(本节内容仅要求一般了解)第八节 用typedef说明一种新类型名(本节内容仅要求一般了解)
第十二章 位运算
(2学时)本章重点:
一、位运算符的语义及作用;
二、位运算的应用。难点:位段的概念及使用。第一节 位运算的概念 第二节 位运算举例
第三节 位段(本节内容仅要求一般了解)
第十三章 文件
(2学时)本章重点:
一、文件指针的概念;
二、文件打开和关闭;
三、fscanf函数和fprintf函数。难点:各种文件打开方式的作用。
第一节 C语言文件的概念 第二节 文件指针
第三节 文件的打开与关闭 第四节 文件的读写
第五节 文件定位函数(本节内容仅要求一般了解)
三、教学基本要求
本课程的基本要求是掌握程序设计的基本原理、概念和方法;在介绍算法、数据结构、计算方法、结构化程序设计方法的基础上,主要介绍C语言及其程序设计方法及应用。主要内容包括:了解C语言的各种数据类型的特点及其运用方法;掌握各类语句的语法及功能;了解算法的描述方法,并掌握一些基本的典型算法;了解程序的三种基本结构,并初步掌握结构化的程序设计方法;掌握在微机中运行C程序的过程和程序调试的方法;能够阅读、理解简单的C程序,并能自己动手编写小型的应用程序。
四、上机内容与学时分配
1、顺序结构程序设计
2学时
2、选择结构程序设计
2学时
3、循环结构程序设计
4学时
4、数组
4学时
5、函数
4学时
6、指针
2学时
7、结构体与共用体
2学时
五、大纲说明
本大纲适用于全校理工科各专业。本课程宜安排在学生学完“计算机基础”课程之后的第二学期进行,教学总时数为72学时,其中课堂讲授52学时,计划内上机学时为20学时,另外需要学生多利用业余时间自主安排上机学习。本课程的课堂教学全面采用多媒体CAI技术,按照本大纲的内容进行教学。课程的重点是第三、四、五、六、七章的基本内容;难点主要是第六、七、十章的部分内容。
六、主要参考书
1、《C语言程序设计》第一版,杜友福主编,科学出版社,2004年1月。
2、《C语言程序设计导学》第一版,杜友福主编,科学出版社,2004年1月。
3、《C程序设计》第一版,谭浩强编著,清华大学出版社,1991年7月。
第二篇:语言程序设计教学大纲(新)
《汇编语言程序设计》理论课程教学大
纲
适用专业:计算机科学与技术
计算机科学与技术系 2009年7月15日
《汇编语言程序设计》理论教学大纲
课程代码:08120013 学 分:3 理论学时:54
课程类别:专业必修
一、课程的目的与任务
汇编语言是高等院校计算机软、硬件及应用专业的专业基础(核心)课,它不仅是计算机原理、接口技术及操作系统等其它核心课程的先行课,而且对训练学生掌握程序设计技术、加深对计算机工作原理的理解有非常重要的作用。通过本课程的学习,使学生了解80x86计算机组织,掌握8086至Pentium微处理器的指令系统和寻址方式,掌握汇编语言程序设计基本思想和方法,同时通过汇编语言程序设计进一步掌握利用程序设计充分发挥计算机效率的基本思想。能进行汇编语言程序的设计、调试。
二、课程内容与要求
1、基本知识(2学时)
教学内容: 1.1 进位计数制与不同基数的数之间的转换
1.2 二进制数和十六进制数运算 1.3 计算机中数和字符的表示 1.4 几种基本的逻辑运算
教学要求:要求学生深刻理解与牢固掌握二进制数、八进制数、十六进制数、十进制数各数制格式和互换方法, “AND”“OR”“NOT”“XOR”逻辑运算;了解数的补码的加减法,字符的表示法。
重点: 计算机中的数制格式和互换。补码的加减法,字符的表示法。难点:计算机中的数制格式和互换。2、80x86计算机组织(2学时)教学内容: 2.1 80x86微处理器 2.2 2.3 2.4 2.5 基于微处理器的计算机系统构成 中央处理器 存储器 外部设备
教学要求:熟练掌握80x86的微处理器、中央处理器、各寄存器的作用和存储单元物理地址的计算;一般掌握存储器概念;了解计算机系统和外部设备。
重点:80x86系列CPU寄存器结构、功能和寻址方式。
难点:80x86系列CPU寄存器结构、功能和寻址方式;特别是段寄存器和标志寄存器的寻址方式及使用用法。3、80x86的指令系统和寻址方式(16学时)教学内容: 3.1 80x86的寻址方式
3.2 程序占有的空间和执行时间
3.3 80x86的指令系统
教学要求:熟练掌握80x86的各种寻址方式,数据传送指令,加,减,乘除指令,逻辑运算指令,移位指令,串处理指令,控制转移指令,循环指令;一般掌握处理机控制指令,输入输出指令,中断指令,十进制调整指令;了解IBM-PC机器语言指令。
重点:80x86的寻址方式;80x86的指令系统。
难点:80x86的各种寻址方式;数据传送指令;算术指令;移位指令。各种数制运算指令的格式,使用方法,寻址方式和对标志位的影响,特别是对溢出标志位OF的影响。
4、汇编语言程序格式(8学时)教学内容: 4.1 4.2 4.3 汇编程序功能 伪操作
汇编语言程序格式
4.4 汇编语言程序的上机过程
教学要求:熟练掌握各种伪操作、汇编语言程序格式和上机过程;一般掌握汇编程序功能。重点:汇编源程序的书写格式及编译和连接程序的使用。
难点:熟练掌握各种伪操作、汇编语言程序格式和上机过程;
5、循环与分支程序设计(6学时)教学内容: 5.1 5.2 循环程序设计 分支程序设计
5.3 如何在实模式下发挥80x86及其后继机型的优势
教学要求:熟练掌握循环程序结构形式与设计方法及多重循环程序设计、分支程序设计结构形式和分支程序设计方法;一般掌握在实模式下发挥80x86及其后继机型的优势。重点:循环程序结构形式与设计方法及多重循环程序设计、分支程序设计结构形式和分支程序设计方法。难点:循环程序设计方法和分支程序设计方法。
6、子程序结构(6学时)教学内容:
5.4子程序的设计方法 6.2 子程序的嵌套
6.3 子程序的举例
教学要求:熟练掌握子程序的设计方法、过程定义伪操作、子程序的调用和返回;一般掌握子程序的参数传送;理解结构伪操作STRUC的定义,预赋值和调用;了解子程序的嵌套与递归和DOS功能调用,学会应用子程序解题。
重点:子程序的设计方法、过程定义伪操作、子程序的调用和返回,学会应用子程序解题。难点:子程序设计以及调用及程序模块间的数据传递方法。
7、高级汇编语言技术(8学时)教学内容: 7.1 宏汇编 7.2 7.3 重复汇编 条件汇编
教学要求:熟练掌握宏定义、宏调用、宏展开以及重复伪操作和不定重复伪操作,掌握各条件伪操作的使用。重点:常用伪指令的功能和使用方法。
难点:常用伪指令的功能、用法及注意事项。
8、输入输出程序设计(4学时)教学内容: 8.1 I/O设备的数据传送方式 8.2 程序直接控制I/O方式 8.3 中断传送方式
器存取(DMA)方式,了解I/O端口与I/O指令以及中断分类、中断向量表、中断过程、优先级和中断嵌套、中断处理程序。
重点:I/O指令的概念及使用。软硬件中断的概念、功能、用途。
难点:设置、取中断的方法。CPU与外设的数据传送方式及直接存储器存取(DMA)方式。
9、BIOS和DOS中断(2学时)教学内容: 9.1 9.2 9.3 9.4 键盘I/O 显示器I/O 打印机I/O 串行通信口I/O 显示中断、DOS显示功能调用、BIOS与DOS的打印功能、中断通信接口、串行口功能调用。
重点:BIOS和DOS中断功能调用;中断处理程序的编写。难点:中断处理程序的编写。
教材及主要参考书: 《IBM-PC汇编语言程序设计》(第2版)清华大学出版社 编者:沈美明 温冬婵编著 教学要求:熟练掌握设置、取中断的方法,一般掌握CPU与外设的数据传送方式及直接存储教学要求:熟悉字符码与扫描码,一般掌握BIOS键盘中断、DOS键盘中断、字符属性、BIOS 4
第三篇:C语言程序设计教学大纲(2014)
《C语言程序设计》
(一)教学大纲
课程名称:C语言程序设计
英文名称:The C Programming Language 课程编号: 000331,000332
课程性质:基础必修
任课教师:张萍、张莉、黄达明、陶烨、潘亦 教学课时:3-4学时/周 实验课时:4学时/周 课程学分:4学分/6学分 授课周数:18周
授课课时:68
实验课时:68 教学对象:匡亚明学院、化学化工学院、地理与海洋科学学院、环境学院、大气科学学院、天文与空间科学学院、地球科学与工程学院、工程管理学院、生命科学院
先修课程:大学计算机信息技术
一、课程目标
通过对本门课程的学习,学生能够掌握基本的算法和面向过程的程序设计一般方法;能熟练地用C语言编写调试各类数值计算程序和数据处理程序;帮助培养学生的计算思维能力,完善其对各自专业研究领域问题的抽象能力并进而应用计算装置来自动化解决问题的能力。
二、课程内容和学时分配
第1章 C程序设计概述(2学时)
1.1 程序设计语言、程序与程序设计 1.2 C语言概述
掌握程序设计语言、程序和程序设计的基本内涵,了解C语言的发展过程和特性,掌握C语言程序的结构与执行以及上机调试运行C语言程序的过程。第2章 数据的表示与存储(4学时)
2.1 C语言的数据类型 2.2 整型数据 2.3 浮点型数据 2.4 字符型数据 2.5 字符串数据 2.6 指针型数据 2.7 枚举型数据
2.8 符号常量与const限定 2.9 使用typedef命名数据类型
理解C语言中数据类型的含义和作用,掌握整型、浮点型和字符型常量和变量的使用及声明和初始化的方式,掌握字符串常量的表现形式,掌握地址的概念和指针变量声明及初始化的方式,掌握枚举数据类型的定义方式和枚举型变量的声明,掌握符号常量的使用方式,掌握用typedef命名数据类型的方式。第3章 基本运算与输入输出(6学时)
3.1 运算符与表达式概述 3.2 数据对象的存取 3.3 基本数值运算 3.4 其他常用运算 3.5 输入与输出
掌握运算符和表达式的含义和作用,间接引用运算与间接引用数据对象的方法,赋值运算和赋值表达式的使用方式,算术运算符和算术表达式的使用方式,常见的数值计算与数学库函数的使用以及数值计算中溢出、有效数字与计算误差,了解强制类型转换运算及其表达式,sizeof、逗号运算符及其表达式的使用方式,掌握字符数据的输入输出函数和格式化输入输出函数的使用方式。第4章
结构化程序设计(8学时)
4.1结构化算法及其表示 4.2 结构化程序开发
掌握算法的含义,基本算法结构及其表示,结构化程序设计方法,表示顺序、选择和循环算法结构的语句,break语句和continue语句,无条件转移语句的应用和使用方式。第5章 常用数值计算算法及其程序设计(6学时)
5.1 素数判断 5.2 最大公约数求解
5.3 穷举法求满足条件的一组解 5.4 级数近似计算 5.5 一元非线性方程求根 5.6 定积分近似计算
掌握判断判断算法、求最大公约数算法,能够熟练运用穷举法求满足条件的一组解,掌握级数近似计算的递推法,掌握用牛顿迭代法和二分法及弦截法求一元非线性方程的根,用梯形法和矩形法进行定积分近似计算。第6章 模块化程序设计与函数(12学时)
6.1 函数概述 6.2 函数定义 6.3 函数返回 6.4 函数调用 6.5 标识符的作用域 6.6 变量的存储属性
*6.7 参数个数可变函数的定义及调用【不作要求】 6.8 编译预处理及预处理命令
掌握函数定义的方法,掌握函数之间数据的传递途径,掌握函数的调用方法,掌握库函数的使用,理解函数的作用及掌握模块化程序设计方法,掌握程序调试的基本方法,掌握函数的间接调用,掌握返回指针的函数的应用,掌握函数调用时传递地址的方法,理解变量的作用域及生命期属性,理解递归函数的执行过程,掌握包含递归函数的程序的编写与调试方法。第7章 数组(12学时)7.1 数组概念 7.2 一维数组 7.3 二维数组
7.4 字符与字符串处理 *7.5指针数组及应用 *7.6动态数组【不作要求】
掌握一维数组的声明与初始化形式,掌握一维数组元素的直接与间接引用方法,掌握一维数组作函数实参的应用,掌握与一维数组相关的常用算法,掌握二维数组的声明与初始化形式,掌握二维数组元素的直接与间接引用方法,掌握二维数组作函数实参的应用,掌握与二维数组相关的常用算法,掌握使用一维字符数组表示字符串的方法,掌握字符与字符串处理函数的应用,掌握使用二维字符型数组表示字符串集合的方法,掌握字符串集合的处理方法,掌握指针数组的声明、初始化及数组元素的引用,掌握指向指针型数据的指针变量的声明、引用,掌握带参数的主函数的编写及程序的运行方法。第8章 结构、联合与指针(8学时)8.1结构数据类型 *8.2联合类型 8.3指针小结
掌握结构类型定义的方法,掌握结构类型变量与数组的声明和使用,掌握函数间结构类型数据的传递方式,掌握动态内存分配、释放函数的使用,掌握单向链表的基本操作。
第9章 文件操作(4学时)9.1 文件概念 9.2 C文件系统
9.3 利用高级I/O库函数存取文件
了解C语言的文件系统,掌握使用高级I/O库函数存取文件的方法。第10章 位运算(2学时)10.1 位运算符
10.2 位段【不作要求】
掌握位逻辑运算符和移位运算符的基本概念和方法
课程设计
将所学知识综合应用到C语言程序设计中,开发具有一定规模和实际应用价值的程序产品,最好能与专业应用相结合(1至3人为一个项目开发小组)。
三、课程考核
平时(实验)占10%
课程设计占20%
期中笔试占20%,期末笔试和上机占50%
四、教材
姜恒远,陶烨,张莉,张萍,黄达明.C语言程序设计教程.高等教育出版社,2010(8).姜恒远,张莉,陶烨,张萍,黄达明,金莹.C语言程序设计教程学习指导.高等教育出版社,2010(8).五、参考书目
1.Kernighan B W,Ritchie D M.The C Programming Language.PRENTICE-HALL.INC,1983.2.Digital Research.C Language programmer's Guide for the IBM Personal Computer Disk Operating System.3.C Primer Plus(第四版)中文版,技桥工作室译,人民邮电出版社,2002(7).4.谭浩强.C程序设计,清华大学出版社,1991(7).5.Deitel H M,Deitel P J.C程序设计教程,薛万鹏等译,机械工业出版社,2000(7).6.Kernighan B W,Ritchie D M.C程序设计语言(第2版),徐宝文、李志译,机械工业出版社,2003(6).7.Kelley A,Pohl I.C语言教程(第4版),徐波译,机械工业出版社,2007(1).
第四篇:《C语言程序设计》教学大纲
《C语言程序设计》教学大纲
第一部分 大纲说明
一、课程的目的与任务
本课程将以结构化程序设计思想指导学习者运用C语言进行程序设计,充分利用C语言的结构性好,书写格式自由简洁,数据类型丰富,表达式类型多样化,程序执行效率高,可移植性好等特点,使学习者养成严谨的程序设计风格和习惯,在程序设计基本技能方面得到良好的训练,为后继课程的学习及今后的实际应用打下良好的基础。
二、课程的基本要求
1.教学基本要求和学习方法建议
(1)弄清概念、注重实践
学习时一定要模仿例题亲自编制一些实用程序,加强对概念的正确认识。同时要注意上机实践,把不清楚的问题通过上机一一解决。从而不断增加学习兴趣,提高编程能力。
(2)由浅入深、循序渐进
先学习简单的、容易掌握的部分,以后再逐步掌握C语言的精华——指针及各种灵活的表达式。
(3)着重语言的使用
由于C语言本身比较复杂,应把学习重点放在语言的使用上,即如何正确使用C语言编写程序,而不把重点放在算法的设计上。
(4)尽量不涉及太多的硬件知识
C语言既能编写应用软件,也能编写系统软件,而编写系统软件势必需要一定的硬件知识。在学习本课程时应尽可能地不涉及太多的硬件知识,以便于理解和掌握。
(5)忽略非主要细节
不死抠非主要细节,集中精力放在最基本、最常用部分的学习上,待建立一定的基础以后再深入到一些非主要细节的讨论。
2.教学的重点、难点
重点为熟练掌握C语言的数据类型(基本类型、构造类型、指针类型等)和各类运算符,能正确使用表达式实现各种数据的加工。熟练掌握程序设计的三种基本结构(顺序、选择、循环)的特点,能使用相关语句完成这三种基本程序的设计任务。掌握C语言的常用的库函数的使用,以及用户函数的定义、调用、参数传递等方法。培养学生的程序设计能力,初步认识软件开发的基本思想。难点为掌握阅读和分析程序的方法和技巧,掌握设计和调试程序的方法和技巧。
3.教学计划中前后课程的联系
C语言比较复杂、较难掌握,学习者应该先学习计算机基础知识。
C语言是数据结构、软件工程、程序设计方法、编译原理等课程的基础与工具。
4.考试考核方式
实践和期末笔试考核,比例为 4:6。5.学时
17周,周3学时
6.教材编选的原则
根据学生实际情况和社会发展的需要,选择了《C语言程序设计与实训》。该教材编写的原则是:结构清晰,内容安排合理,难度循序渐进,描述准确清楚,各章节配备一定实训题目和一定数量的习题和思考题,重点培养学生用C语言解决实际问题的能力,适合高职高专学生学习的特点。
7.参考书目
1.谭浩强 《C程序设计》 清华大学出版社 2002
2.薛钢等 《C语言实用教程》 吉林科学技术出版社 1997 3.徐金吾等 《Turbo C使用大全》 北京科海培训中心 1990
4.王士元 《C高级实用程序设计》清华大学出版社 1995
5.国家教育考试中心 《全国计算机等级考试考试大纲》 高等教育出版社 1995 6.牛连强等 《C语言程序设计笔试习题点津》 大连理工大学出版社 1999 7.王洪 《Turbo C 2.0使用指南》陕西电子编辑部(内部参考)1989 8.谭浩强 《C程序设计上机指导书》 清华大学出版社 1999
9.马靖善、秦玉平等 《C语言程序设计》 清华大学出版社 2005
第二部分 讲授大纲
第1章 C 语言概述
学习目的和要求:
了解C语言出现的历史背景,了解C语言的特点,熟悉C环境,熟练掌握C程序的上机步骤,了解C程序的组成。教学重点:
C 程序的上机步骤。教学难点:
C程序的组成。
课时分配:
本章讲授2学时,上机实践 1学时。
讲授内容纲要:
1.C语言发展及特点。
2.Turbo C上机操作环境。
3.简单的C程序介绍。
4.C程序的上机执行过程。思考题:
1.C程序组成。2.C程序执行过程。
第2章 C语言基础
学习目的和要求:
熟练掌握几种基本数据类型的存储方式,表示方法;熟练掌握指针的定义和使用;掌握不同类型间数据转换的原则与方法;熟练掌握有关运算符与表达式的运用。
教学重点:
整型、实型、字符型、指针型数据的定义和使用。运算符和表达式的运用。
教学难点:
指针型数据的定义和使用、不同类型间数据转换的原则与方法。课时分配:
本章讲授2学时,上机实践 1学时 讲授内容纲要:
1.常量和变量。
2.各种运算符和表达式。
3.指针类型。思考题:
1.数据类型有哪些。2.各种运算符的使用。
第3章 顺序结构
学习目的和要求:
清楚顺序结构设计的思路,掌握基本的输入、输出函数的使用。教学重点:
结构化程序设计思想、各种输入、输出函数 教学难点:
scanf()函数和printf()函数的格式控制字符串。课时分配:
本章讲授 2学时,上机实践 1学时
讲授内容纲要:
1.三种基本结构。
2.赋值语句。
3.输入、输出函数。思考题:
1.三种基本结构的特点。2.输入、输出函数的应用。
第4章 选择结构
学习目的和要求:
了解if、switch-case和goto三种语句的一般形式及其应用,掌握选择结构的特点。教学重点:
if、switch-case语句的应用。教学难点:
if语句嵌套。课时分配:
本章讲授2学时,上机实践 1 学时
讲授内容纲要:
1.if语句的应用。
2.switch-case语句的应用。
3.goto语句的应用。
1.if语句使用的注意事项。
2.switch-case语句中break的作用。
第5章 循环结构
学习目的和要求:
了解三种循环语句的区别,掌握穷举法和迭代法的思想及其应用,提高解决问题的能力。教学重点:
三种循环语句的特点及应用。思考题: 教学难点:
穷举法和迭代法的思想及其应用。课时分配:
本章讲授 4学时,上机实践 2学时
讲授内容纲要: 1.while、do-while和for三种循环语句的一般形式及其应用。2.break语句和continue语句的一般形式及其应用。
3.穷举法和迭代法的思想及其应用。思考题:
1.while、do-while和for三种循环语句的区别。2.break语句和continue语句的应用的特点。
第6章 数组
学习目的和要求:
掌握数组的定义、引用技巧和初始化方法;掌握字符串的输入、输出方法;会用字符串处理函数解决字符串问题。教学重点:
数组的应用、字符串数组的应用。教学难点:
字符串数组的应用。课时分配:
本章讲授4学时,上机实践 2学时
讲授内容纲要:
1.数组的定义、引用和初始化方法。
2.字符串的输入、输出及处理函数。
3.数组的应用。思考题:
1.字符串与字符数组的区别。2.数组的初始化的特点。
第7章 函数
学习目的和要求:
掌握函数的定义和调用;掌握函数调用时的参数传递方式;理解变量的存储属性和作用范围;掌握内部函数和外部函数的定义和使用。
教学重点:
函数的参数传递,函数的调用,数组名和指针作为函数参数。变量的存储属性。
教学难点:
函数的嵌套调用与递归调用;变量的存储类别。
课时分配:
本章讲授4学时,上机实践2学时
讲授内容纲要:
1.函数的定义与调用。
2.参数传递。
3.函数的嵌套和递归调用。4.宏定义与文件包含。5.主函数与命令行参数。6.运行一个多文件的程序。
思考题:
1.主函数的参数传递。
2.各种方式函数参数传递方式及有关规定与使用技巧。
3.函数中变量定义位置及其作用域之间关系。4.如何运行一个多文件的程序。
第8章 结构体、共用体和枚举类型
学习目的和要求:
熟练掌握结构体类型的概念、定义以及结构体变量的定义和引用。熟练掌握结构体数组和结构体指针变量的定义和使用。掌握链表的概念和应用。掌握共用体类型的概念、定义以及共用体变量的定义和变量成员的引用。掌握枚举类型的概念、定义以及枚举变量的定义和引用。
教学重点:
结构体变量、结构体数组与结构体指针的定义和引用。教学难点:
结构体数组与结构体指针。
课时分配:
本章讲授4学时,上机实践2学时
讲授内容纲要:
1.结构体类型的概念、定义以及结构体变量的定义和引用。
2.结构体数组和结构体指针变量的定义和使用。
3.链表的概念和应用。
4.共用体类型的概念、定义以及共用体变量的定义和变量成员的引用。5.枚举类型的概念、定义以及枚举变量的定义和引用。思考题:
1.结构体、共用体两种类型的区别。
2.链式存储适合的操作对象。
3.函数参数传递中用结构体和结构体指针之间的优劣比较。
第9章 位运算
学习目的和要求:
掌握六种位运算的运算符、运算规则和功能,并能利用这六种位运算符来解决一些实际问题。
教学重点:
位运算的应用。教学难点:
位段的定义与引用。
课时分配:
本章讲授2学时,上机实践1学时
讲授内容纲要: 1.六种位运算的运算符、运算规则和功能。
2.位段的定义与引用。
思考题:
1.如何测试数字的位数是0还是1?
2.如何实现循环移位?
第10章 文件系统
学习目的和要求:
掌握文件和文件指针的概念,掌握文件的打开、关闭和读写等基本操作。
教学重点:
文件的打开、关闭、读写。
教学难点:
文件的读写。
课时分配:
本章讲授 4 学时,上机实践 1 学时
讲授内容纲要:
1.文件系统相关基本概念及类型设置。
2.文件打开、关闭函数的使用。3.文件读写函数的使用。4.文件定位与随机读写。
5.文件的出错检测和处理。思考题:
1.文件打开和关闭的含义。
2.哪些文件操作函数会改变文件的内部指针位置。
第11章 综合实训
学习目的和要求:
了解程序开发的过程,掌握菜单的设计,更加熟练地应用函数,熟练地使用文件,提高学生的程序设计的能力。
教学重点:
程序开发的步骤、菜单的设计。
教学难点:
菜单的设计。
课时分配:
本章讲授 2学时,上机实践2学时
讲授内容纲要:
1.程序开发的步骤。
2.菜单的设计。
3.所有知识的综合应用:设计学生成绩管理系统。思考题:
1.程序开发的步骤。
2.如何实现游标控制菜单。
第五篇:《C语言程序设计》教学大纲
《C语言程序设计》教学大纲
课程名称:《程序设计语言(C)》 英文名称:The C Programming Language 课程编码: 学
分: 参考学时:64 实验学时:64
适用专业:计算机专业
一、课程目标及要求
《C语言程序设计》是计算机专业的必修课,是我院计算机专业重点课《程序设计语言》的重要组成之一。学习《C语言程序设计》,应使学生达到以下要求:
1、掌握 C 程序的基本结构和 C 语言基本的数据结构,熟悉 C 程序的编辑、编译、调试和运行过程;
2、了解程序设计的一般方法、结构化程序设计思想,熟悉算法描述工具 N-S 流程图的使用及常用算法;
3、能够熟练地阅读用 C 语言编写的程序;
4、能运用结构化程序设计方法编写 C 程序;
5、能调试、运行程序。
二、课程学习要求
本课程是理论与实践相结合的一门课程。要求学生在学习理论知识的同时,积极上机实践,以达到对理论知识的熟练简明应用。
三、教学预修课程:
计算机文化基础
四、教学重点、难点:
本课程的重点是C的基本数据类型及运算、分支结构和循环结构、数组、函数、指针以及结构体的使用。
难点是函数的调用,指针及结构体的使用。
五、教学方法:
理论讲授与实践相结合。
六、教学内容与学时分配建议
(一)总课时数
总课时数为:64*2=128学时,其中,理论为:32+32=64学时;实验:32+32=64学时。
(二)教学内容及课时分配
1.C 语言的结构(2 学时)
(1)程序的构成,main 函数和其他函数。
(2)头文件、数据说明、函数的开始和结束标志。
(3)源程序的书写格式。
(4)C 语言的风格。
(5)程序的编辑、编译、连接步骤及 TURBO C 环境。
实验一
c程序的运行环境和运行一个c程序的方法(2学时)
2. C 数据类型及各种表达式(4 学时)
(1)C 的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法。
(2)C 运算符的种类、运算优先级和结合性。
(3)不同类型数据间的转换与运算。
(4)C 表达式类型(赋值表达、算术表达式、关系表达式、逻辑表达式、条件表达式、逗号表达式)和求值规则。
实验二
数据类型、运算符和表达式(2学时)
3.算法与顺序程序设计(4 学时)(1)算法的概念、特性、算法的描述。
(2)常用算法。
(3)表达式语句、空语句、复合语句。
(4)数据的输入与输出,输入输出函数的调用。
实验三
顺序结构的程序设计(4学时)
4.选择结构程序设计(4 学时)(1)用 if 语句实现选择结构。
(2)用 switch 语句实现多分支选择结构。
(3)选择结构的嵌套。
实验四 选择结构的程序设计(6学时)
5.循环结构程序设计(6 学时)(1)for 循环结构。
(2)while 和 do while 循环结构。
(3)continue 语句和 break 语句。
(4)循环的嵌套。
实验五 循环结构的程序设计(6学时)
6.数组(6 学时)
(1)一维数组的定义、初始化和引用。
(2)二维数组的定义、初始化和引用。(3)字符串与字符数组。
实验六
数组(6学时)
7.函数(6 学时)
(1)库函数的正确调用。
(2)函数的定义方法。
(3)函数的类型和返回值。
(4)形式参数与实在参数,参数值的传递。
(5)函数的嵌套调用和递归调用。
(6)局部变量和全局变量。
(7)变量的存储类别(自动、静态、寄存器、外部),变量的作用域和生存期。
(8)内部函数与外部函数。
实验七
函数(6学时)
8.编译预处理(建议穿插在各章中讲)(4学时)(1)宏定义:不带参数的宏定义;带参数的宏定义。
(2)“ 文件包含”处理
实验八
编译预处理(4学时)
9.指针(10 学时)
(1)指针与指针变量的概念,指针与地址运算符。
(2)变量、数组、字符串的指针及指向变量、数组、字符串的指针变量。通过指针引用以上各类型数据。
(3)用指针作函数参数。
(4)返回指针的函数。
(5)指针数组,指向指针的指针,main 函数的命令行参数。
实验九
指针(10学时)
10.结构体与共用体(10 学时)
(1)结构体的定义、初始化、引用
(2)结构体数组及结构体数组成员的访问(3)结构体类型的指针(4)结构体型与函数(5)结构体处理链表(6)共用体(7)枚举类型
(8)用Typedef定义类型
实验十
结构体与共用体(10学时)
11.位运算(4 学时)
(1)位运算符的含义及使用。
(2)简单的位运算。
实验十一位运算(4学时)
12.文件操作(4 学时)只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘I/O系统)不要求。
(1)文件类型指针(FILE 类型指针)。
(2)文件的打开与关闭函数(fopen,fclose)。
(3)文件的读写函数(fputc,fgetc,fputs,fread,fwrite,fprintf,fscanf 函数),文件的定位(rewind,fseek 函数)。
实验十二文件(4学时)
七、教学参考书目:
1.常玉龙等 《Turbo C 2.0实用大全》 北京航空航天大学出版社 1994 2.谭浩强 《C语言程序设计》第二版 清华大学出版社 1999 3.王丽娟 徐军 戴宝华 荣政 《C程序设计》 西安电子科技大学出版社 2000 4.田淑清等 《C语言程序设计辅导与习题集》 中国铁道出版社 2000 5.谭浩强 薛淑斌 崔武子 《C程序设计(二级)教程》 清华大学出版社 2001 6.崔培伟 《C/C++语言程序设计》 石油大学出版社 2001 7.谭浩强 《C语言程序设计》 清华大学出版社 2002 8.陈朔鹰 陈英 《C语言程序设计习题集(第二版)》人民邮电出版社 2003 9.朱连章等 高级实用程序设计(Visual C++)石油大学出版社 2003 10.方** 宋世发 汤钦林 李太芳 《C语言程序设计》 地质出版社 2006
制 定: 计算机基础及技能教研室 执 笔 人: 冯建平审 定 人: 旭 日 制定时间: 2007年3月