《C和C++程序设计》课程教学大纲_第1页
《C和C++程序设计》课程教学大纲_第2页
《C和C++程序设计》课程教学大纲_第3页
《C和C++程序设计》课程教学大纲_第4页
《C和C++程序设计》课程教学大纲_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C和C+程序设计一、课程概况所属专业:软件工程开课单位:数学计算机科学学院课程类型:专业基础课程课程代码:07414060开课学期:1学分:5学时:85核心课程:是拟使用教材: 胡明、王红梅.程序设计基础-从问题到程序(第2版).清华大学出版社.2016年1月国内(外)现有教材:裘宗燕.从问题到程序-程序设计与C语言引论(第2版).机械工业出版社.2011年5月鲍春波、林芳、谢丽聪.问题求解与程序设计.清华大学出版社.2015年9月Brian W. Kernighan和Dennis M. Ritchie著,徐宝文、李志译,C程序设计语言(第2版新版),机械工业出版社,2004年月钱能主编,C+

2、程序设计教程,清华大学出版社(第一版),1999年4月学习参考资料1. 谭浩强,C语言程序设计(第三版),清华大学出版社,2005年7月2. 孟庆昌、牛欣源主编,C语言程序设计上机指导与习题解答(第一版),人民邮电出版社,2003年8月3. 赵英良 仇国巍等. C+程序设计教程. 清华大学出版社,2013.8.二、课程描述本门课程是软件工程专业基础课,为学习后续课程准备必要的程序设计知识,主要培养学生掌握C/C+语言程序设计的基本思想、基本方法和程序设计过程。培养学生阅读和分析、调试程序的方法和技巧,了解并初步掌握实用程序的开发与调试技术,为数据结构、JAVA、汇编语言、操作系统等后续课程的学

3、习打下基础。课程的主要内容包括C/C+程序的构成、程序的三大结构、数组、指针、结构体和共用体、文件和面向对象的程序设计思想等。三、课程目标(1) 知识教学目标:通过本课程的教学,学生应了解C/C+程序设计的基础知识,掌握程序设计的基本能力,并为后续的专业课程奠定程序设计基础。(2) 能力培养目标:通过本课程的教学,学生应具备顺序程序设计、分支程序设计、循环程序设计的能力,掌握使用函数、数组、指针等来分析和解决问题的能力。(3) 素质培养目标:使学生明确C/C+程序设计课程在专业中的地位和作用,培养学生严谨的学习风气、系统的学习方法,培养学生热爱所学专业、刻苦钻研专业知识的品质。四、教学要求授课

4、教师应根据本要求,认真备课,完成教案与讲稿编写等各项课前准备工作,结合课程特点和学生的实际情况进行教学。由于本课程为软件工程专业学生的第一门专业基础课,也是他们第一次接触程序设计课程,因此应注意引导学生很快适应大学的学习,注重编程实践。课堂教学应采取多种教学方法相结合:讲授法、演示法、练习法和任务驱动法。让学生在课堂教学中体会到编程的乐趣,使学生积极参与到课堂教学中,课堂气氛活跃、互动感强。每周布置的作业应难度合适,有基础题、拔高题和综合设计题,使得不同层次的学生都能享受到完成作业的成就感。学生应做到不旷课、不早退,上课认真听讲,积极与授课教师进行教学互动,每周课后至少花费4个小时的时间复习和

5、预习本课程内容。学生应认真独立完成课后作业,多动手实践,学会调试简单程序的技巧。五、考核方式及要求为实现课程教学目标,本门课程考核方式及要求为:平时成绩30,期中成绩10,期末成绩60。期中考试放在学完“函数”一章内容后进行,用一节课时间考试;期末考试为卷面考试。其中:平时成绩=作业+随堂测验+考勤+在线测试。平时成绩的分布和要求如下:出勤率占30%。点到为随机点名,一学期点到不少于3次,其中缺席1次,扣5分,迟到1次,扣3分。随堂测验2次,占20%。学完循环结构和函数一章后,各随堂测验1次。分别考核学生对循环结构和函数的掌握情况。这两章内容是C语言程序设计的核心内容,通过随堂测验,从而检查学

