spContent=设置本课程的主要目的是使学生掌握用计算机分析和解决问题的思维方法以及程序设计的基本方法,建立从问题到算法再到程序的认知,在从问题到算法再到程序的问题求解及程序构造和实现的过程中理解高级语言的基本构造要素以及算法和数据结构在程序构造中的作用,具备良好的编程素养。
—— 课程团队
课程概述
课程具体目标如下:
课程目标1:掌握程序设计的方法学基础,培养学生阅读程序、编写程序和调试程序的能力,使学生能够选择与熟练运用现代化集成开发工具编写、测试和调试程序。
课程目标2:掌握程序设计所需的问题求解基础,培养学生从问题抽象为数学模型或算法再转化为计算机可实现的程序的能力,使学生针对计算、统计、分类等相关的实际问题,能够有效使用程序设计语言和结构化程序设计方法,并恰当使用枚举、递推、分治或递归等常用问题求解方法,完成经典问题求解程序的设计与实现。
课程目标3:掌握程序设计所需的算法和数据结构基础,培养学生利用算法和数据结构构造程序的能力,使学生针对科学计算/文本处理/人工智能相关的复杂工程问题,能够使用恰当的算法和数据结构以及模块化程序设计方法,完成涉及排序、检索、匹配等算法的实际生活问题或与专业背景相关的工程实际问题的程序设计与实现。
授课目标
课程具体目标如下:
课程目标1:掌握程序设计的方法学基础,培养学生阅读程序、编写程序和调试程序的能力,使学生能够选择与熟练运用现代化集成开发工具编写、测试和调试程序。
课程目标2:掌握程序设计所需的问题求解基础,培养学生从问题抽象为数学模型或算法再转化为计算机可实现的程序的能力,使学生针对计算、统计、分类等相关的实际问题,能够有效使用程序设计语言和结构化程序设计方法,并恰当使用枚举、递推、分治或递归等常用问题求解方法,完成经典问题求解程序的设计与实现。
课程目标3:掌握程序设计所需的算法和数据结构基础,培养学生利用算法和数据结构构造程序的能力,使学生针对科学计算/文本处理/人工智能相关的复杂工程问题,能够使用恰当的算法和数据结构以及模块化程序设计方法,完成涉及排序、检索、匹配等算法的实际生活问题或与专业背景相关的工程实际问题的程序设计与实现。
成绩要求
(1)自主式作业
由系统随机抽题的自主式作业,占总成绩的20%。
(2)开放式实验大作业
开放式实验大作业,占总成绩的20%。
(3)实验上机随堂测试
实验上机随堂测试,占总成绩的50%。
(4)实验小班研讨
实验小班研讨,占总成绩的10%。
(5)附加分
(1)实验上机随堂测试获得附加题的附加分(2分)。
(2)实验上机测试结束后参加生讲生评(1-3分)
(3)参加期末的“实验课堂大翻转、创意程序大比拼”,可以获得1~5分的附加分。
课程大纲
预备知识
大学计算机专业导论
参考资料
1. 苏小红,王宇颖,孙志岗等.《C语言程序设计(第4版)》,高等教育出版社,2019年6月
2. 《C语言程序设计精髓》MOOC课程,爱课程中国大学MOOC平台
3. 《程序设计基础》MOOC课程,爱课程中国大学MOOC平台
主要参考书:
1.苏小红,王甜甜,车万翔等.《C语言程序设计学习指导(第4版)》,高等教育出版社,2019年8月
2. P. J. Deitel, H.M. Deitel等,《C How to Program, Eighth Edition》,电子工业出版社,2017年
常见问题