本课程以C语言作为载体和切入点,向学生介绍面向过程的程序设计思想与方法。本课程的教学内容包括理论和实验两个部分。理论教学内容包括常量与变量、基本数据类型、运算符与表达式、流程控制、函数、指针与数组、结构体、文件处理、常用算法等,并将面向过程的程序设计思想贯穿其中。实验部分配合理论教学,并通过具体的上机编程实践锻炼学生的动手编程能力与代码调试能力。通过学习本课程,学生应达到:基本掌握结构化程序设计的思想与方法,会使用C语言编写中低难度的程序,并能够熟悉至少一种C语言的集成开发环境。
60%期末卷面成绩
平时40%的成绩中SPOC成绩占20%-30%
(一)课程完整教学内容简介
本课程以C语言作为载体和切入点,向学生介绍面向过程的程序设计思想与方法。本课程的教学内容包括理论和实验两个部分。理论教学内容包括常量与变量、基本数据类型、运算符与表达式、流程控制、函数、指针与数组、结构体、文件处理、常用算法等,并将面向过程的程序设计思想贯穿其中。实验部分配合理论教学,并通过具体的上机编程实践锻炼学生的动手编程能力与代码调试能力。通过学习本课程,学生应达到:基本掌握结构化程序设计的思想与方法,会使用C语言编写中低难度的程序,并能够熟悉至少一种C语言的集成开发环境。
(二)具体的章节安排
1.第一章: 绪论 (2学时)
(1)知识点一:计算机、程序与程序设计语言
(2)知识点二:简单的C程序及其开发过程
(3)知识点三:内存的相关知识
(4)知识点四:进制及其相互转换
2.第二章: 基本数据类型、表达式与运算符 (6学时)
(1)知识点一:常量与变量
(2)知识点二:整型、字符型与实型
(3)知识点三:C源程序的组成及数据的输入/输出处理
(4)知识点四:表达式与运算符
(5)知识点五:类型转换
3.第三章: 程序的流程控制 (8学时)
(1)知识点一:算法与语句
(2)知识点二:顺序结构
(3)知识点三:选择结构
(4)知识点四:循环结构
(5)知识点五:其他流程控制语句
4.第四章: 函数 (6学时)
(1)知识点一:函数的定义
(2)知识点二:函数的调用
(3)知识点三:函数的声明
(4)知识点四:变量的作用域与存储类型
5.第五章: 数组 (5学时)
(1)知识点一:一维、二维数组的定义及初始化
(2)知识点二:一维、二维数组的访问
(3)知识点三:向函数传递数组
6.第六章: 指针 (5学时)
(1)知识点一:指针的定义及基本运算
(2)知识点二:指针与一维数组
(3)知识点三:指针与数组的典型应用
7.第七章: 字符串 (6学时)
(1)知识点一:字符串的定义
(2)知识点二:字符串处理的常用函数
(3)知识点三:字符串的典型应用
8.第八章: 模块化程序设计相关 (2学时)
(1)知识点一:3种编译预处理
(2)知识点二:多文件程序的框架
9.第九章: 结构体 (4学时)
(1)知识点一:结构类型的定义
(2)知识点二:结构变量、结构数组与结构指针
(3)知识点三:用结构和指针定义链表简介
10.第十章: 文件 (4学时)
(1)知识点一:文件的基本概念
(2)知识点二:定义文件指针及文件的打开与关闭
(3)知识点三:文件读写的控制方式
(三)课程的重点、难点
重点:本课程的重点主要围绕数据的存储与处理展开,具体包括:数据的类型、表示和可实施的基本操作;变量的存储类别、作用域和生命期;数组定义及其基本操作;字符串定义及其基本操作;指针定义及其使用;结构体定义及其使用;流程控制;函数定义与调用;文件操作等。
难点:指针的使用。指针是C语言中最强大的工具,但也是最难以理解和最容易出错的内容。
(四)考核方式
每一个学习单元包括若干视频、PPT、随堂测验、单元测验、互评作业、讨论等,学习过程结束有考试。
1.随堂测验目的是为了帮助学生检测自学情况,不计入平时成绩;
2.单元测验,每讲10题,计入总分,总共30分;
3.期末测试,选择、判断,计分,40分;
4.互评作业,完成要求的编程题,计分,20分。
5.参与论坛讨论,10分(发帖和回帖数量达到10个或达到本课程论坛发帖平均数)。
6.60分以上合格,85分以上优秀。
无
教 材:
[1] 朱立华等编著.C语言程序设计(第二版第一次印刷).北京:人民邮电出版社,2014.9
[2] 朱立华等编著.C语言程序设计习题解析与实验指导(第二版第一次印刷).北京:人民邮电出版社,2014.9
参考书:
[1] 谭浩强.C程序设计教程[M].第2版.北京:清华大学出版社,2013年.
[2] W. W. Norton,Company. C语言程序设计:现代方法[M]. 吕秀锋,黄倩,译.第2版.北京:人民邮电出版社,2010年.
[3] Samuel P. Harbison,Guy L. Steele. C语言参考手册[M].徐波,译.第5版.北京:机械工业出版社,2011年.