6、生听课情况及对相关知识的掌握情况,以便对后续教学提供依据。作业10次,占40%。每周至少布置作业1次,每次4题左右,采用书面作业或电子作业形式上交。在线测试占10%。检查学生课后自主做在线测试题目的数量,从而考查学生的主观能动性。一学期在线测试题目数达到20题为及格。六、课程内容第一章:C语言概述(授课时间:第一学期第四周)教学目标:了解程序、程序设计、高级语言的概念;了解C程序的基本结构;了解C程序的风格。教学重点:C程序的基本结构。教学难点:C程序的基本结构(多个函数构成C程序)。学 时:课堂教学3学时,课外自主学习时间不少于2学时教学方法:讲授法、演示法主要内容:(1)程序设计及编程语言

7、的“代”;(2)C语言的发展历史和特点;(3)C程序示例;C程序的编辑、编译和运行。学习方法:小组讨论、上机操作课后作业:完成教材第22页习题1:一、三题。第二章:程序的灵魂-算法(授课时间:第一学期第四周)教学目标: 了解算法的概念;理解并掌握一些常用算法;掌握用伪代码的方法来描述算法。教学重点:常见的一些典型算法;流程图描述算法。教学难点:典型算法的理解。学 时:课堂教学2学时,课外自主学习时间不少于2学时教学方法:讲授法、演示法主要内容:算法的概念;简单算法举例;算法的特性;怎样表示一个算法。学习方法:小组讨论、上机操作课后作业:完成教材第22页习题1:第二题并在下周课前提交。第三章:数

8、据类型、运算符与表达式(授课时间:第一学期第五周)教学目标:了解C语言的数据类型体系和运算符体系。 理解C语言的字符集、词类和语句的分类。掌握各种基本数据类型常量的书写方法和变量的定义、赋值、初始化方法。 掌握算术运算符、赋值运算符、逗号运算符及其相应的表达式。教学重点:基本数据类型常量的书写方法和变量的定义、赋值、初始化、使用方法;基本运算符的运算规则及优先级别;表达式的构成规则和计算。教学难点:运算符优先级别,混合表达式计算,字符常量与字符串常量。学 时:课堂教学4学时,课外自主学习时间不少于2学时教学方法:讲授法、演示法主要内容:C语言的数据类型;常量与变量;整型数据;浮点型数据;字符型

9、数据;变量赋初值;算术运算符和算术表达式;赋值运算符和赋值表达式;逗号运算符和逗号表达式。学习方法:小组讨论、上机操作课后作业:完成教材第45页习题2:三、1-3。 第四章:最简单的C程序设计顺序程序设计(授课时间:第一学期第五到六周)教学目标: 了解C语言中各种语句。 掌握赋值语句。掌握C语言中的输入输出实现。 掌握顺序程序设计的一般方法。教学重点:赋值语句;putchar函数;getchar函数;printf函数scanf函数。教学难点:输入/输出函数中的格式描述符。学 时:课堂教学2学时,课外自主学习时间不少于2学时教学方法:讲授法、演示法主要内容:C语句概述;赋值语句;字符数据的输入输

10、出;格式输入与输出;顺序结构程序设计举例。学习方法:上机操作课后作业:完成教材第62页习题3:二、1、4、5并在下周课前提交。第五章:选择结构程序设计(授课时间:第一学期第六周)教学目标:掌握关系运算符和关系表达式;逻辑运算符和逻辑表达式。 熟练掌握单分支、双分支、多分支选择语句的格式与功能,能正确选取选择语句来设计选择结构的程序。掌握switch语句的使用。掌握选择结构程序设计的一般方法。教学重点:逻辑运算的“短路”现象;if-else、else if、switch语句的格式和功能。教学难点:正确选用合适的语句来设计选择结构的程序;switch语句和break语句的使用。学 时:课堂教学3学

