《C语言程序设计》课程教学大纲(优秀)_c的汇编语言程序设计
《C语言程序设计》课程教学大纲(优秀)由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“c的汇编语言程序设计”。
【C语言程序设计】课程教学大纲
【课程代码】
0770105
【学
分】【参考学时】
【讲授学时】
【实验学时】
【实习学时】
0 【课程性质】
专业必修课
【参考教材】1.谭浩强 《C程序设计》(第三版)清华大学出版社
2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)
3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社
【课程基础】
在学这门课之前,学生最好对计算机基本结构、软硬件概念和上机操作知识有一定的了解,但不是必须的。本课程和“计算机导论”课程同时开设,可以互学互用。【适应对象】
本课程适用于计算机科学与技术-计算机科学与技术专业、软件工程-软件工程专业、电子信息科学类-电子信息科学与技术专业以及数学专业的学生学习。【教学目的】
通过对C语言的语法规则、数据类型、数据运算、语句、系统函数、程序结构的学习,使学生了解结构化程序设计基本思想和方法,并养成良好的编程风格,培养出扎实的软件开发基本技能;使学生初步掌握利用计算机处理问题的思维方式和程序设计的基本方法和编程技巧,熟练地应用C语言编写简单的程序,掌握基本的程序调试方法和步骤,为进一步学习后续课程和将来从事应用软件开发奠定良好的基础。【内容提要】
C语言的各种数据类型,运算符,表达式;结构化程序设计语句;数组;函数的概念和用法;编译预处理命令;指针运算及其使用;位运算;文件的操作;算法的基本表示方法及结构化程序设计方法。
第1章 C语言概述
第一节C语言出现的历史背景 第二节C语言的特点
C语言的特点 第三节 简单的C程序介绍
简单C程序的结构 第四节C程序的上机步骤 【基本要求】
了解C语言的历史; 掌握C语言的特点;
掌握C语言的运行环境,初步了解运行一个C语言程序的过程。【参考学时】2学时
【参考资料】[ 1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社 ]
第2章 程序的灵魂-算法
第一节 算法的概念
算法的定义。
第二节 简单算法举例
第三节 算法的特性
算法的特点。
第四节 怎样表示一个算法
用自然语言表示算法;用流程图表示算法;三种基本结构; N-S图;用伪代码表示算法;用计算机语言表示算法。第五节 结构化程序设计方法 【基本要求】
1、掌握算法的概念,算法的特性;
2、掌握结构化程序设计的三种基本结构;
3、掌握用流程图、N_S流程图和伪代码等算法描述方法来描述具体的算法的方法以及结构化程序设计的方法。重点:结构化程序的三种基本结构,顺序,选择,循环;结构化程序设计的方法,自顶向下,逐步细化,模块化设计,结构化编码。难点:用流程图、N_S流程图和伪代码算法描述方法来描述具体的算法。【参考学时】4学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社] 第3章 数据类型、运算符与表达式
第一节 C的数据类型
第二节 常量和变量
常量和符号常量;变量的定义和使用。
第三节 整型数据
整型常量的表示方法;整型常量;整型常量的类型。第四节 实型数据
实型常量的表示方法;实型常量;实型常量的类型。第五节 字符型数据
字符常量;字符变量;字符数据在内存中的存储形式及其使用方法;字符串常量。第六节 变量赋初值 变量赋初值的方法。
第七节 各类数值型数据间的混合运算
运算规则和实例。
第八节 算术运算符和算术表达式
算术运算符;算术表达式。
第九节 赋值运算符和赋值表达式
赋值运算符;赋值表达式。第十节 逗号运算符和逗号表达式
逗号运算符;逗号表达式。【基本要求】
1、掌握C语言所提供的数据类型以及基本数据类型常量的书写方法和变量的定义、赋值和初始化方法;
2、掌握基本运算符的运算规则及优先级别;
3、了解C语言的数据类型体系和运算符体系;
4、能正确构成有基本数据类型组成的基本类型的表达式。
重点:基本数据类型常量的书写方法和变量的定义、赋值、初始化、使用方法;基本运算符的运算规则及优先级别;表达式的构成规则和计算。难点:运算符的优先级别;混合表达式计算;逻辑值的表示方法。【参考学时】4学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社] 第4章 最简单的C程序设计-顺序程序设计
第一节 C语句概述
C语言中的语句类型。第二节 赋值语句
赋值语句的用法。
第三节 数据输入输出的概念及在C语言中的实现
输入、输出概念;输入/输出实现方式。第四节 字符数据的输入输出
putchar函数的使用;getchar函数的使用。第五节 格式输入与输出
printf函数的使用;scanf函数的使用。第六节 顺序结构设计程序举例 【基本要求】
1、了解C语言所包含的语句;
2、熟练掌握赋值语句以及字符输入输出、格式输入输出函数的使用方法;
3、学会按照一定的格式输出相应的数据类型,能正确设计顺序结构的程序。重点:赋值语句的格式和功能;字符和格式输入/输出函数的调用格式和功能。难点:格式输入/输出函数中格式控制字符的使用。【参考学时】4学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第5章 选择结构程序设计
第一节 关系运算符和关系表达式
关系运算符及其优先次序;关系表达式。第二节 逻辑运算符和逻辑表达式
逻辑运算符及其优先次序;逻辑表达式。第三节 if语句
if语句的三种形式;if语句的嵌套;条件运算符。第四节 switch语句
swtich语句的用法。第五节 程序举例 【基本要求】
1、掌握关系运算符、逻辑运算符的运算规则以及关系表达式和逻辑表达式的使用;
2、掌握条件运算符、条件表达式的使用;
3、熟练掌握条件选择语句if语句的使用;
4、熟练掌握多分支语句switch语句的使用。
重点:关系运算符、逻辑运算符、条件运算符的使用,混合运算时的优先级别; if语句的语法格式;if语句的嵌套;使用switch语句实现多分支结构的程序设计方法。
难点:运算符混合运算的优先级别;if语句的嵌套;switch语句的使用。【参考学时】4学时
【参考资料】[1.谭浩强《C程序设计》(第三版)清华大学出版社2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第6章 循环控制
第一节 概述
C语言中实现循环的语句类型。第二节 goto以及用goto语句构成循环
goto语句的用法。第三节 while语句
while语句的用法。第四节 do-while语句
do-while语句的用法。第五节 for语句
for语句的用法。第六节 循环的嵌套
循环嵌套的种类;嵌套语法。第七节 几种循环的比较
第八节 break语句和continue语句
break语句;continue语句。第九节 程序举例 【基本要求】
1、熟练掌握循环结构的控制语句:while语句、do_while语句、for 语句的用法;
2、掌握三种循环控制语句的区别和联系;
3、掌握break、continue、goto语句的功能和语法格式;
4、能够根据循环结构的要求正确选取循环语句来实现循环,掌握循环程序的执行过程。
重点:三种循环语句while、do_while、for的使用;break、continue、goto语句的使用;循环程序的执行过程;嵌套的循环程序。
难点:循环程序的执行过程;嵌套的循环程序。【参考学时】4学时
【参考资料】[谭浩强 《C程序设计》(第三版)清华大学出版社2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第7章 数组
第一节 一维数组的定义和使用
一维数组的定义;一维数组元素的引用;一维数组的初始化;一维数组程序举例。第二节 二维数组的定义和使用
二维数组的定义;二维数组的引用;二维数组的初始化;二维数组程序举例。第三节 字符数组
字符数组的定义;字符数组的初始化;字符数组的引用;字符串和字符串结束标志;字符数组的输入输出;字符串处理函数;字符数组的应用。【基本要求】
1、掌握数组的概念、一维数组、二维数组和多维数组的定义和使用;
2、掌握字符数组、字符串的区别和具体应用;
3、掌握处理字符串的系统函数的使用方法。
重点:一维数组、二维数组和多维数组的定义和使用;字符串的处理函数的使用。难点:字符数组、字符串的区别,存放若干字符和存放字符串的字符类型数组的差别。【参考学时】6学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第8章 函数
第一节 概述
函数的作用及分类。第二节 函数定义的一般形式
无参函数的定义形式;有参函数定义的一般形式;空函数;形参声明的方式。第三节 函数参数和函数的值
形式参数;实际参数;函数的返回值。第四节 函数的调用
函数调用的一般形式;函数调用的方式;对被调函数的声明;函数原型。第五节 函数的嵌套调用
函数嵌套调用的含义及其方式。第六节 函数的递归调用
递归;函数递归调用的方式。第七节 数组作为函数参数
数组元素作为函数实参;数组名作为函数参数;多维数组名作为函数参数。第八节 局部变量和全局变量
局部变量;全局变量;局部变量和全局变量的使用。第九节 变量的存储类别
动态存储方式和静态存储方式;auto变量;用static声明局部变量;register变量;用extern声明外部变量;用static声明外部变量;变量的声明和定义的区别。第十节 内部函数和外部函数
内部函数;外部函数。
第十一节 如何运行一个多文件的程序
在Turbo C集成环境下编译连接多文件结构的方法。【基本要求】
1、熟练掌握函数的结构、设计方法和调用方法;
2、掌握函数调用中数据传递的两种方式——值传递和地址传递的区别;
3、掌握C程序中变量的存储类型以及使用;
4、掌握嵌套调用函数、递归函数的使用并能正确使用各种常用的系统函数。
重点:函数的定义和调用方法;调用函数时数据传递方法;常用系统函数的使用。难点:值传递和地址传递的区别;编写递归函数。【参考学时】8学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第9章 预处理命令
第一节 宏定义
不带参数的宏定义;带参数的宏定义。第二节 “文件包含”处理
“文件包含”命令及其使用。第三节 条件编译
条件编译命令及其使用。【基本要求】
1、掌握宏定义和宏替换的一般方法;
2、掌握文件包含的处理方法;
3、了解条件编译的作用和实现方法。
重点:无参数的宏定义和宏替换;带参数的宏定义和宏替换;文件包含处理。难点:带参数的宏定义和宏替换。【参考学时】1学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第10章 指针
第一节 指针和地址的概念
内存地址及其访问方式;指针。第二节 变量的指针和指向变量的指针变量
变量的指针;指针变量的定义;指针变量的引用;指针变量作为函数参数。第三节 数组和指针
指向数组元素的指针;通过指针引用数组元素的方法;数组名指针变量作为函数参数的用法;指向多维数组的指针和指针变量。第四节 字符串和指针
字符串的表示形式;字符串指针作为函数参数;使用字符指针变量与使用字符数组的区别。
第五节 函数的指针和指向函数的指针变量
用函数指针变量调用函数;用指向函数的指针作为函数参数。第六节 返回指针值的函数
返回指针的函数的定义及其使用。第七节 指针数组和指向指针的指针
指针数组的概念;指向指针的指针;指针数组作main函数的形参。第八节 有关指针的数据类型和指针运算的小结
指针数据类型;指针运算;void指针类型。【基本要求】
1、掌握地址和指针的概念及二者之间的关系;
2、熟练掌握定义指针变量和访问该变量的方法;
3、掌握指针变量的各种使用方法。
重点:指针变量的定义、初始化和赋值方法;利用指向变量、数组、字符串的指针变量来正确引用变量、数组、字符串;指针变量作为函数参数的情况;
难点:指针变量作为函数参数的情况;指向多维数组的指针变量和多维数组的地址。【参考学时】9学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第11章 结构体与共用体
第一节 概述
结构体类型的作用;结构体类型的定义。第二节 定义结构体变量的方法
定义结构体变量的三种方法。第三节 结构体变量的引用
结构体变量的引用原则。第四节 结构体变量的初始化
结构体变量的初始化方法。第五节 结构体数组
结构体数组的定义;结构体数组的初始化;结构体数组的应用。第六节 指向结构体类型数据的指针
指向结构体变量的指针;指向结构体数组的指针;用结构体变量和指向结构体的指针作为函数参数。
第七节 用指针处理链表
链表的概念;链表的结构;处理动态链表的函数;动态链表的建立;链表的输出;链表的删除操作;链表的插入操作;链表的应用。第八节 共用体
共用体的概念;共用体变量的引用方式;共用体类型数据的特点。第九节 枚举类型
枚举的概念;枚举型数据的定义和使用。第十节 用typedef定义类型
typedef定义类型的方式。【基本要求】
1、熟练掌握结构体构造数据类型的定义、初始化和使用;
2、掌握链表处理的过程以及共用体数据类型的定义和使用;
3、了解枚举类型的定义和使用和typedef自己定义类型的方法。
重点:结构体、共用体、枚举类型的特点和使用;结构体型变量、数组、指针变量的定义、初始化和成员引用方法;链表的建立,插入和删除等操作。
难点:嵌套的结构类型数据的处理;链表处理。【参考学时】8学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第12章 位运算
第一节 位运算和位运算符
“按位与”运算符;“按位或”运算符;“异或”运算符;“取反”运算符;左移运算符;右移运算符;为运算赋值运算符。第二节 位运算举例 第三节 位段
位段的概念;位段的使用。【基本要求】
掌握位运算符和位运算的基本操作。
重点:位运算符的功能;位段的概念及使用。难点:位段的使用。【参考学时】2学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]
第13章 文件 第一节 C文件概述
文件的概念;文件的类型和处理方式。第二节 文件类型指针
文件指针的定义方法。第三节 文件的打开与关闭
文件的打开;文件的关闭。第四节 文件的读写
fputc函数及其使用;fgetc函数及其使用;fread函数和fwrite函数及其使用;fprintf函数和fscanf函数及其使用;其他读写函数。第五节 文件的定位
rewind函数;fseek函数和随机读写;ftell函数。第六节 出错的检测
ferror函数;clearerr函数。第七节 文件输入输出小结
【基本要求】
1、要求掌握缓冲文件系统中有关文件操作的系统函数的使用方法;
2、掌握设计并编写对文件进行处理的实用程序。
重点:缓冲文件系统中“文件型”指针的概念;有关文件操作的系统函数的使用。难点:文件处理系统函数的使用,掌握各个函数中参数的功能和区别。【参考学时】4学时
【参考资料】[1.谭浩强 《C程序设计》(第三版)清华大学出版社 2.谭浩强、张基温、唐永炎《C语言程序设计教程》高等教育出版社(第二版)3.谭浩强 《C程序设计习题及上机指导》 清华大学出版社]