课程概述

本课程是南京邮电大学大一理工科新生的平台课,已有二十多年的教学经验积累。

课程以C语言作为载体和切入点介绍面向过程的程序设计思想与方法。课程的教学内容包括:常量与变量、基本数据类型、运算符与表达式、流程控制、函数、指针、数组、结构体与链表、文件处理、常用算法等,并将面向过程的程序设计思想贯穿其中。通过84个教学视频共计12小时26分47秒时长完整展示课程的全部内容,视频中对每个示例都在编程环境下进行跟踪演示,讲解详尽清晰并体现如何查错和调试,体现理论知识与实际编程相结合。学员可以边听边练,线下勤练编程才难真正掌握课程内容。通过学习本课程,学生能达到:基本掌握结构化程序设计的思想与方法,会使用C语言编写中等及有一定难度的程序,并能够熟悉至少一种C语言的集成开发环境。

 

证书要求
  1. 完成所有视频课的学习

  2. 完成课后作业

  3. 参与教学讨论

预备知识

第一个教学视频会给大家补充必要的计算机、内存、编程的基础知识,真正零起步!


授课大纲

第一章 初识计算机、程序与C语言(共5个视频,时长:32分钟54秒)

1.1 计算机及其基本结构

1.2 计算机程序与计算机语言

1.3 C语言简介

1.4 二进制及进制转换问题

第一章单元测验

第二章 初识C源程序及其数据类型(共5个视频,时长:57分钟7秒)

2.5 基本数据类型在计算机内部的表示

2.1 C源程序及其符号

2.2 C语言中的数据类型

2.3 常量

2.4 变量

第二章单元测验

第三章 表达式与运算符(共8个视频,时长:49分钟13秒)

3.5 位运算

3.1 表达式与运算符

3.2 运算符的优先级与结合性

3.3 常用运算符

3.4 运算过程中的数据类型转换

第三章单元测验

第三章编程

第四章 程序流程控制(共11个视频,时长:2小时16分钟37秒)

4.4 循环结构

4.5 break与continue

4.6 应用举例

4.1 语句与程序流程

4.2 顺序结构

4.3 选择结构

第四章单元测验

第四章编程

第五章 函数的基本知识(共7个视频,时长:48分钟8秒)

5.4 递归函数

5.5 变量的作用域与存储类型

5.1 模块化程序设计与函数

5.2 函数的定义

5.3 函数的调用

5.6 应用举例

第五章单元测验

第五章编程

第六章 数组(共 8个视频,时长:1小时15 分钟51 秒)

6.4 二维数组的应用

6.5 数组的常用算法

6.1 一维数组的定义初始化及访问

6.2 一维数组的应用

6.3 二维数组的定义初始化及访问

第六章单元测验

第六章编程

第七章 指针(共 14个视频,时长: 2小时37分钟 39秒)

7.4 应用举例

7.5 指针进阶

7.1 指针变量

7.2 指针与数组

7.3 指针与函数

第七章单元测验

第七章编程

第八章 字符串(共 4个视频,时长: 35分钟 55秒)

8.1 字符串的定义与初始化

8.2 字符串的处理与操作

8.3 字符串应用举例

第八章单元测验

第八章编程

第九章 编译预处理与多文件工程程序(共5个视频,时长: 36分钟 29秒)

9.1 编译预处理

9.2 多文件工程程序

9.3 应用举例

第九章单元测验

第九章编程

第十章 结构、联合、枚举(共10个视频,时长: 1小时2分钟 10秒)

10.4 链表

10.1 结构体

10.2 联合

10.3 枚举

第十章单元测验

第十章编程

第十一章 文件(共7个视频,时长: 54分钟54秒)

11.1 文件与文件指针

11.2 文件的打开与关闭

11.3 文件读写

11.4 指针定位与文件的随机读写

第十一章单元测验

参考资料


本课程配套的微课版主教材:(如果您需要购买,请扫描二维码直达购买页面)

与主教材配套的习题与实验教材:(如果您需要购买,请扫描二维码直达购买页面)

其他参考资料:

[1] 南京邮电大学程序设计语言课程教学网站:https://c.njupt.edu.cn,有各种集成开发环境可以免费下载,还有其他共享资源

[2] 谭浩强.C程序设计(第5版)[M].北京:清华大学出版社,20178月. 

[3] W. W. NortonCompany. C语言程序设计:现代方法[M]. 吕秀锋,黄倩,译.第2版.北京:人民邮电出版社,2010年.

[4] Samuel P. HarbisonGuy L. Steele. C语言参考手册[M].徐波,译.第5版.北京:机械工业出版社,2011年.

      [5] 中国大学MOOC网上的其他同类课程资源

    

 


常见问题


Q1:请问这门课对学习者的年龄有要求吗?是不是一定需要本科生以上?


A1:按道理年龄不是问题哈~~~但是,年龄过小,诸如幼儿园、小学的孩子不建议学习啦!初中以上就可以了,只需要比较基本的数理知识就可以。理工科的本科生,绝大多数高校会以C语言作为编程语言统一要求学习,当然文科生也可以学习本课程。即使你是老人,对编程有兴趣一样可以学习。


Q2:报名了,但是这门课该怎么学呢?


A2:本课程理论与实践相结合,在MOOC网上有教学视频,学员首先跟着教学视频听课,然后要完成MOOC上的章节测验和编程练习题,以巩固理论知识、强化实践能力;再者,学员需要在电脑或手机上下载并安装C开发环境,有很多种,比如:Visual C++,Microsoft Visual Studio2010(或其他版本)、CodeBlocks,Dev_Cpp等集成开发环境,C4droid5.apk(手机上使用) 等,便于自己线下加强编程训练。这些开发环境也可以到我们学校的课程网站上免费下载: https://c.njupt.edu.cn 


Q3:这门课能满足计算机等级考试二级C语言考试的要求吗?


A3:本课程虽然面向零起步的初学者,但是教学内容已经涵盖了计算机等级考试二级C语言的所有内容。当然,为了更充分地备考,还需要多做练习、模拟试卷,上机编程训练,仅仅完成网上的作业训练量不够,针对性也不足。 


Q4:对于南邮的同学,通过慕课的方式学习可以代替重修吗?


A4:可以的,对于我们南邮的同学,大家通过加入慕课并完成全部环节的考核(单元测验、作业、论坛发言、 线上期末考试)获得的成绩作为平时成绩,我们将在课程结束之前组织一次线下考试(笔试,难度等同于期末考试,闭卷),该成绩相当于期末成绩,按照平时和期末各40%、60%(或30%、70%)得到课程的总评成绩。对于重修、刷绩点或者补修、提前修读的同学都一样。有关线下考试,后面会发布线下考试的报名通知,大家只需要关注我们课程的公告或者论坛就可以了。 


Q5:本课程中师生是如何交流的?有课程QQ群吗?

A5:大家在学习的过程中,可以随时在课程论坛中提问,我们会认真对待大家在课程论坛上提出的每一个问题,并给出回复。课程不另外统一建立QQ群。