11、时,课外自主学习时间不少于3学时教学方法:任务驱动法、讲授法、演示法主要内容:关系运算符和关系表达式;逻辑运算符和逻辑表达式;if语句;switch语句。学习方法:小组讨论、上机操作课后作业:完成教材第87页习题4: 2-4并在下周课前提交。第六章:循环控制(授课时间:第一学期第六到八周)教学目标:了解循环的基本概念。 熟练掌握while语句、do-while语句、for语句、break语句、countinue语句的格式和功能,并能根据循环结构的要求正确选用循环语句来实现循环。 循环的嵌套。教学重点:while、do-while、for、break、countinue的格式和功能,三种循环结构

12、的程序设计方法。教学难点:break和continue语句的正确使用,三种循环之间的相互转换。学 时:课堂教学8学时,课外自主学习时间不少于6学时教学方法:任务驱动法、讲授法、演示法主要内容:while语句;do-while语句;for语句;循环的嵌套;break语句;continue语句;goto语句。学习方法:小组讨论、上机操作课后作业:完成教材第87页习题4: 5、6、8、9并在下周课前提交。第七章:数组(授课时间:第一学期第八到九周)教学目标:掌握一维数组、多维数组(主要指二维)、初始化、数组元素的引用方法。 掌握数组的两种典型处理(查找和排序)。 掌握有关数组问题程序的分析和设计。教

13、学重点:一维数组、二维数组、初始化和数组元素的使用,数组中的查找和排序。教学难点:数组中的地址概念。 学 时:课堂教学5学时,课外自主学习时间不少于4学时教学方法:任务驱动法、讲授法、演示法主要内容:一位数组的定义和引用;多维数组;应用举例。学习方法:小组讨论、上机操作课后作业:完成教材第105页习题5:1-5、8、9。第八章:函数(授课时间:第一学期第九到十周)教学目标:熟练掌握用户函数的结构、设计方法和调用方法。 掌握函数调用中数据传递的几种方式。 掌握简单的嵌套调用函数和递归调用函数的分析和设计。掌握变量生命期和作用域。教学重点:一维数组、二维数组、字符数组的定义、初始化和数组元素的使用

14、,数组中的查找和排序,字符串处理函数的使用。教学重点:函数的定义和调用方法,调用函数时数据传递方法,变量的属性和作用域。 教学难点:值传递和地址传递的区别,变量的生命期和作用域。学 时:课堂教学6学时,课外自主学习时间不少于6学时教学方法:任务驱动法、讲授法、演示法主要内容:函数定义;main()函数;函数调用;函数返回值和函数类型说明;函数的递归调用;void类型和可变参数函数;数据存储类。学习方法:小组讨论、上机操作课后作业:完成教材第132页习题6:1-4;第214页习题10:1、3、4。 第九章:指针(授课时间:第一学期第十到十一周)教学目标:掌握所需类型的指针变量的正确定义。 掌握如

15、何将指针变量指向某变量。掌握利用指针变量来引用所指向的变量或数组。掌握地址、指针、指针变量的概念。教学重点:指针变量的定义、初始化和赋值方法,利用指向变量的指针变量来正确引用变量,取变量地址的方法。 教学难点:指针的概念,主函数中参数的引用方法。学 时:课堂教学3学时,课外自主学习时间不少于2学时教学方法:讲授法、演示法主要内容:什么是指针;指针变量的定义;指针变量的引用;指针变量的运算。学习方法:小组讨论、上机操作课后作业:完成教材第156页习题7: 1-6。第十章:字符数组(授课时间:第一学期第十一周)教学目标:字符数组的定义、初始化、字符串表示方法。 掌握有关处理字符串的系统函数的使用方

