程序设计基础-教学大纲_第1页
程序设计基础-教学大纲_第2页
程序设计基础-教学大纲_第3页
程序设计基础-教学大纲_第4页
程序设计基础-教学大纲_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

《程序设计基础》课程教学大纲一、课程基本信息课程名称程序设计基础FoundationsofProgramming课程编码110405402课程类别学科基础必修课程性质必修考核方式考试学分4课程学时其中:理论48学时,实验16学时开课学期第1学期开课单位先修课程大学计算机基础适用专业计算机科学与技术专业课程负责人审定日期二、课程简介程序设计基础是计算机科学与技术专业的学生学习的一门重要学科基础必修课程。本课程以C语言为载体,利用C语言功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好,既具有高级语言的优点,又具有低级语言的许多特点,在对操作系统和系统程序以及需要对硬件进行操作的场合,使用C语言明显优于使用其它高级语言。本课程主要包括:结构化程序设计、函数、数据类型、数组、指针、结构体、文件等。本课程主要培养学生的计算思维和程序设计能力,利用案例驱动的方式通过案例引出知识点,再利用程序设计实例讲解加强学生对知识点的理解,使得学生熟悉程序设计语言的主要构成,理解程序设计的基本思想,掌握程序设计的基本方法,具有一定的计算思维能力和初步的程序设计能力。学生学习本门课程为后续的面向对象程序设计,Windows程序设计,Java程序设计等程序设计语言的学习打下基础。课程目标及其对毕业要求的支撑课程目标课程目标1:能够运用C语言的基本语法规则编写简单的程序;课程目标2:能建立并维护简单的C语言程序结构,包括顺序、选择和循环结构;课程目标3:能运用函数封装代码,提高程序的模块化和可重用性;课程目标4:能运用数组处理批量数据,提升数据处理效率;课程目标5:能通过指针操作内存,实现复杂的数据结构和算法;课程目标6:能定义和使用结构体,实现自定义数据类型;课程目标7:能进行文件的基本操作,包括读写和文件管理;课程目标8:能分析并解决C语言程序中的常见错误和异常;课程目标9:能设计并实现简单的C语言项目,展示编程能力。课程目标10:理解C语言的历史、特点及其在软件开发中的应用;课程目标11:掌握C语言的基本数据类型、运算符、表达式和语句;课程目标12:具备良好的编程习惯和规范,注重代码的可读性和可维护性;课程目标13:具备分析和解决问题的能力,能够独立思考和解决问题;课程目标14:具备良好的团队协作能力,能够与他人有效沟通和协作完成编程任务;课程目标15:具备持续学习和自我提升的能力,能够适应不断变化的编程技术和需求。课程目标16:培养认真、刻苦、勇于实践的工作作风,养成规范、严谨、精益求精的工作态度;课程目标17:通过对软件项目的学习,了解我国软件领域技术的突飞猛进的现状,了解其优势。(二)课程目标对毕业要求的支撑毕业要求毕业要求分解指标点课程目标1.工程知识:具备较扎实的数学、自然科学知识,系统掌握计算机领域的工程基础和专业知识,能将各类知识用于解决计算机领域复杂工程问题。1.2具备扎实的计算机工程基础知识,掌握通过计算机解决复杂工程问题的基本方法,并遵循复杂系统开发的工程化基本要求。11.3系统地掌握计算机基础理论及专业知识,包括计算机硬件、软件及系统等方面内容,具备理解计算机复杂工程问题的能力,能够运用所学知识进行计算机问题求解。10、71.4能够将数学、自然科学、工程基础和专业知识等用于解决计算机领域复杂工程问题,能够判别计算机系统的复杂性,分析计算机系统优化方法。2、112.问题分析:能够应用数学、自然科学和工程科学的基本原理,识别、表达、并通过文献研究分析计算机领域复杂工程问题,以获得有效结论。2.1能够针对系统或者过程进行抽象分析与识别,选择或建立模型抽象表达,并进行推理、求解和验证。3、53.设计/开发解决方案:能够设计针对计算机领域复杂工程问题的解决方案,设计满足特定需求的系统、单元(部件)或工艺流程,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。3.1掌握工程设计和产品开发全周期、全流程的基本设计、开发方法和技术,考虑影响设计目标和技术方案的各种因素。93.2能够合理地组织数据、有效地存储和处理数据,正确地进行算法设计、分析和评价。43.3能够设计、开发满足特定需求和约束条件的软件系统、模块或流程,并能够进行优化。63.4在设计中能够考虑安全、健康、法律、文化及环境等制约因素,具有追求创新的态度和意识。164.研究:能够基于科学原理并采用科学方法对计算机领域复杂工程问题进行研究,包括设计实验、分析与解释数据,并通过信息综合得到合理有效的结论。4.3能够根据实验方案构建实验系统,能够开展实验,并采集实验数据。134.4能够对实验结果进行分析和解释,并通过信息综合得到合理有效的结论。85.使用现代工具:能够针对计算机领域复杂工程问题,选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对计算机领域复杂工程问题的预测与模拟,并能够理解其局限性。5.1能够通过图书馆、互联网及其他资源或信息检索工具,进行资料查询、文献检索,掌握运用现代信息技术和工具获取相关信息的基本方法,了解计算机专业重要资料与信息的来源及其获取方法。155.2能够在计算机领域复杂工程问题的预测、建模、模拟或解决过程中,选择与使用恰当的技术、软硬件及系统资源、现代工程工具,提高解决复杂工程问题的能力和效率。12、145.3能够分析所使用的技术、资源和工具的优势和不足,理解其局限性。17四、教学方法本门课程以项目驱动方式为主导,利用理实结合的方式展开。针对不同知识点设置不同的项目,便于学生掌握,同时根据问题内容自主设计程序,以逐步提升学生程序设计能力。案例实现过程中以理论和实操相结合的方式,以解题思路作为引导,帮助学生自主思考解决方法,并实操验证。1.课堂讲授课堂讲授的内容应该紧扣“应用型”本科人才培养规格的要求,避免过多的抽象理论和烦琐的数学推导。陈旧的、重复的、微观细节的内容要去除;讲授体系和教材体系要适当分开,避免"照本宣科";提倡穿插采用提问式、双向交流式的讲课;提倡教学实例尽量与工程应用接近,

