hi,小慕
课程

中国大学MOOC,为你提供一流的大学教育

认证学习
为你提供认证成绩和证书,以及AI高效学习服务
查看详情
大学

国家精品

认证学习

智慧课程

理学工学农学

计算机

经济管理

外语

音乐与艺术

心理学

文史哲法

医学与保健

教育教学

大学生竞赛

软件实训

AI

升学/择业

考研

期末突击

大学生涯规划

专升本

四六级

保研及论文

求职就业

专四专八

大学应试英语

期末资料

终身学习

名师专栏

兴趣技能

hi,小mooc
期末不挂科
C语言程序设计
第16次开课
开课时间: 2025年09月01日 ~ 2026年01月10日
学时安排: 3-5小时/每周
距离开课还有 8 天 已有 8 人参加
立即参加
课程详情
课程评价(274)
spContent=本课程从2023年下学期开始做了较大幅度改版和内容增发,主要以C语言的数据结构和程序设计方法两条主线,依循模块化程序设计思想,针对C语言的七大模块(基本类型、基本算法、程序逻辑结构、函数、构造类型、指针和文件),借助任务驱动式的实例将相关知识点像珍珠链一样串联起来,并从初学者的角度出发,详细讲解了从问题分解到模块到项目的开发过程,把计算思维方法和程序设计中最基本、最新、最有价值的思想和方法贯穿于C语言的介绍中。 本课程特色如下: (1)模块化+编程思维,个性化学习包含课堂测试、讨论、课外阅读; (2)精简理论、强化实践,开发挑战度实验,增强实战能力; (3)数据结构和程序设计方法的协同配合,通过案例引导学习; (4)注重错误程序分析,密切软件工程联系; (5)课程评估多元化,包括:视频点阅、讨论、单元测试、作业、期末考试等。
本课程从2023年下学期开始做了较大幅度改版和内容增发,主要以C语言的数据结构和程序设计方法两条主线,依循模块化程序设计思想,针对C语言的七大模块(基本类型、基本算法、程序逻辑结构、函数、构造类型、指针和文件),借助任务驱动式的实例将相关知识点像珍珠链一样串联起来,并从初学者的角度出发,详细讲解了从问题分解到模块到项目的开发过程,把计算思维方法和程序设计中最基本、最新、最有价值的思想和方法贯穿于C语言的介绍中。 本课程特色如下: (1)模块化+编程思维,个性化学习包含课堂测试、讨论、课外阅读; (2)精简理论、强化实践,开发挑战度实验,增强实战能力; (3)数据结构和程序设计方法的协同配合,通过案例引导学习; (4)注重错误程序分析,密切软件工程联系; (5)课程评估多元化,包括:视频点阅、讨论、单元测试、作业、期末考试等。
—— 课程团队
课程概述

    C语言程序设计是计算机专业学生的专业基础课程,也可以作为非计算机专业学生的程序设计课程,它是后续相关专业课程的基础;本课程通过面向过程的程序设计方法,培养学生计算思维和程序实现能力,从而能更好地利用计算机科学与技术解决专业领域的相关计算和信息处理问题。

    本课程主要内容包括:C语言基础语法(数据类型、变量与常量、运算符与表达式、输入输出)、控制结构(顺序、选择、循环)的编程及常见算法、数组及应用、函数的概念及应用、指针、结构体和共用体、文件、大程序构建等知识。

    C语言程序设计是实践性很强的课程,该课程的学习必须通过大量的编程和程序调试训练,在实践中掌握编程知识,培养编程能力,并逐步理解和掌握程序设计的思想、方法和技能。通过一些典型问题的求解,掌握程序设计所需的各类基本问题的算法。使学生逐步实现从问题需求、问题抽象、计算建模、逐步求精到编程实现的能力提升。

    每周的学习任务单将强调本周学习目标、线上或线下的学习内容与任务。同时,本课程的助教会及时地为大家答疑解惑。

    通过循序渐进的学习,学习者将具有较好的计算思维和编程实现能力,从而为进一步学习面向对象的程序设计、数据结构、操作系统、计算机体系结构等课程奠定基础。

授课目标

本课程通过学习面向过程的程序设计方法,培养学生计算思维和程序实现能力,从而能更好地利用计算机科学与技术解决专业领域的相关计算和信息处理问题.

