C语言程序设计基础
C语言程序设计基础
少于1000 人选课
更新日期:2025/05/16
开课平台学银在线
开课高校-
开课教师吕橙万珊珊
学科专业工学计算机类
开课时间2023/09/26 - 2024/01/31
课程周期19 周
开课状态已结课
每周学时-
课程简介

乔布斯曾经说过:”每个人都应该学习编程,因为它教会你思考的方式”。比尔盖茨和扎克伯格等很多科技大咖都在公众场合说过类似的话。在人工智能时代,编程是通向未来的语言。而C语言是一种最为通用的、面向过程式的计算机程序设计语言。1972年,为了移植与开发UNIX操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了C语言。本课程将带你学习数据类型、三大结构程序设计(顺序、选择、循环)、数组、函数、指针等知识,你还会学到枚举法、递推法、递归法、迭代法、模拟法等诸多算法设计。


课程大纲

绪论

  • 1.1 本章课件下载
  • 1.2 第1周 网课录屏
  • 1.3 课内上机实验1-1:初识C程序
  • 1.4 线上思政
  • 1.5 线下思政
  • 1.6 课前导读
  • 1.7 C语言概述
  • 1.8 第一个 C 程序
  • 1.9 C程序引例
  • 1.10 C程序的结构
  • 1.11 C程序的运行与调试
  • 1.12 第1周 PBL项目学习(个人项目)——游戏专题
  • 1.13 C程序的代码规范(1)
  • 1.14 十种缩进风格
  • 1.15 课内上机实验1-1:解题报告
  • 1.16 第1周 PBL项目学习:解题报告
  • 1.17 第1章 自测题
  • 1.18 第1章 自测题:解题报告

算法

  • 2.1 本章课件下载
  • 2.2 算法概述
  • 2.3 算法描述
  • 2.4 结构化设计
  • 2.5 延伸学习:代码规范(2)
  • 2.6 第2章 自测题
  • 2.7 第2章 自测题:解题报告
  • 2.8 延伸阅读

顺序结构程序设计

  • 3.1 本章课件下载
  • 3.2 第2周 网课录屏
  • 3.3 第3周 网课录屏
  • 3.4 第4周 网课录屏
  • 3.5 课内上机实验3-1:数据类型、运算符、表达式
  • 3.6 课外上机实验3-1:数据类型、运算符、表达式
  • 3.7 课内上机实验3-2:赋值语句与顺序结构设计
  • 3.8 课外上机实验3-2:赋值语句与顺序结构设计
  • 3.9 课内上机实验3-3:数据输入输出
  • 3.10 课外上机实验3-3:数据输入输出
  • 3.11 线上思政
  • 3.12 线下思政
  • 3.13 顺序结构引例
  • 3.14 数据类型
  • 3.15 变量
  • 3.16 常量
  • 3.17 标识符
  • 3.18 运算符
  • 3.19 运算符2
  • 3.20 表达式
  • 3.21 赋值语句
  • 3.22 简单的输入输出
  • 3.23 复杂的输入输出
  • 3.24 字符的输入输出
  • 3.25 习题课:顺序结构
  • 3.26 延伸学习:代码规范(3)
  • 3.27 课内上机实验3-1:解题报告
  • 3.28 课外上机实验3-1:解题报告
  • 3.29 课内上机实验3-2:解题报告
  • 3.30 课外上机实验3-2:解题报告
  • 3.31 课内上机实验3-3:解题报告
  • 3.32 课外上机实验3-3:解题报告
  • 3.33 第3章 自测题
  • 3.34 第3章 自测题:解题报告

第1次单元测试:代码基础模块

  • 4.1 第1次单元测试:考试说明与注意事项(第5周)
  • 4.2 第1次单元测试:主观题部分
  • 4.3 第1次单元测试:解题报告