16、法。教学重点:字符数组的定义、初始化和数组元素的使用,字符串处理函数的使用。教学难点:字符串与字符数组的区别、存放若干字符和存放字符串的字符数组的差别。学 时:课堂教学3学时,课外自主学习时间不少于2学时教学方法:任务驱动法、讲授法、演示法主要内容:字符数组的定义和引用;字符数组处理字符串;多维数组;应用举例。学习方法:小组讨论、上机操作课后作业:完成教材第105页习题5:1-5、8、9。 第十一章:结构体与共用体(授课时间:第一学期第十一到十二周)教学目标:了解结构体类型和共用体类型数据的特点。熟练掌握结构体类型的定义方法,结构体类型变量、数组、指针变量的定义、初始化和成员的引用方法。掌握共

17、用体类型的定义方法和对应变量的定义和引用。掌握枚举型的定义方法和对应变量的定义和引用。教学重点:结构体类型、共用体类型数据的特点和定义,结构体类型变量、数组、指针变量的定义、初始化和成员引用方法,共用体类型的定义和引用方法。 教学难点:链表数据的处理。学 时:课堂教学4学时,课外自主学习时间不少于3学时教学方法:讲授法、演示法主要内容:结构体类型及其变量的定义;结构体成员的引用;结构体变量的初始化;结构体数组;结构体和指针;共用体和枚举。学习方法:小组讨论、上机操作课后作业:完成教材第197页习题9:二、2-5并在下周课前提交。第十二章:再谈指针(授课时间:第一学期第十二到十三周)教学目标:了

18、解指针数组和多级指针的概念。 掌握如何将指针变量指向数组。掌握利用指针变量来引用所指向的一维、二维数组。掌握用指针处理链表。教学重点:利用指向数组指针变量来正确引用数组元素、字符串,指针数组、指向结构体的指针、指针和链表。 教学难点:链表数据的处理、动态存储分配。学 时:课堂教学7学时,课外自主学习时间不少于6学时教学方法:讲授法、演示法主要内容:指针变量和数组;指针与结构体;动态存储分配。学习方法:上机操作课后作业:完成教材第240页习题11: 2、3、6。第十二章:文件(授课时间:第一学期第十四周)教学目标:了解C文件概述。掌握文件类型指针;文件的打开与关闭。掌握缓冲文件系统中有关文件操作

19、的系统函数的使用方法。掌握对文件进行简单处理实用程序的设计。教学重点:缓冲文件系统中“文件类型指针”的概念,有关文件操作(打开、关闭、四种形式的读写、定位、出错检测)的系统函数使用。教学难点:有关文件处理的各种系统函数的使用;特别是读写函数种类较多、功能相近,造成记忆和选择上的困难。学 时:课堂教学3学时,课外自主学习时间不少于3学时教学方法:讲授法、演示法主要内容:C文件概述;文件类型指针;文件的打开与关闭;文件的读写;文件夹的定位;出错的检测。学习方法:小组讨论、上机操作课后作业:完成教材第261页习题12:三、1、4、5。 第十三章:面向对象程序设计概述(授课时间:第一学期第十四周)教学

20、目标: 初步建立面向对象的程序设计思想和概念。教学重点: 面向对象的基本概念(对象、消息、类)。教学难点: 面向对象的思想。学 时:课堂教学2学时教学方法:讲授法、演示法主要内容: 什么是面向对象?什么是面向对象的程序设计?面向对象系统的特性。学习方法:上机操作课后作业: 完成C+课后布置的作业。第十四章:C+概述(授课时间:第一学期第十五周)教学目标: 掌握C+和C的不同点。教学重点: 输入/输出流的使用;函数重载的概念和重载方法。教学难点: 函数重载的概念和重载方法。学 时:课堂教学2学时教学方法:讲授法、演示法主要内容: 标准输入/输出流(cin和cout)和输入/输出运算符(和);const和内置(联)函数inline;函数重载;new和delete;引用。学习方法:上机操作课后作业:完成C+课后布置的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论