摒弃C语言课程只以讲述语法为主的教学方法,把C语言从应试课程转变为一种实践工具,主要目的不再局限于使学生单纯地了解和掌握C语言的基本语法规范,而是要致力于培养学生运用C语言解决实际问题的编程能力。教学手段要采用多媒体教学,教学信息量要充分。2.实验(实训、实习)提倡实行“案例项目任务驱动,讲、学、练、应用”相结合的交互式教学方法,每次实验都安排三到五个接近应用的编程项目,让学生在课程实验中学会解决实际问题的方法,突出培养学生的实践能力与创新能力。3.作业教师根据教学大纲要求,在每章习题中选择或补充一定数量的题目布置给学生,题型包括:选择题、填空题、判断对错题、写出程序运行结果题、程序改错题、程序填空题、编程题等。通过布置作业、实验引导学生“三多两勤”,达到使学生能够熟练使用C语言的目的,“三多”即“多阅读程序、多编写程序、多上机调试程序”,“两勤”即“勤动脑、勤动手”。五、教学内容及重难点(一)C语言概述教学内容:程序与程序设计语言、C语言发展历史和主要特点、C语言的基本结构、C程序的调试。教学重点:程序设计的基本过程以及基本结构。教学难点:程序设计的基本结构、C程序的调试。(二)C语言基本知识教学内容:变量和常量、C语言的数据类型、不同数据类型的变量和常量的使用、基本运算符及其表达式、混合运算时数据类型的转换。教学重点:常量和变量的使用,不同数据类型的常量和变量的使用。教学难点:运算符的使用以及数据类型转换。(三)顺序和选择结构程序设计教学内容:算法、结构化程序设计、C语言的基本语句、顺序结构程序设计、选择结构程序设计。教学重点:数据的输入和输出、if语句的实现和switch语句的使用。教学难点:多分支if语句的实现、if嵌套使用。(四)循环结构程序设计教学内容:循环的概念、while语句、do...while语句、for语句、多重循环、break与continue语句。教学重点:for循环、while循环的使用。教学难点:循环嵌套、break和continue的使用。(五)函数教学内容:模块化程序与函数、函数的定义与调用、变量的存储属性、内部函数与外部函数、编译预处理、函数综合应用。教学重点:函数的分类、函数的定义、函数的调用、编译预处理。教学难点:函数的嵌套、函数参数与传递、函数综合应用。(六)数组教学内容:数组的概念、一维数组、数组作为函数参数、字符数组与字符串、二维数组。教学重点:一维数组的定义与使用、二维数组的定义与使用。教学难点:字符数组的定义与使用、数组作为函数的参数的使用方法。(七)指针教学内容:指针的概念、指针与变量、指针与数组、指针与字符串、指针与函数、指向指针的指针。教学重点:指针变量定义、赋值、引用。教学难点:指针与数组、指针与字符串、指针与函数、指向指针的指针。(八)结构体教学内容:结构体、结构体数组、结构体与指针、结构体与函数。教学重点:结构体类型的定义、结构体变量的定义、初始化及引用。教学难点:结构体与指针、结构体与函数。(九)文件教学内容:文件概述、文件操作的基本方法和相关概念、文件的读/写操作、文件的定位。教学重点:文件的读、写操作。教学难点:文件的读、写操作、文件的定位。课程内容及安排(一)理论教学内容及安排序号章节课程内容教学目标学时对应的课程目标1C语言概述1.1程序与程序设计语言1.2C语言发展历史和主要特点1.3C语言的基本结构1.4C程序的调试1.掌握程序设计的基本概念和程序设计的基本过程2.了解C语言的历史、特点和作用3.掌握C语言程序的基本结构和语句组成4.掌握面向过程和面向对象程序设计方法21、102C语言基本知识2.1变量2.2常量2.3C语言的数据类型2.4不同数据类型的变量说明2.5不同数据类型的常量写法2.6不同数据类型的输入与输出2.7基本运算符及其表达式2.8混合运算时数据类型的转换掌握各基本数据类型常量的正确表示法、会灵活使用符号常量2.掌握变量的概念、C语言的基本数据类型的存储和取值范围以及各种基本类型变量的说明规则和变量的赋初值以及相关函数的使用3.了解C语言的运算符与表达式的概念4.掌握基本运算符的功能及其与操作数的关系以及各运算符的优先级和结合规则5.完成一个数学表达式的C语言表达式6113顺序和选择结构程序设计3.1程序的灵魂——算法3.2结构化程序设计3.3C语言的基本语句3.4顺序结构程序设计3.5选择结构程序设计1.了解算法的概念与算法的描述方法2.掌握结构程序设计的概念和结构化程序设计方法的基本思想3.掌握顺序结构程序设计及其算法表示4.掌握C语言中条件的表示方法,if语句:格式、执行流程、嵌套原则,条件运算符switch语句:格式、执行流程,break语句的使用624循环结构程序设计4.1循环的概念4.2while语句4.3do...while语句4.4for语句4.5多重循环4.6break与continue语句1.掌握for语句和while语句:格式,执行流程及应用2.掌握直到型循环do-while语句的格式,执行流程及应用3.掌握break语句与continue语句:格式、功能以及循环的嵌套825函数5.1模块化程序与函数5.2函数的定义与调用5.3变量的存储属性5.4内部函数与外部函数5.5编译预处理5.6函数综合应用了解模块化程序设计的基本思想掌握函数的定义和函数的调用掌握利用return()语句返回函数值掌握形参变量和实参变量的概念,函数的参数传递过程掌握函数的嵌套调用和递归调用掌握变量的作用域与生存期,内部变量与全局变量的概念掌握变量的存储类别,静态变量与动态变量的概念掌握内部函数、外部函数的使用与工程文件完成建立工程文件进行函数调用完成函数处理一些典型的问题,如杨辉三角问题、Fibonacci数列问题636数组6.1数组的概念6.2一维数组6.3数组作为函数参数6.4字符数组与字符串6.5二维数组了解数组的概念掌握一维数组和二维数组的定义和引用掌握并完成常用算法:冒泡法和选择法排序掌握一维字符数组、二维字符数组的定义、引用、初始化及字符串与字符串结束标志掌握字符串的常用程序、算法:统计字符串中各种字符的个数,大、小写字母转换,字符串复制、连接等完成二维字符数组进行简单程序编制掌握数组作为函数的参数的使用方法847指针7.1指针的概念7.2指针与变量7.3指针与数组7.4指针与字符串7.5指针与函数7.6指向指针的指针了解指针、指针变量和的概念掌握指针变量的定义;运算符"*"和"&"和含义掌握指针变量的初始化和指针变量所指的对象的引用掌握指针运算(p+n,p-n,p++,p--,++p,--p,<,>,==,!=,=)的具体含义掌握指针运算。空指针常数NULL掌握指针与数组间的关系,数组名的含义、字符串指针、二维数组与指针和指针数组等掌握指针与函数了解指向指针的指针65、158结构体8.1结构体8.2结构体数组8.3结构体与指针8.4结构体与函数掌握结构类型变量的定义和引用掌握结构体类型数组的应用掌握结构体与函数掌握指向结构类型对象的指针变量的定义和引用方法46、169文件9.1文件概述9.2文件操作的基本方法和相关概念9.3文件的读/写操作9.4文件的定位掌握文件的概念和文件的分类掌握标准文件的输入与输出掌握用户文件指针、类型指针和文件的操作(打开、关闭和读写函数等)掌握文件的使用步骤27、17实验教学部分序号项目名称实验类型教学目标学时对应的课程目标1C语言基本知识验证型C语言程序的基本结构和语句组成、变量的使用,printf()、scanf()、putchar()和getchar()函数的使用。21、10、112顺序和选择结构程序设计验证型if语句:格式、执行流程、嵌套原则,条件运算符;switch语句:格式、执行流程,break语句的使用22、83循环结构程序设计验证型for语句和while语句:格式,执行流程及应用;直到型循环do-while语句:格式,执行流程及应用;break语句与continue语句:格式、功能294函数综合型函数的定义和函数的调用23、125数组验证型一维数组的定义和引用;二维数组的定义和引用246指针验证型指针变量的定义;指针变量的初始化和指针变量所指的对象的引用;指针运算(p+n,p-n,p++,p--,++p,--p,<,>,==,!=,=)的具体含义。257结构体验证型结构体的定义和使用26、13、148文件验证型标准文件的输入与输出;用户文件指针、类型指针和文件的操作(打开、关闭和读写函数等)27七、考核形式与成绩评定(一)评价方式课程目标评价方式及比例(%)成绩比例(%)考勤+课堂表现作业实验报告考试课程目标1113510课程目标2114915课程目标3113611课程目标4113611课程目标511248课程目标611237课程目标711136课程目标811125课程目标911169课程目标1010023课程目标1101045课程目标1201001课程目标1301001课程目标1402002课程目标1502002课程目标1602002课程目标1702002合计10202050100(二)评价标准1.考核方式评价标准考核方式基本要求评价标准优秀(90-100分)良好(75-89分)中等(70-79分)及格(60-70分)不及格(0-59分)作业通过对利用C语言解决生活中应用问题,并能够对程序进行合理设计、能够分析并解决常见的错误和异常、培养自主分析和独立思考能力。能够利用C语言成功解决相关问题;能够自主思考并解决相关问题;能够分析并解决常见异常和错误。能够利用C语言成功解决相关问题;能够自主分析并解决相关问题。能够利用利用C语言解决相关问题;能够自主分析并找出问题。能够利用C语言解决相关问题;基本掌握相关知识。不能成功利用C语言解决相关问题;对于基本知识掌握不扎实。实验操作掌握C语言基本结构、能够运用数组、函数、指针、结构体和文件等操作进行C语言程序的设计与实现;能够运用相关知识自主分析并解决对应问题;能够自主分析独立思考解决常见的错误和异常。能够合理设计相关项目,实现相关程序设计解决对应问题。操作规范,能够设计正确的程序解决对应问题;能够合理运用相关知识对代码进行优化;可以自主思考分析并解决相关问题或异常错误。操作规范,能够设计正确的程序解决对应问题;能够合理运用相关知识对代码进行优化;操作规范,能够设计较为正确的程序解决对应问题;能够较为合理运用相关知识对代码进行优化;操作规范,能够设计基本正确的程序解决对应问题;能够基本合理运用相关知识;操作不规范,不能够设计正确的程序解决对应问题;不能够合理运用相关知识。考试掌握C语言程序设计的相关理论知识;能够理解并掌握顺序结构、选择结构和循环结构的使用;能够灵活使用函数、数组、指针以及结构体相关知识解决相关程序设计问题;能够找出错误和异常位置,并自主分析提出解决方案。准确扎实掌握C语言相关理论知识;能够准确地使用相关函数和相关操作;能够准确找到错误或者异常位置并合理解决。准确掌握C语言相关理论知识;能够准确地使用相关函数和相关操作。较为准确掌握C语言相关理论知识;能够较为准确地使用相关函数和相关操作。基本掌握C语言相关理论知识;能够简单地使用相关函数和相关操作。不能准确地掌握C语言相关理论知识;不能准确使用相关函数和操作解决问题。2.课程目标评价标准课程目标考核依据评价标准优秀(90-100分)良好(75-89分)中等(70-79分)及格(60-70分)不及格(0-59分)课程目标1考查C语言的基本语法的掌握能够很好地掌握C语言的基本语法能够较好地掌握C语言的基本语法基本能够掌握C语言的基本语法能够部分掌握C语言的基本语法不能够掌握C语言的基本语法课程目标2考查顺序结构、选择结构和循环结构的掌握能够很好地掌握顺序结构、选择结构和循环结构能够较好地掌握顺序结构、选择结构和循环结构基本能够掌握顺序结构、选择结构和循环结构能够部分掌握顺序结构、选择结构和循环结构不能够掌握顺序结构、选择结构和循环结构课程目标3考查函数的掌握能够很好地掌握函数能够较好地掌握函数基本能够掌握函数能够部分掌握函数不能够掌握函数课程目标4考查数组的掌握能够很好地掌握数组能够较好地掌握数组基本能够掌握数组能够部分掌握数组不能够掌握数组课程目标5考查指针的掌握能够很好地掌握指针能够较好地掌握指针基本能够掌握指针能够部分掌握指针不能够掌握指针课程目标6考查结构体的掌握能够很好地掌握结构体能够较好地掌握结构体基本能够掌握结构体能够部分掌握结构体不能够掌握结构体课程目标7考查文件的掌握能够很好地掌握文件能够较好地掌握文件基本能够掌握文件能够部分掌握文件不能够掌握文件课程目标8考查分析和解决错误和异常的能力能够很好地分析和解决错误和异常能够较好地分析和解决错误和异常基本能够分析和解决错误和异常能够部分分析和解决错误和异常不能够分析和解决错误和异常课程目标9考查实现C语言项目的能力能够很好地实现C语言项目能够较好地实现C语言项目基本能

温馨提示

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

评论

0/150

提交评论