选择结构程序设计

  • 5.1 本章课件下载
  • 5.2 第5周 网课录屏
  • 5.3 第6周 网课录屏
  • 5.4 第7周 网课录屏
  • 5.5 课内上机实验4-1:单分支语句与逻辑表达式
  • 5.6 课外上机实验4-1:单分支语句与逻辑表达式
  • 5.7 课内上机实验4-2:双分支语句与多分支语句
  • 5.8 课外上机实验4-2:双分支语句与多分支语句
  • 5.9 选择结构程序设计
  • 5.10 单分支语句
  • 5.11 双分支语句
  • 5.12 多分支语句
  • 5.13 关系表达式
  • 5.14 逻辑表达式
  • 5.15 问号表达式
  • 5.16 if 嵌套语句
  • 5.17 开关语句
  • 5.18 习题课:选择结构
  • 5.19 第7周 PBL项目学习(小组项目)——游戏专题
  • 5.20 延伸学习:代码规范(4)
  • 5.21 课内上机实验4-1:解题报告
  • 5.22 课外上机实验4-1:解题报告
  • 5.23 课内上机实验4-2:解题报告
  • 5.24 课外上机实验4-2:解题报告
  • 5.25 第4章 自测题
  • 5.26 第4章 自测题:解题报告
  • 5.27 扩展阅读

循环结构程序设计

  • 6.1 本章课件下载
  • 6.2 第8周 网课录屏
  • 6.3 第9周 网课录屏
  • 6.4 第10周 网课录屏
  • 6.5 课内上机实验5-1:单层简单的循环
  • 6.6 课外上机实验5-1:单层简单的循环
  • 6.7 课内上机实验5-2:单层复杂的循环
  • 6.8 课外上机实验5-2:双层简单循环
  • 6.9 循环结构程序设计
  • 6.10 while语句
  • 6.11 do...while语句
  • 6.12 for语句
  • 6.13 循环嵌套
  • 6.14 辅助控制语句
  • 6.15 枚举算法
  • 6.16 迭代算法
  • 6.17 习题课:循环结构
  • 6.18 第10周PBL项目学习(个人项目)——算法专题
  • 6.19 第11周PBL项目学习(小组项目)——思政图形专题
  • 6.20 第12周PBL项目学习(小组项目)——游戏专题
  • 6.21 代码规范(5)
  • 6.22 课内上机实验5-1:解题报告
  • 6.23 课外上机实验5-1:解题报告
  • 6.24 课内上机实验5-2:解题报告
  • 6.25 课外上机实验5-2:解题报告
  • 6.26 第10周PBL项目学习:解题报告(算法专题)
  • 6.27 第5章 自测题
  • 6.28 第5章 自测题:解题报告
  • 6.29 扩展阅读

第2次单元测试(暨期中考试):结构化编码模块

  • 7.1 第2次单元测试模拟练习
  • 7.2 第2次单元测试模拟练习解题报告
  • 7.3 第2次单元测试:考试说明与注意事项
  • 7.4 第2次单元测试:主观题部分
  • 7.5 第2次单元测试:解题报告

第6章 利用数组处理批量数据

  • 8.1 本章课件下载
  • 8.2 第11周 网课录屏
  • 8.3 第12周 网课录屏
  • 8.4 第13周 网课录屏
  • 8.5 课内上机实验 6-1:一维数组
  • 8.6 课外上机实验 6-1:一维数组
  • 8.7 课内上机实验 6-2:二维数组
  • 8.8 课外上机实验 6-2:字符数组和字符串
  • 8.9 什么是数组
  • 8.10 一维数组
  • 8.11 一维数组的插入和删除
  • 8.12 查找算法
  • 8.13 排序算法(上)
  • 8.14 排序算法(中)
  • 8.15 递推算法
  • 8.16 模拟法
  • 8.17 二维数组
  • 8.18 字符数组
  • 8.19 字符串
  • 8.20 习题课:数组
  • 8.21 第14周 PBL项目学习——算法专题
  • 8.22 长学时 PBL项目学习(选学)——游戏专题
  • 8.23 课内上机实验12:字符数组
  • 8.24 课外实验上机12:字符数组
  • 8.25 代码规范(6)
  • 8.26 课内上机实验6-1:解题报告
  • 8.27 课外上机实验 6-1:解题报告
  • 8.28 课内上机实验 6-2:解题报告
  • 8.29 课外上机实验 6-2:解题报告
  • 8.30 第14周 PBL项目学习:解题报告(算法专题)
  • 8.31 第6章 自测题
  • 8.32 第6章 自测题:解题报告
  • 8.33 扩展阅读

