第一篇:《C语言程序设计》课程教学设计
《C语言程序设计》课程教学设计
理学院电子科学系计算机基础教研室 赵永梅
《C语言程序设计》是大学计算机基础教学系列中的核心课程之一,是计算机及信息类专业本科生必修的一门专业基础课。它讲述了C语言的语法、数据类型、结构化程序设计方法等方面的内容,从而形成一个比较完整的、系统的计算机及信息类专业计算机程序设计基础教学内容,是学员从技术的角度学习计算机的主要基础课,具有不可替代的基础性、先导性和全局性作用。
一、课程教学对象分析
本课程的教学对象是培训部计算机类专业一、二年级本科层次学员。所有教学对象都应该已经学习过《大学计算机基础》,但由于学员的计算机基础的较大差异,针对教学对象的实际情况,应当根据教育部高等学校计算机科学与技术教学指导委员会《关于进一步加强高等学校计算机基础教学的意见》暨计算机基础课程教学基本要求,给以适当的分类、分层次教学,即一般要求和较高要求,使学员掌握C语言的简单程序设计的基本技术和方法。
二、课程基本理念
本课程以培养复合型的专业技术人才为目标,全面贯彻素质教育和创新教育思想,着力提高人才培养质量。通过本课程的学习应使学员掌握正确的程序设计方法与思想。具有初步的利用计算机分析问题、解决问题的意识与能力,为学员将来到社会从事专业应用软件的开发打下重要基础。
三、课程设计思路
以本课程的基本理念为指导,对课程目标分别从知识与技能、过程与方法、情感态度与价值观等方面进行了具体明确的阐述。课程内容与教学要求主要阐述学员学习本课程必须掌握的内容要点及达到的基本要求,并注明了重点和难点。在实施建议部分,分别对课程教学实施、课程考核评价、教材选编使用、课程资源开发与利用以及教学保障等提出了明确建议。本课程是一门实践性很强的课程,应改变传统的注重语法规则的应试型教学模式,合理安排教学实践环节,加强程序设计技能的教学,以培养学员的专业技能,突出学员学习的主体地位。可通过与实际应用结合紧密的例题,增设小型工程应用项目的研究或运用案例式教学,提高学员编程的技巧。
四、课程教学目标
以《计算机程序设计》的课程标准为参考,根据教育部新的精神和要求,通过课堂教学与实践教学,让学员了解《C语言程序设计》这门课程的性质、地位和在工程应用中的价值;熟练掌握C语言的语法,掌握程序设计的基本思想和方法,具备良好的程序设计风格和程序的调试技能。能够利用软件工程的思想,运用数据结构基本知识和算法,解决实际生活中或者专业课中涉及到的实际问题,从而培养学员分析问题、解决问题的能力。
五、课程教学内容
(一)教学内容
根据《C语言程序设计》课程标准,参照相关专业人才培养方案以及后续课程的开设情况,讲授8个教学单元的教学内容。
第一单元:C语言概述
教学内容:C语言的特点、C语言源程序简介、C语言源程序的基本结构、C程序的编辑、编译、链接和运行
学时分配:讲课2学时,实习2学时
目的和要求:了解C语言及其特点、掌握C语言源程序基本结构、掌握C语言源程序集成开发环境
重 点:C语言源程序的基本结构。难 点:C语言源程序集成开发环境。第二单元:基本数据类型及其运算 教学内容:C语言的基本数据类型及其分类、变量与常量、各种运算符及其表达式
学时分配:讲课4学时,实习2学时
目的和要求:了解C语言的数据类型、掌握常量与变量的概念和使用方法、掌握C语言中的整型数据、浮点型数据和字符型数据的表示方法、掌握各种运算符和表达式的使用方法、掌握各类数值型数据之间混合运算的方法
重 点:基本数据类型及其分类 难 点:各种运算符和表达式的使用 第三单元: 结构化程序设计
教学内容:算法的概念及特性、算法的描述、结构化程序设计方法、C的语句、赋值语句、数据的输入与输出、顺序结构程序设计、关系运算、逻辑运算和条件运算、if语句、switch语句、while、do„while、for、break、continue语句、循环结构程序设计
学时分配:讲课22学时,实习6学时
目的和要求:理解算法的概念和特性、掌握用N-S图描述算法、初步了解结构化程序设计的思想、掌握用N-S图描述三种基本结构、掌握C语句的种类和特点、掌握数据输入、输出的方法、掌握顺序结构程序设计方法、掌握关系运算、逻辑运算和条件运算、掌握if语句和switch语句的执行过程、掌握选择结构程序设计方法、掌握三种循环语句的执行过程和区别、掌握break和continue语句的用法、掌握循环结构程序设计方法。
重 点:算法的概念及特性、C的语句、逻辑运算,if语句和switch语句构成选择结构、三种循环语句
难 点:掌握用N-S图描述算法、数据的输入与输出、switch语句的执行过程、循环结构程序设计
第四单元:函 数
教学内容:函数的定义与声明、函数的调用与返回、数组作为函数的参数、变量的存储类别、内部函数和外部函数
学时分配:讲课4学时、实习2学时
目的和要求:理解函数的基本概念、掌握函数的定义、声明、调用和返回、掌握数组作为函数的参数的特性、掌握变量的作用域及存储方式、了解内部函数和外部函数的使用方法及区别
重 点: 函数的定义和调用,数组作函数的参数 难 点: 函数的递归调用和嵌套调用 第五单元:数 组
教学内容:数组的概念、一维数组的定义、引用和初始化、二维数组的定义、引用和初始化、字符数组的定义、引用和初始化、字符串处理函数
学时分配:讲课6学时、实习2学时
目的和要求:理解数组的基本概念、掌握数组的定义、初始化和数组元素的引用方法、掌握字符数组和字符串处理函数的使用、掌握与数组有关的常用算法(冒泡排序和选择排序)
重 点:数组的定义、初始化和数组元素的引用 难 点:二维数组和字符数组的应用 第六单元:结构体和共用体
教学内容:结构体类型及其使用方法、指向结构体类型数据的指针、用指针处理链表、共用体类型及其使用方法、枚举类型及其使用方法、用typedef定义新类型
学时分配:讲课4学时、实习2学时
目的和要求:理解结构体、共用体类型和枚举类型的概念、掌握结构体、共用体和枚举类型数据的使用、了解用指针处理链表的方法和意义、掌握typedef命令的使用方法
重 点:结构体、共用体类型和枚举类型数据的使用方法 难 点:指针处理链表的方法 第七单元:指 针 教学内容:指针的概念、指针与变量、指针与数组、指针与字符串、指针与函数
学时分配:讲课6学时、实习2学时
目的和要求:理解指针的概念、掌握指针变量的定义、引用方法及运算、掌握通过指针访问数组的方法、掌握通过指针处理字符串的方法、掌握使用指针作为函数的参数、掌握函数指针、掌握指针数组和指向指针的指针
重 点:指针的概念、指针作函数的参数、数组的指针和字符串的指针
难 点:函数的指针、指针数组和指针的指针 第八单元:文 件
教学内容:文件类型指针、文件的打开与关闭、文件的读写 学时分配:讲课2学时,实习2学时
目的和要求:掌握文件概念及文件的打开与关闭、掌握文件的顺序和随机读写、了解文件的出错检测
重 点:文件的打开、关闭和读写函数的使用 难 点:文件类型指针
(二)教学实践
本课程是一门实践性很强的课程,上机实习是教学过程中的一个重要环节,目的是使学员熟练掌握C程序编辑、编译、链接和运行的基本步骤,提高学员在TURBOC环境下,运用C语言对具体问题进行程序设计的能力。按照课程标准,本课程共安排20 学时的上机实习。
为了更好地开展教学实践,给每位学员统一发放了与主讲教材配套的上机指导书《C程序设计上机实践指导书》,以辅助理论教学,提高学员的程序设计的能力。
实践教学内容与课时分配如下: 实验1: TURBOC 2.0环境下的基本操作 课时分配:2学时 实验目的:
(1)掌握TURBOC 2.0的基本操作;
(2)掌握TURBOC 2.0环境下编辑、编译、链接和运行程序的基本方法;
(3)初步了解C语言源程序的基本结构。实验2 :基本数据类型及其运算 课时分配:2学时 实验目的:
(1)掌握C语言的基本数据类型,学会变量的定义和赋值;(2)熟练掌握C语言有关运算符、表达式的使用方法;
(3)进一步熟悉C语言程序的编辑、编译、链接和运行的基本步骤。实验3: 顺序结构程序设计 课时分配:2学时 实验目的:
(1)熟练掌握各种基本类型数据的输入、输出方法;(2)熟练掌握赋值语句的使用方法;
(3)熟练掌握格式输入、输出函数的使用方法。实验4 :选择结构程序设计 课时分配:2学时 实验目的:
(1)掌握关系表达式、条件表达式以及逻辑表达式;(2)熟练运用if语句的不同形式编写程序;(3)掌握switch语句的使用方法。实验5: 循环结构程序设计 课时分配:2学时 实验目的:
(1)熟练掌握while,do„while,for语句的使用;(2)掌握在程序设计中用循环方法实现的一些常用算法;(3)进一步熟悉调试程序的方法。实验6: 函数 课时分配:2学时 实验目的:
(1)掌握实参和形参在函数间进行“值传递”的对应关系和传递方法;
(2)掌握函数的嵌套调用和递归调用;(3)理解变量的存储类别和作用域。实验7: 数组 课时分配:2学时 实验目的:
(1)掌握数值型数组的初始化和输入、输出的方法;(2)掌握字符数组的初始化和字符串的输入、输出方法;(3)掌握数组下标的表示方法。实验8: 结构体与共用体 课时分配:2学时 实验目的:
(1)掌握结构体类型和结构体变量的定义和使用方法;(2)学会构造合理的数据结构解决实际问题的方法;(3)理解动态内存分配的概念;(4)掌握简单链表的定义和操作;(5)掌握共用体数据的定义和使用方法;(6)掌握枚举类型数据的定义和使用方法。实验9: 指针 课时分配:2学时 实验目的:
(1)理解指针和地址的概念;掌握指针变量的定义和使用方法;(2)掌握用指针处理数组的方法;(3)掌握字符串指针的使用方法;(4)掌握函数的指针的使用方法;(5)掌握指针数组和指针的指针的使用方法;(6)掌握指针变量的运算。实验10: 文件 课时分配:2学时 实验目的:
(1)掌握文件的打开和关闭方法以及文件的读写方法;(2)了解文件的定位以及出错的检测。
六、教学方法手段
(一)教学方法
通过对基础知识的讲解,突出基本概念、基本思想的讲授和基本技能的训练,结合案例精讲多练,注重讲解与实际应用结合紧密的例题,加强实践练习。在教学过程中,贯穿“讲授式”、“启发式”、“案例式”、和“研讨式” 等教学方法。
注意教学方法的灵活性,教学过程中,借助现有的多媒体设备,灵活运用教学方法,再现问题情景,增加互动氛围,培养学员分析问题、解决问题的能力和探究意识。
作业量每次3-5题,难度应当适中,教员应做到定时批阅,及时讲评。
注重实践环节。实习课(20学时),在教员指导下,单人单机自主进行。实习内容根据程序设计基本技能中的要求合理设计,依次实施。
适当增加一些小型项目或以大作业的形式,使学员进一步加强学习的自主性,培养解决综合问题的能力。
(二)备课与课堂设计 1.备课
按照人才培养方案、课程标准和教学基本要求,在开课前需要深刻理解本课程各单元的主要教学内容,以课程教学组为基本单位组织集体备课,统一教学要求、统一授课标准、统一课程进度。认真撰写教案、制作课件并对针对重点如何突出、难点如何突破进行讨论与试教练讲。
2.课堂设计
将课程的全部教学内容分解落实到有限的25次课堂面授(50学时)和10次自主上机实习(20机时)之中去。在开课之前适当时候组织学员进行摸底考试,并且在开课后的两周之内及时组织召开教学联系会,全面了解学员对C语言的掌握情况和掌握程序设计方法的情况,以便因材施教,有的放矢。
七、教学评价
本门课程采用笔试与上机考试(机试)成绩相结合的方式评价。笔试成绩占70%,上机考试成绩占30%。
第二篇:C语言程序设计课程教学设计
C语言程序设计课程教学设计
苏小红
一 课程内容体系 :
基本描述
课程名称: C 语言程序设计
英文译名 : C PROGRAMMING LANGUAGES 总 学 时: 50 ; 讲课学时: 30 ; 实验学时 : 0 ; 上机学时 : 30 授课对象 :非计算机专业 本科生 授课单位 :计算机科学与技术学院 主讲教师 :苏小红等
先修课程 :高等数学,计算方法 课程要求 :必修课 课程分类 :专业基础课 开课学期 : 2
教学定位 :
本课程为专业基础课,属我校所有理工科专业本科教学计划中的主要必修课程之一。在计算机教育方面,C 语言是为数不多的与国外保持内容同步的课程之一,可见,它在本科生教学中的地位之重要不言而喻。由于 C 语言是许多后续专业课程的基础,因此,在本科生教学体系中中,C 语言教学仅是起点,而非终点。本着面向未来的精神,本课程的教学宗旨是要努力把 C 语言从应试课程转变为一种实践工具,主要目的不再局限于使学生单纯地了解和掌握 C 语言的基本语法规范,而是要致力于培养学生运用 C 语言解决实际问题的编程能力,以 C 语言为工具,介绍程序设计的基本思想和方法,培养学生无论以后在学习、工作中使用什么语言编程,都能灵活应用这些思想和方法的能力。
知识点与学时分配 :
第 1 章 程序设计 ABC(1 学时)
计算机与人之间的关系、计算机与程序设计语言之间的关系、程序设计语言的故事、程序设计语言的工作机理。
第 2 章 数据类型、运算符与表达式(3 学时)
为什么引入数据类型、C 语言基本数据类型、常量、变量、算术运算符、关系运算符、逻辑运算符、赋值运算符、增 1 减 1 运算符、强制类型转换运算符、位运算符、逗号运算符、运算符的优先级和结合性、各种运算表达式。
第 3 章 简单的 C 程序设计(2 学时)
C 语句分类、表达式语句、复合语句和空语句、字符输入输出函数、格式输入输出函数。第 4 章 程序的控制结构(5 学时)
算法的概念及其描述方法、条件语句、循环语句、流程转移控制语句(goto、continue 和 break)、自顶向下、逐步求精的结构化程序设计方法。第 5 章 函数(4 学时)
程序结构的艺术、函数定义、函数调用、函数返回值、函数原型、参数传递、变量的作用域和存储类,函数封装、模块分解原则、模块化程序设计方法。第 6 章 数组(4 学时)
一维数组、二维数组、向函数传递一维数组、向函数传递二维数组、字符数组、字符串处理函数。第 7 章 指针(4 学时)
指针的概念、为什么引入指针的概念、变量的指针作函数参数、字符指针做函数参数、指针和数组之间的关系、指针数组、代码风格、防御性程序设计。第 8 章 结构体和共用体(4 学时)
结构体类型、结构体变量、结构体数组、向函数传递结构体指针、共用体类型。第 10 章 文件操作(2 学时)
计算机中的流、文件、基本文件操作、高级文件操作。复习总结(1 学时)
第三篇:《C语言程序设计》课程教学大纲
《C语言程序设计》课程教学大纲
一、课程教学目的
本课程系统学习C语言的基本知识和基本语法,较好地训练学生解决问题的逻辑思维能力以及编程思路和技巧,使学生具有较强的利用 C 语言编写软件的能力,为培养学生有较强软件开发能力打下良好基础。
二、课程教学要求
通过本课程的学习,应熟练掌握 C 语言中的基本知识、各种语句及程序控制结构,熟练掌握 C 语言的函数、数组、指针、结构体、链表等数据结构的基本算法;并能熟练地运用 C 语言进行结构化程序设计;具有较强的程序修改调试能力;具备较强的逻辑思维能力和独立思考能力。
三、课时分配
本学科计划学时为246学时,其中理论与实训课时比例为7:3。
四、课程教学重、难点
课程教学重点:掌握C语言变量类型及不同类型常量的表示;标准的输入输出函数的使用;运算符及常用数学函数的使用;控制流程、数组和指针的使用;结构体、链表的构造使用;函数结构、函数参数传递及递归等方面的知识;基本的文件操作。难点:指针的使用、结构体链表的构造和使用及函数的参数传递。
五、课程教学方法(或手段)
本课程实践性较强,故采用讲授和上机操作相结合的方式进行教学。
六、课程教学内容 第一章 C语言概述 1.教学内容
(1)编程历史的回顾、程序设计介绍(过程式,面向对象,函数式,逻辑式);(2)C语言的历史背景、特点;(3)C语言源程序的格式和程序结构;(4)C程序的上机步骤。2.重、难点提示
(1)重点:掌握简单的 C程序格式,包括main()函数、数据说明、函数开始和结束标志等;
(2)难点:编程入门以及对语言的理解。第二章 算法 1.教学内容
(1)算法的概念及特性;评价算法优劣的方法(时间和空间);(2)简单算法举例;
(3)算法的表示(自然语言、流程图、N-S流程图);(4)结构化程序设计的基本思想及基本步骤。2.重、难点提示
(1)重点: 算法流程图三种基本结构(以后各章学习中利用流程图强化对程序的理解);
(2)难点: 算法概念以及对结构化程序设计思想的理解。第三章 数据类型、运算符与表达式 1.教学内容
(1)基本数据类型及其常量的表示法(字符和字符串常量),各种数制(八、十、十六进制)的整型数和长整型数,实型数(float和double);
(2)变量的类型说明、初始化及引用;(3)运算符与表达式: 2.重、难点提示
(1)重点: 掌握 C的几种基本数据类型,不同类型数据间的混合运算规则;不同运算符的使用特点,清楚每种运算符的优先级与结合性;各种表达式的含义与使用要点。
(1)难点:不同类型数据间的混合运算;运算符的优先级与结合性。第四章 最简单的 C 程序设计 — 顺序程序设计 1.教学内容
(1)C程序结构和语句的构成;
(2)顺序结构程序的设计:赋值语句的使用要点;(3)数据的输入与输出: 2.重、难点提示
(1)重点: 顺序结构程序的表达式语句形式; 输入/输出函数的表示与调用方法; 利用流程图加深对顺序结构程序的理解。
(2)难点: 格式输入与输出表示中各种格式字符的表示含义。
第五章 选择结构程序设计 1.教学内容
(1)关系运算符和关系表达式;(2)逻辑运算符和逻辑表达式;
(3)if语句(if;if„else„;if„else if„else„);(4)switch和break语句。2.重、难点提示
(1)重点:关系、逻辑运算符及其表达式的语法形式;掌握if语句;switch语句; 利用流程图加深对选择结构程序的理解。
(1)难点: 关系与逻辑运算符表达式的结果判定; if语句嵌套的层次判定;程序中使用break语句运行结果的判定。第六章 循环控制 1.教学内容
(1)用goto语句构成循环、for语句、while语句和do„while语句;(2)循环嵌套;
(3)break,continue语句。2.重、难点提示
(1)重点:掌握while语句与do while语句的结构,for语句的结构,其使用方法;常见的循环嵌套形式;正确区分for语句、do„while语句与while语句;break语句和continue的应用及其区别;
(2)难点:分析总结常用的程序设计方法及算法特点,并能编写相应的程序。第七章 数组 1.教学内容
⑴ 数组的含义与存储特点; ⑵ 数组的定义与使用; ⑶ 字符数组。2.重、难点提示
(1)重点:掌握一维数组、二维数组;字符数组与字符串的概念与定义方法,常用的字符串处理函数。
(2)难点:数组下标的起始数问题;利用数组形式进行程序设计的一般方法与典型算法。
第八章 函数 1.教学内容 ⑴ 函数的定义;
⑵ 函数的调用(一般调用、嵌套调用、递归调用),return语句; ⑶ 参数的传递方式:形式参数与实在参数; ⑷ 局部变量与全局变量; ⑸ 变量的动态存储与静态存储; ⑹ 内部函数与外部函数。2.重、难点提示
(1)重点: 掌握函数定义的一般形式;函数的调用的几种形式;函数嵌套调用的一般过程;数组名作为函数的参数的一些特点;局部变量与全局变量的概念及它们的使用特点。
(2)难点:不同的函数参数传递方法在程序中应用的结果判定;利用函数调用方法实现程序设计中涉及的参数定义、参数传递以及返回值问题;函数调用的理解。第九章 预处理命令 1.教学内容
⑴ 预处理的概念与特点; ⑵ 符号常数和宏的定义; ⑶ “文件包含”处理。2.重、难点提示
(1)重点:宏定义的方法;“文件包含”与预处理的应用。(2)难点:宏定义的方法。第十章 指针 1.教学内容
⑴ 指针与地址的概念;
⑵ 指针变量的定义,初始化;指针变量的引用(取地址运算符&及指针运算符*);指针变量作为函数参数的应用;
⑶ 指针与数组(数组的指针和指向数组的指针变量); ⑷ 字符串的指针和指向字符串的指针变量;
⑸ 函数的指针和指向函数的指针变量、返回指针值的指针函数; ⑹ 指针数组和指向指针的指针;
⑺ 对main()函数命令行参数的基本了解。2.重、难点提示
(1)重点:指针变量定义、初始化和引用;数组的指针和指向数组的指针变量;字符串的指针和指向字符串的指针变量;指针数组与指向指针的指针。
(2)难点:指针概念深刻理解;区别指向数组的指针和指针数组;指向指针的指针; 有关指针的数据类型定义和指针的相关运算。第十一章 结构体与共用体 1.教学内容
⑴ 定义结构体类型变量的方法;
⑵ 结构体变量的引用与结构体变量的初始化; ⑶ 结构体数组与指向结构体数据的指针; ⑷ 指向结构体类型数据的指针及用指针处理链表; ⑸ 共用体; ⑹ 枚举类型;
⑺ 用typedef定义类型。2.重、难点提示
(1)重点:掌握结构体类型变量的定义方法;结构体类型变量的引用方法;结构体类型变量如何在定义的同时初始化; 通过图示正确理解链表的概念和形态,共同体的含义、共同体类型变量的定义方法。
(2)难点:结构体与共用体概念的掌握;各种结构体结构的定义。第十二章 位运算 1.教学内容
⑴ 运算符和位运算; ⑵ 位运算举例; ⑶ 位段。2.重、难点提示
(1)重点:掌握各种位运算符,运算规则和优先级。(2)难点:各种位运算符的运算规则和优先级。第十三章 文件 1.教学内容
⑴ 文件类型指针; ⑵ 文件的打开与关闭; ⑶ 文件的读写; ⑷ 文件的定位。2.重、难点提示
(1)重点:掌握文件操作的相关标准函数;(2)难点:文件的读写和定位操作。
七、实验教学内容
实验项目(一):C 语言中控制语句的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握各类控制语句的书写格式,能在具体问题解决时给出合适的程序控制结构;用分支结构实现程序的条件控制;用循环结构实现程序中重复执行操作的控制。(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(二):C 语言中数组的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握数组这种构造类型的特点,如何用数组数据对象并对数据对象进行处理;熟练掌握一维数组的定义、引用、初始化,用一维数组来对字符进行处理;掌握二维数组的定义、引用、初始化,用二维数组实现矩阵的有关方法算法。(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(三):C 语言中函数的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
C语言中用函数来实现子功能模块,掌握系统函数的调用方法及用户自定义函数的定
义、调用方法;用自定义函数来实现一个具体问题;用自定义函数的嵌套调用来实现一个复杂问题。
(4)主要仪器:计算机(5)实验考核方法:随堂考查 实验项目(四):C 语言中指针的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握指针变量的运用,通过指针引用数组元素的方法,函数指针变量作函数的参数;在程序中进行指针变量的运算操作,指针变量作函数的参数;数组元素的指针。(4)主要仪器:计算机(5)实验考核方法:随堂考查
实验项目(五):C 语言中结构体与链表的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握结构体类型变量的定义和使用;结构体类型数组的概念和应用;链表的创建与使用;检共用体的概念与使用。(4)主要仪器:计算机(5)实验考核方法:随堂考查
实验项目(六):C 语言中文件的使用(1)项目类别:必做(2)项目性质:综合性(3)项目主要目的要求:
掌握文件以及缓冲文件系统、文件指针的概念;学会使用文件打开、关闭、读、写等文件操作函数;学会用缓冲文件系统对文件进行简单的操作。(4)主要仪器:计算机(5)实验考核方法:随堂考查
八、课程考核方式 1.考核方式:
闭卷考试 2.成绩构成:
平时+期末
九、选用教材和参考书目
[1]《C程序设计》(第三版),谭浩强编,清华大学出版社,2007。
[2]《数据结构—用C语言描述》(第二版),唐策善编,高等教育出版社,2004。[3]《程序设计基础与C语言》(第一版),梁力.郭晓玲.高浩编,西安电子科技大学出版社,2001。
[4]《C语言程序设计》(第二版)刘德恒编,电子工业出版社,2001。
第四篇:c语言程序设计课程教学大纲2012
《C语言程序设计》课程教学大纲
课程编号:
适用专业:机械制造、数控、焊接 专业责任教学单位:机电工程系 总学时:36学时 考核形式:闭卷 笔试 课程类型:专业基础课 选读方式:必修课 教学目的:
我们的时代是一个离不开计算机的时代,对于机械制造、数控、焊接专业学生,程序设计是学生必备的技能之一。C语言是一种广泛使用的结构化程序设计语言,它既具有高级语言的特点,又具有低级语言的特点,它的通用性与灵活性使得它比一般的程序设计语言更加通俗易懂。
本课程从介绍C语言的基础知识入手,引入“模块化程序设计”思想,强调实例教学,并结合大量的上机实践,要求学生在模仿、实践中逐步学会编写程序,提高阅读程序的能力及实际操作能力和技能,为以后更好的理解程序,学习程序,开发软件打好基础。
主要教学内容及要求:
第一部分 进入C语言程序世界(2学时)
1、要求:了解C语言的特点,掌握C程序的结构组成,算法的概念及其表示方法,熟悉VC编程环境使用。
2、内容:
1.1 了解C语言程序的结构 1.2 设计简单的C语言程序 1.3 C程序的调试与运行 1.4 计算机语言的发展
3、重点:C程序的结构、VC编程环境、算法的概念及其表示、编写最简单的C程序。难点:编写简单的C程序。
第二部分 编制C程序设计的基础知识(2学时)
1、要求:熟练掌握C语言基本数据类型和表达式,掌握并熟练运用常用的I/O函数。
2、内容: 2.1 常量与变量
2.2 C语言的基本数据类型 2.3 C语言的常用运算符与表达式
3、重点:C语言基本类型、C语言常用表达式。难点:C语言表达式运算符优先级的判断。第三部分 顺序结构程序设计(2学时)
1、要求:了解三种结构程序设计的思想,掌握顺序化结构程序设计的方法。
2、内容:
3.1 结构化程序设计的三种基本结构 3.2 数据的输入与输出 3.3顺序结构程序设计举例
3、重点:顺序结构程序设计,printf与scanf函数的使用。难点:printf与scanf函数的使用。
4、实验:
实验
一、输入/输出函数编程实训 实验
二、顺序程序结构设计
第四部分 选择结构程序设计(2学时)
1、要求:掌握选择结构程序设计的方法,if语句,switch语句的应用。
2、内容:
4.1 选择结构程序设计简介 4.2 if语句的典型应用形式 4.3条件运算符和条件表达式 4.4 switch语句的应用 4.5 选择结构程序设计应用
3、重点:选择结构程序设计,if语句与switch语句的应用。难点:if语句与switch语句的使用。
4、实验:
实验
三、选择结构程序设计
第五部分 循环结构程序设计(4学时)
1、要求:掌握循环结构程序设计的思路,while语句、do—while语句和 for语句的使用,循环语句嵌套,break和continue语句。
2、内容:
5.1 为什么使用循环
5.2 while语句与do...while语句 5.3 for语句实现循环 5.4 几种循环的比较 5.5 多重循环(嵌套循环)5.6 break和continue语句 5.7 循环结构程序设计举例
3、重点: while语句、do—while语句和 for语句的使用,循环语句嵌套,break语句。难点:循环语句的嵌套。
4、实验:
实验
四、循环结构程序设计
第六部分 应用数组设计程序(4学时)
1、要求:掌握数组的定义、引用和初始化,熟练运用数组解决同类型的多个变量问题。
2、内容: 6.1 数组的引入 6.2 一维数组 6.3 二维数组 6.4 字符数组 6.5 数组的应用
3、重点:一维数组、二维数组和字符数组的定义和应用。难点:二维数组、字符数组的应用。
4、实验:
实验五、一维数组的使用 实验
六、字符数组的使用
第七部分 应用函数设计程序(4学时)
1、要求:掌握函数的定义及调用规则,理解实参和形参数据的传递方式,熟练运用函数实现模块化程序设计,理解函数的嵌套调用和递归调用,内部函数与外部函数,理解变量的作
用范围和存储类别
2、内容: 7.1 函数的引入 7.2 函数的定义与调用 7.3 函数的嵌套调用和递归调用 7.4 函数应用实例
7.5 局部变量、全局变量及其存储 7.6 内部函数和外部函数
3、重点:函数的定义与调用、递归和嵌套函数、变量的存储类别和作用范围。难点:函数的调用、递归函数的使用。
4、实验:
实验
七、函数的使用 第八部分 应用指针编制程序
1、要求:了解指针的概念及定义,掌握指针的使用方法,掌握指针和一维数组以及指针和二维数组的应用。掌握几种特殊类型的指针。
2、内容: 8.1 指针概述 8.2 指针变量 8.3 指针与数组 8.4 指针与函数 8.5 指针数组 8.6 指向指针的指针
3、重点:指针变量的定义和使用、指针与变量、数组、函数指向应用。难点:指针变量作为函数参数、指针指向数组、函数的应用。
4、实验:
实验
八、指针的简单使用 实验
九、指针的高级使用
第九部分 结构体、共用体和枚举类型的应用(4学时)
1、要求:理解并掌握结构体的基本概念和用法,掌握共用体和枚举类型的基本概念及一般使用方法,了解用户自定义类型。
2、内容:
9.1 结构体类型与结构体变量的定义 9.2 结构体变量的引用 9.3 结构体数组 9.4 结构体与指针 9.5 结构体与函数 9.6 结构体应用—链表 9.7 共同体 9.8 枚举类型
9.9 用typedef定义类型
3、重点:结构体、共用体和枚举类型的定义、引用和初始化 难点:结构体的概念和使用
4、实验:
实验
十、结构体和共用体的应用 第十部分 文件(2学时)
1、要求:理解文件的结构类型、文件指针的相关概念,掌握文件的打开、关闭、读写、定位等文件操作
2、内容: 10.1 文件概述 10.2 文件的常用操作 10.3 文件的应用举例
3、重点:文件的打开与关闭,文件的读写 难点:文件类型指针的概念,文件的读写
4、实验:
实验
十一、文件的使用
第十一部分 C语言程序设计应用实例(4学时)
1、要求:成功完成“实现通讯录的管理程序”与“贪吃蛇游戏编程实例”训练。
2、内容:
11.1 实现通讯录的管理程序 11.2 学生成绩管理程序
11.3 图形与游戏编程实例
3、重点:强化多种C语句、规则的混合使用,理解结构化程序设计的思路。难点:C语句规则的熟练使用,图形库函数的使用。本课程与其它课程的联系与分工:
先修课程:《计算机应用基础》、《高等数学》、《线性代数》
编写者签名:
****年**月**日 系部审核:
教务处批准:
年
月
****年**月**日
日
第五篇:C语言程序设计课程教学大纲
C语言程序设计课程教学大纲
中央电大教务处教学管理科 2007年08月29日
第一部分 大纲说明
1.课程性质、任务与目的
《C语言程序设计》是中央电大计算机科学与技术专业(专科起点本科)的一门专业基础课。主要任务是介绍C语言中的数据类型、数据表示、运算规则、语句定义、函数调用、程序结构、文件使用、编程方法等内容。目的是使学生能够利用一种计算机程序设计语言编写出解决较简单的数值计算和数据处理问题的程序,为学习后续课程奠定程序设计和算法设计的基础。
2.与其他课程的关系
学习《C语言程序设计》课程需要了解计算机基本组成,并具有对计算机进行基本操作的技能。本课程的后续课程为《数据结构》、《操作系统》、《数据库》等。
3.课程教学特点
《C语言程序设计》是一门知识性和实践性都很强的课程,必须在学习中掌握C语言的语法规则,并在上机实践中体会和加深理解,通过实际的上机操作训练,还能够学习到书本上学不到的知识和技能,提高自己进行程序设计和开发的实际能力。
4.教学主要内容
(1)介绍C语言上机操作环境、程序基本结构,系统函数的使用;
(2)介绍常用输入输出函数的作用;
(3)介绍C语言基本数据类型、常量、变量、运算符、数学函数、表达式等的表示与含义;
(4)介绍各种分支语句、循环语句的流程控制功能及相应的程序设计方法;
(5)介绍一维数组和二维数组的定义与作用,字符串数组的特殊存储格式与作用;
(6)介绍指针的定义和运算,变量存储空间的动态分配,数组名的指针含义;
(7)介绍用户函数的定义与调用,值参数和指针参数的使用,变量的作用域,递归函数;
(8)介绍结构和联合类型的定义与应用,结构链表的建立和使用;
(9)介绍文件的概念,文件的打开和关闭,字符文件和字节文件的处理操作。
(10)介绍利用C语言编写解决实际问题的程序设计思路和方法。
5.教学基本要求
本课程教学内容包括了解、理解和应用三个层次,并且逐步递进,具体含义如下:
(1)了解层次:记忆C语言中的基本概念和语法规则;
(2)理解层次:掌握C语言中的每个语法成分和语句的定义格式、含义及作用;
(3)应用层次:利用C语言,结合实际解决问题的需要,能够分析和编写程序。
第二部分 媒体使用和教学过程建议
1.课程学分和学时
本课程为4学分、72学时、第一学期开设。电视、实验和面授辅导学时各为20、27和25学时。课程中各章内容及学时分配如下表所示。
序号 一 二 三 四 五 六 七 C语言概述 数据类型与表达式 流程控制语句 数组和字符串 指针 函数 结构与联合
内容
电视学时 实验学时 面授学时 3 3 2 2 3 3 2 4 4 4 4 4 3 3 3 3 4 3 八
文件 2 3 4
2.教学媒体设计
(1)课程以文字教材为主,文字教材采用合一型。文字教材担负起形成整个课程体系系统性和完整性的任务,是学生学习的主要媒体形式。因此教材要概念准确、条理清晰、深入浅出、便于自学,并且要包含实验指导和实验内容。
(2)电视课程作为文字教材的强化媒体,配合文字教材讲授课程的基本知识以及重点和难点。
(3)面授辅导课程由面授教师系统地辅导教学内容,保证教学进度,检查学习效果,随时解答学生的问题,是非常重要的教学活动。
(4)CAI课件是利用计算机进行自主学习的重要教学手段,它能够集名师讲授、动画教学演示、作业练习、学习效果检查等为一体,不受时间、地点和空间的限制,深受学习者喜爱。
(5)网络资源媒体可以汇集有关教学文件为学生查询提供方便,还可以进行网络交流答疑活动,便于师生定期或随时开展。
3.教学过程建议
本课程的电视和面授课堂教学要把知识讲授与上机操作演示结合起来,同时要加强学生的上机操作练习和指导,使所学知识都能够得到上机运行结果的充分验证。
第三部分 教学内容和教学要求
第一章 C语言概述
(一)教学内容
1.C语言的特点
2.C语言中的基本语法成分和程序结构
3.常用输入输出函数printf和scanf的作用
4.C程序的编辑、编译、链接和运行
(二)教学要求
了解:C语言的特点,基本的语法成分,程序的结构,C程序的编辑、编译、链接和运行的过程。
理解:常用输入输出函数printf和scanf的作用
第二章 基本数据类型与表达式
(一)教学内容
1C语言中的基本数据类型;
2.整数、实数、字符、枚举等常量的表示;
3.使用#define编译预处理命令定义符号常量;
4.变量的定义和分类;
5.各种运算符的表示和应用;
6.数值、关系、逻辑表达式的求值;
7.常用数值函数的调用,如绝对值函数、平方根函数、指数函数、对数函数、取整函数等的调用。
(二)教学要求
理解:C语言中的基本数据类型种常量和变量的表示,运算符的优先级和结合性,表达式的构成,常用数学函数的调用格式与作用。
第三章 流程控制语句
(一)教学内容
1.if语句的定义格式和作用;
2.switch语句的定义格式和作用;
3.for语句的定义格式和作用;
4.while语句的定义格式和作用;
5.do---while语句的定义格式和作用;
6.continue和break语句的定义格式和作用;
7.return和goto语句的定义格式和作用。
(二)教学要求
理解:各种语句的定义格式;
应用:分析程序,按照解决问题的需要编写出相应程序。
第四章 数组和字符串
(一)教学内容
1.数组和数组元素的有关概念;
2.一维数组的定义和应用;
3.二维数组的定义和应用;
4.字符串的存储和字符与字符串函数的使用。
(二)教学要求
了解:数组和数组元素的有关概念;
理解:一维数组和二维数组的定义格式,字符串的存储格式,字符与字符串函数的调用格式;
应用:会分析含有数组和字符串应用的程序,根据数值计算和数据处理问题编写出数组应用程序。
第五章 指针
(一)教学内容
1.指针的有关概念;
2.指针的各种运算
3.数组元素的指针访问方式
4.数据存储空间的动态存储分配
(二)教学要求
了解:指针的有关概念;
理解:指针的各种运算符的含义,一维和二维元素的指针访问方式,动态存储分配与释放函数的含义;
应用:会分析含有指针操作的程序。
第六章 函数
(一)教学内容
1.函数的定义格式和各个语法成分的作用;
2.函数的调用格式以及调用过程;
3.值参数和指针参数的不同作用;
4.变量的作用域分类;
5.递归函数的概念和调用过程。
(二)教学要求
了解:函数的定义、声明、调用与返回的有关概念;
理解:函数的定义和调用过程,值参数和指针参数的使用,变量的各种不同作用域;
应用:会分析一个函数定义的功能,根据问题编写出对应的函数。
第七章 结构与联合(一)教学内容
1.结构的基本概念
2.结构的定义与初始化
3.结构成员的访问和结构变量的赋值
4.结构与数组
5.结构与函数
6.结构与链表
7.联合的定义与使用
(二)教学要求
了解:结构和联合的有关概念;
理解:结构和联合的定义格式,结构和联合成员的访问,结构作为函数参数的应用,结构作为链表中结点类型的应用;
应用:会分析和编写使用结构的函数或程序
第八章 文件
(一)教学内容
1.数据文件的概念
2.文件的打开和关闭,3.文件的操作方式
4.字符文件的访问
5.字节文件的访问
(二)教学要求
了解:文件的有关概念;
理解:文件的各种访问方式;
应用:会分析和编写使用文件的程序。
第四部分 实验
实验是学习该课程的非常重要的教学环节,通过上机实验能够加深理解和巩固书本上所学的知识,能够提高动手操作的能力以及分析问题和解决问题的能力。在教材中的每章都将给出具体的实验练习题,以及必要的操作步骤。