课程大纲
1 绪论
课时目标:了解算法及算法的表示,了解C语言的发展历史和程序特点,掌握C语言的编译和运行。
1.1 算法
1.2 算法的表示方法
1.3 算法的优化
1.4 C语言概述
1.5 C程序的编辑、编译和运行(Visual C++ 6.0)
1.6 C程序的编辑、编译和运行(DEV-C++)
测验题
2 数据类型
课时目标:理解C语言中数据的表示,理解变量和常量的区别,理解C语言中运算符优先级与结合性的作用,及其构成的表达式的运算逻辑。
2.1 变量与常量
2.2 运算符与表达式
2.3 赋值运算符与表达式
2.4 逻辑运算符与表达式
测验题
3 数据的输入输出
课时目标:掌握C语言的格式化输入输出语句(scanf / printf) , 字符的输入输出语句( getchar() / putchar() ) 规则和使用
第3章 数据的输入输出
3.1 scanf和printf函数
3.2 格式化的输入输出
3.3 字符数据输入输出
测验题
4 选择结构
课时目标:掌握C语言选择结构语句 if...else ... 与 switch ...case的逻辑与应用
4.1 分支选择
4.2 单分支if语句
4.3 双分支if语句
4.4 if语句的嵌套
4.5 级联的if-else语句
4.6 switch语句
测验题
作业
5 循环结构
课时目标:掌握C语言循环控制语句while() / do...while() / for () ,以及循环辅助语句 break/ continue 的逻辑与应用
5.1 for循环
5.2 while循环
5.3 do-while循环
5.4 循环的嵌套
5.5 循环的辅助控制语句
测验题
作业
6 函数
课时目标:理解模块化程序设计的思路,理解函数的定义和调用,理解调用函数过程中函数参数的传递机制,理解函数的嵌套调用,变量的作用域
6.1 函数的声明、定义与调用
6.2 函数的参数传递
6.3 变量的作用域
6.4 变量的存储属性
测验题
7 数组
课时目标:掌握C语言中数组的定义和引用,掌握简单的查找和排序等算法。
7.1 数组的引入
7.2 二维数组的定义与引用
7.3 数组排序
7.4 数组元素的查找
测验题
作业
8 指针
课时目标:掌握指针的含义和应用,掌握指针指向变量的寻址方式,掌握指针作为函数参数的传递过程及运行机制。
8.1 指针的定义、初始化和引用
8.2 指针与函数
8.3 指针与数组
8.4 指向字符串的指针
8.5 指针的应用
8.6 函数指针及其应用
测验题
作业
9 字符串
课时目标:理解C语言中字符串的存储方式,掌握字符串的读写,字符串的处理函数,以字符串为函数参数的执行机制。
9.1 字符数组与字符串
9.2 字符串的输入输出
9.3 字符串处理函数
9.4 字符串做函数参数
测验题
10 指针与数组
课时目标:掌握指针与一维数组的关系,掌握指针与一维数组做函数参数的区别,理解二维数组中行指针与列指针的区别。理解行指针和列指针指向二维数组的区别
10.1 指针运算
10.2 指针与一维数组的关系
10.3 指针与一维数组做函数参数
10.4 指针与二维数组的关系
10.5 行指针与列指针做函数参数
10.6 指针数组及其应用
测验题
11 结构体与共用体
课时目标:掌握结构体的定义和应用,了解共用体和枚举类型的定义和使用
11.1 结构的概念
11.2 结构与数组
11.3 结构与函数
11.4 结构与指针
11.5 联合
11.6 枚举类型
测验题
作业
12 文件
课时目标:掌握文件的输入输出方式,掌握按照不同方式读写文件
12.1 按格式化读写文件
12.2 按字符读写文件
12.3 按行读写文件
12.4 二进制文件的数据读写
测验题2
测验题
13 大程序的构建
课时目标:了解多文件构成项目的搭建及注意事项
13.1 多文件构成的优点及注意事项
14 C语言总复习
课时目标:掌握C的主要知识点
14.1 C语言主要知识点、重点总结,常见问题和错误分析
14.2 语法要点(二)
14.3 语法要点(三)
14.4 语法要点(四)
14.5 语法要点(五)
展开全部
预备知识

作为第一门编程课,本课程可以零基础学习。

证书要求

为积极响应国家低碳环保政策, 2021年秋季学期开始,中国大学MOOC平台将取消纸质版的认证证书,仅提供电子版的认证证书服务,证书申请方式和流程不变。

 

电子版认证证书支持查询验证,可通过扫描证书上的二维码进行有效性查询,或者访问 https://www.icourse163.org/verify,通过证书编号进行查询。学生可在“个人中心-证书-查看证书”页面自行下载、打印电子版认证证书。

 