第7章 用函数实现模块化设计

  • 9.1 本章课件下载
  • 9.2 第14周 网课录屏
  • 9.3 第15周 网课录屏
  • 9.4 课内上机实验7-1:函数调用
  • 9.5 课外上机实验7-1:函数调用
  • 9.6 课内上机实验7-2:函数的嵌套与递归调用
  • 9.7 课外上机实验7-2:函数的嵌套与递归调用
  • 9.8 什么是函数
  • 9.9 函数的参数传递
  • 9.10 函数声明与函数返回值
  • 9.11 数组作为函数参数
  • 9.12 递归算法
  • 9.13 变量的作用域
  • 9.14 习题课:函数调用
  • 9.15 进阶:排序算法(下)
  • 9.16 进阶:大数计算(上)
  • 9.17 进阶:大数计算(下)
  • 9.18 长学时PBL项目学习——算法专题
  • 9.19 长学时PBL项目学习——游戏专题
  • 9.20 代码规范(7)
  • 9.21 课内上机实验7-1:解题报告
  • 9.22 课外上机实验7-1:解题报告
  • 9.23 课内上机实验7-2:解题报告
  • 9.24 课外上机实验7-2:解题报告
  • 9.25 第7章 自测题
  • 9.26 第7章 自测题:解题报告
  • 9.27 扩展阅读

第3次单元测试:模块化设计

  • 10.1 第3次单元测试:客观题部分
  • 10.2 第3次单元测试:主观题部分
  • 10.3 第3次单元测试:解题报告

第8章 善于利用指针

  • 11.1 本章课件下载
  • 11.2 第16周 网课录屏
  • 11.3 *课内上机实验8-1:指针应用
  • 11.4 *课外上机实验8-1:指针应用
  • 11.5 *课内上机实验8-2:指针高级应用
  • 11.6 *课外上机实验8-2:指针高级应用
  • 11.7 8-1 指针与地址
  • 11.8 *8-3 指针与数组
  • 11.9 *8-4 通过指针引用字符串
  • 11.10 *8-5 指向函数的指针
  • 11.11 *8-6 返回指针的函数
  • 11.12 *8-7 指针数组和多重指针
  • 11.13 *8-8 动态分配内存空间
  • 11.14 代码规范(8)
  • 11.15 课内上机实验15:解题报告
  • 11.16 课外上机实验15:解题报告
  • 11.17 课内上机实验16:解题报告
  • 11.18 课外上机实验16:解题报告
  • 11.19 第8章 自测题
  • 11.20 第8章 自测题:解题报告
  • 11.21 扩展阅读

基础专题(期末模拟基础练习)

  • 12.1 编程基础
  • 12.2 顺序结构
  • 12.3 选择结构
  • 12.4 循环结构
  • 12.5 数组
  • 12.6 函数调用
  • 12.7 指针

算法专题(期末模拟算法练习)

  • 13.1 枚举法
  • 13.2 逻辑推理
  • 13.3 递推法
  • 13.4 迭代法
  • 13.5 大数计算
  • 13.6 数论
  • 13.7 模拟法
  • 13.8 分治法
  • 13.9 贪心算法
  • 13.10 动态规划
  • 13.11 回溯算法
  • 13.12 查找算法
  • 13.13 排序算法

zerojudge(期末编程题库)

  • 14.1 顺序结构
  • 14.2 选择结构(单双分支)
  • 14.3 选择结构(多分支语句)
  • 14.4 选择结构(开关语句与IF嵌套)
  • 14.5 循环结构
  • 14.6 数组(一维数组)
  • 14.7 数组(二维数组)
  • 14.8 算法之枚举法
  • 14.9 算法之递归法
  • 14.10 算法之递推法
  • 14.11 算法之模拟法

期末试卷样卷

  • 15.1 期末试卷套卷1(主观题部分)
  • 15.2 期末试卷套卷1 —— 解题报告
  • 15.3 期末试卷套卷2(主观题部分)
  • 15.4 期末试卷套卷2 —— 解题报告

C 标准库

  • 16.1 C 标准库 - 参考手册
  • 16.2 C 标准库 - “assert.h”
  • 16.3 C 标准库 - “ctype.h”
  • 16.4 C 标准库 - “errno.h”
  • 16.5 C 标准库 - “float.h”
  • 16.6 C 标准库 - “limits.h”
  • 16.7 C 标准库 - “locale.h”
  • 16.8 C 标准库 - “math.h”
  • 16.9 C 标准库 - “setjmp.h”
  • 16.10 C 标准库 - “signal.h”
  • 16.11 C 标准库 - “stdarg.h”
  • 16.12 C 标准库 - “stddef.h”
  • 16.13 C 标准库 - “stdio.h”
  • 16.14 C 标准库 - “stdlib.h”
  • 16.15 C 标准库 - “string.h”
  • 16.16 C 标准库 - “time.h”