完成课程教学内容学习和考核,成绩达到课程考核标准的学生(每门课程的考核标准不同,详见课程内的评分标准),具备申请认证证书资格,可在证书申请开放期间(以申请页面显示的时间为准),完成在线付费申请。

 

认证证书申请注意事项:

1. 根据国家相关法律法规要求,认证证书申请时要求进行实名认证,请保证所提交的实名认证信息真实完整有效。

2. 完成实名认证并支付后,系统将自动生成并发送电子版认证证书。电子版认证证书生成后不支持退费。


参考资料

教材:《C语言程序设计-基于计算思维的培养》,电子工业出版社,2020, 3,曾智勇 编著

参考资料:

1、《标准C程序设计》,清华大学出版社,[印]巴拉古路萨米 著,金名 等译

2、《C语言程序设计教程》(第三版),哈尔滨工业大学出版社,苏小红等编

3、《C程序设计》(第四版),清华大学出版社,谭浩强 编著

4、《C语言程序设计教程》(第三版),北京理工大学出版社,李凤霞等编

5、《C语言程序设计:现代方法》,人民邮电出版社,K. N. King著,吕秀峰 译

6、《C Primer Plus》第六版, 人民邮电出版社,Stephen Prata著,姜佑 译

常见问题

Q:学生学完本课程后具备二级以上计算机等级考试的知识吗?

A:二级考试题主要考查语言的语法细节,能否通过二级考试,要看你的语言的语法基础及应试水平如何。本课侧重于讲解程序设计的方法,更关注实战能力。因此本课程对学生的要求是高于二级考试的要求的。

Q.如何解决疑难问题?

A:要按照一定的格式在讨论区提交问题的标题、内容、附源代码及附错误提示。

1)标题:描述标题时,把要问的问题的出处和关键词写出来,最好用【】标出来,比如【第4周编程题在线测试的第2题】求解。

2)内容:详细地要把你不懂的地方说出来,把自己尝试修改的过程描述一下。

3)附源代码:把源码贴到讨论区(不要使用图片,因为图片看不清,也不能拷贝),这样大家可以通过你贴出的源码帮你分析错在哪里。

4)附错误提示:把编译出错的提示也贴出来(一般是英文形式,也不要用截屏图片),这样大家不用拷贝粘贴和调试程序也能帮你分析出错原因了。

Q:上机编写C语言程序使用哪种编程软件?

A:课程演示会使用Dev-C++或VC++ 6.0集成开发环境,但是你使用任何其他C语言开发工具也都可以。不过,我们推荐使用Code::Block+gcc+gdb,它是一个开源的跨平台的C/C++集成开发环境,它安装简单,特别方便对程序进行调试,比VC 6.0等其他集成开发环境更简单易学。其官网下载地址为:https://www.codeblocks.org/download/26。

Q:编写C语言程序需要注意哪些事项?

A:注意事项如下:

1)确保数据输入输出的格式严格按照题目的要求写

2)输入输出字符串中的字符大小写要正确,或者空格数量和位置与题目中的要求要一致,或者添加换行等。

3)仔细审题。

4)必须测试用例通过验证,如果还有没有通过验证的测试用例,说明你没有考虑所有的可能性,甚至是非法输入的情况。

5)检查是否为英文输入,切记切换成英文状态再输入。一些同学误用了中文作为输入法,就会出现不能编译的问题,例如输入输出格式串中的双引号或中文状态下输入的分号和英文状态下输入的分号是完全不同的,语句的末尾使用的分号一定要在英文状态下输入等。

Q:编译、运行C程序时常见的错误有哪些?

A:程序提交后通常显示三类错误:格式错误、结果错误、运行超时。

对于格式错误,请检查你的程序的输入输出信息是否和题目要求的完全一致。

对于结果错误,请检查你的程序使用的算法和计算公式是否正确,如果涉及浮点运算,可以尝试将float换成double或者反之。

对于运行超时错误,请检查你的程序是否存在死循环,死循环通常由永真的循环控制条件或者while后面添加了不必要的分号引起。

 

福建师范大学
4 位授课老师
曾智勇

曾智勇

副教授

林丽玉

林丽玉

讲师

王兴

王兴

副教授

推荐课程

2小时揭秘大学信息差(大一大二必看)

蓝哥-大学生涯规划

36519人参加

猴博士C语言不挂科-4小时学完C语言

猴博士爱讲课

317577人参加

猴博士Java不挂科-2小时学完Java

猴博士爱讲课

170223人参加

计算机网络期末冲刺-4小时突击计算机网络

王道论坛

18292人参加
下载
下载

下载App