C语言程序设计基础
C语言程序设计基础
4万+ 人选课
更新日期:2025/05/05
开课平台智慧树
开课高校石河子大学
开课教师高攀李志刚郑瑶张丽郭理康娟刘昭王慧宁川王玉星
学科专业工学计算机类
开课时间2025/01/21 - 2025/07/20
课程周期26 周
开课状态开课中
每周学时-
课程简介
C语言程序设计是计算机相关专业的专业基础课和非计算机专业公共必修课,通过课程学习可以掌握利用计算机解决问题的基本思路和方法。
课程大纲

在线教程

章节简介教学计划
引言
登录后可预览视频
初识C语言
高攀
我的第一个C语言程序
高攀
程序与算法
高攀
C语言入门
引例:温度转换
高攀
引例:计算分段函数
高攀
引例:输出温度转换表
高攀
引例:生成乘方表和阶乘表
高攀
基本数据类型和表达式
标识符和关键字
王慧
常量
王慧
变量
王慧
数据的格式化输出
王慧
数据的格式化输入-字符型数据的输入输出
王慧
运算符和表达式(一)
王慧
运算符和表达式(二)
王慧
运算符和表达式(三)
王慧
数据类型转换
王慧
分支结构程序设计
分支结构的定义和运算符(一)
张丽
分支结构的定义和运算符(二)
张丽
if语句的三种形式(一)
张丽
if语句的三种形式(二)
张丽
if语句的嵌套
张丽
switch语句(一)
张丽
switch语句(二)
张丽
分支结构应用举例
张丽
循环
循环的概念
康娟
while语句
康娟
do-while语句
康娟
for语句
康娟
break与continue语句
康娟
循环的嵌套
康娟
常见问题举例(一)
康娟
常见问题举例(二)
康娟
常见问题举例(三)
康娟
函数
引例:不同半径的圆形面积
郑瑶
函数的定义
郑瑶
函数的调用和声明
郑瑶
函数的调用过程
郑瑶
函数的两种特殊调用方式
郑瑶
变量的生存期
郑瑶
预处理(一)
郑瑶
预处理(二)
郑瑶
数组
数组的概念与存储
刘昭
一维数组(一)
刘昭
一维数组(二)
刘昭
二维数组
刘昭
数组应用举例(一)
刘昭
数组应用举例(二)
刘昭
字符数组与字符串-字符数组
高攀
字符数组与字符串-字符串的输入输出
高攀
字符数组与字符串-字符串处理函数
高攀
字符数组与字符串-应用举例
高攀
指针基础
指针概念和定义
郑瑶
指针变量的引用
郑瑶
指针与一维数组
郑瑶
指针与二维数组
郑瑶
指针与数组举例
郑瑶
指针与字符串(一)
郑瑶
指针与字符串(二)
郑瑶
结构体
结构体的概念与定义(一)
郭理
结构体的概念与定义(二)
郭理
结构体数组
郭理
结构体指针(一)
郭理
结构体指针(二)
郭理
结构体应用举例
郭理
文件
文件的认知
高攀
文件的打开与关闭
高攀
文件的顺序读写(一)
高攀
文件的顺序读写(二)
高攀
文件的其他操作
高攀
  • 第一章引言

    本章主要介绍程序与程序设计语言的知识、C 语言的发展历史与特点,以及利用计算机求解问题的基本过程,使学生了解相关的背景知识,对程序和程序设计语言有初步的认识,理解计算机求解问题的基本过程。

  • 1.1初识C语言

    本节介绍了C语言的发展历史,以及学习C语言的重要性和如何学习C语言。

  • 1.2我的第一个C语言程序

    本节介绍了C语言开发环境,以及C语言程序结构和C语言开发过程。

  • 1.3程序与算法

    本节介绍了程序和程序设计语言的概念,使学生了解常量、变量等数据表达方法,以及顺序、分支、循环三大流程控制结构,讲解了算法的基本概念和算法的三种表示方式。

  • 第二章C语言入门

    本章从案例出发,概要介绍顺序、分支和循环 3 种基本控制结构和函数的使用,以及在案例程序中用到的语言知识,使学生对 C 语言有一个总体的了解,并能从模仿入手,学习编写简单的程序,培养学习兴趣。

  • 2.1引例:温度转换

    本节通过案例“求华氏温度 100°F 对应的摄氏温度”及相关知识的学习,使学生能编 程进行简单的数据处理,并掌握涉及到的语言知识,包括常量、变量、数据类型、算术运算 和赋值运算,以及格式化输出函数 printf()。

  • 2.2引例:计算分段函数

    本节通过案例“根据居民的月用水量分段计算水费”及相关知识的学习,使学生能编 程计算二分段函数,并掌握涉及到的语言知识,包括关系运算、if-else 语句、格式化输入函 数 scanf(),以及常用的数学库函数。

  • 2.3引例:输出温度转换表

    本节通过案例“输出华氏-摄氏温度转换表”及相关知识的学习,使学生能使用 for 循环语句实现指定次数的循环程序设计。

  • 2.4引例:生成乘方表和阶乘表

    本节通过案例“生成乘方表与阶乘表”及相关知识的学习,使学生对函数的定义和调 用有初步的认识,能模仿编程。

  • 第三章基本数据类型和表达式

    本章主要介绍C语言的基本数据类型、数据的输入和输出、运算符和表达式、数据类型转换。掌握C语言的基本数据类型及相应的常量和变量、数据的格式化输入和输出、运算符和表达式是C语言程序设计的重要基础。

  • 3.1标识符和关键字

    本节主要介绍C语言的标识符、关键字和基本数据类型

  • 3.2常量

    本节主要介绍常量的概念及其各种类型——整型常量、实型常量、字符常量、字符串常量和符号常量。

  • 3.3变量

    本节主要介绍变量的概念及其各种类型——整型变量、实型变量和字符型变量。

  • 3.4数据的格式化输出

    本节主要介绍数据格式化输出函数printf(),学习了Printf()函数的功能及其一般形式,重点介绍了printf()函数一般形式的两个部分:格式控制和输出表列。

  • 3.5数据的格式化输入-字符型数据的输入输出

    本节主要介绍数据格式化输入函数scanf(),学习了scanf()函数的功能及其一般形式,重点介绍了scanf()函数使用过程中的注意事项,并且介绍了字符输出函数putchar()和字符输入函数getchar()及其格式和功能。

  • 3.6运算符和表达式(一)

    本节主要对运算符和表达式做了简单介绍,并对其中的算术运算符和算术表达式做了详细介绍。

  • 3.7运算符和表达式(二)

    本节主要对赋值运算符和赋值表达式、位逻辑运算符和位逻辑表示式做了详细介绍。

  • 3.8运算符和表达式(三)

    本节主要对自增自减运算符,复合赋值运算符,还有其他运算符,包括逗号运算符、条件运算符、求字节数运算符做了详细介绍。

  • 3.9数据类型转换

    本节从为什么要进行数据类型转换引出本节内容,介绍了数据类型转换的两种形式:自动类型转换和强制类型转换。对于自动类型转换,重点介绍了不同类型的数据转换规则,并从一般自动类型转换和有赋值运算的自动类型转换两种情况做了介绍;对于强制类型转换,主要介绍了强制类型转换的一般形式及强制类型转换运算符。

  • 第四章分支结构程序设计

    本章主要介绍分支结构程序设计的思想和实现方法,并介绍关系运算和逻辑运算等知识。理解和掌握 else-if 语句和 switch 语句的执行流程并能综合运用它们编写分支结构类型的程序。

  • 4.1分支结构的定义和运算符(一)

    介绍了分支结构的概念、关系运算符及其优先级,关系表达式的一般形式及其结果,并通过具体案例输出关系表达式的值

  • 4.2分支结构的定义和运算符(二)

    介绍了逻辑运算符及其优先级、逻辑表达式的一般形式及其结果,并通过具体案例输出逻辑表达式的值

  • 4.3if语句的三种形式(一)

    通过3个案例介绍了if语句的3种形式及其应用,并对if语句进行了有关说明

  • 4.4if语句的三种形式(二)

    通过2个案例介绍了if语句的3种形式及其应用,并介绍了条件表达式的形式和它在分支结构中的应用

  • 4.5if语句的嵌套

    介绍了if语句的嵌套,强调了if else的配对准则,并通过实际案例进一步加强了对嵌套结构的理解和应用

  • 4.6switch语句(一)

    介绍了switch语句的3种形式和break语句的用途,并通过典型案例的分析,了解和掌握如何运用switch结构实现多分支选择结构。

  • 4.7switch语句(二)

    本节介绍了switch语句中表达式类型、常量类型以及它们之间的匹配关系的说明,通过示例和练习题的分析和讲解来加深理解。

  • 4.8分支结构应用举例

    本节通过4个案例介绍了如何利用分支结构解决一些实际问题,以及用if else if结构和switch结构实现多分支结构的比较,并在解决问题的过程中进一步加深对分支结构的理解和应用。

  • 第五章循环

    本章主要介绍C语言中实现循环结构的三种基本语句格式及应用。

  • 5.1循环的概念

    本次课主要通过问题引入了循环的概念。

  • 5.2while语句

    本次课主要介绍了循环结构中的While循环。学习内容主要包括While语句的一般形式、执行过程、和while语句在使用中的几点说明。

  • 5.3do-while语句

    本次课主要介绍了do While循环。对do While循环的一般形式、执行过程和使用进行了说明。并对while循环和do-while循环进行了比较。

  • 5.4for语句

    本次课主要介绍了for循环。对for循环的一般形式、执行过程和使用进行了说明。并对三种循环结构进行了比较。

  • 5.5break与continue语句

    本节课主要介绍break语句和continue语句,并结合案例对两种语句的差别进行了分析。

  • 5.6循环的嵌套

    本次课学习了循环嵌套的概念以及嵌套循环的执行过程。通过程序示例和编程案例对循环嵌套的应用进行了分析。

  • 5.7常见问题举例(一)

    本次课主要介绍用循环如何实现累加和累乘问题,并通过实例给出了分析和实现过程。

  • 5.8常见问题举例(二)

    本次课主要介绍用循环如何实现数值处理问题和迭代递推问题,并通过实例给出了分析和实现过程。

  • 5.9常见问题举例(三)

    本次课主要介绍用循环如何解决穷举问题和图形输出,并通过实例给出了分析和实现过程。

  • 第六章函数

    本章主要介绍了三部分内容,一函数的定义、调用、声明的格式及调用过程,并给出了嵌套调用和递归调用两种特殊调用方式的应用举例。二不同类型变量的生存期。三C语言中常用的预处理命令及应用。

  • 6.1引例:不同半径的圆形面积

    本次课主要通过圆形面积计算例子讲解程序中使用函数的目的和使用中的注意事项。

  • 6.2函数的定义

    本次课主要介绍定义函数时每个组成部分的格式及含义,并通过实例讲解具体的实现。

  • 6.3函数的调用和声明

    本次课主要介绍函数调用时的格式、各组成部分含义及注意事项,通过实例讲解具体的实现。介绍函数声明的格式、含义及作用。

  • 6.4函数的调用过程

    本次课主要通过四个实例介绍带参函数、无参函数的调用执行过程及具体实现,尤其强调形实参数之间的传递方式。

  • 6.5函数的两种特殊调用方式

    本次课主要通过四个实例介绍函数的嵌套调用和递归调用两种特殊调用方式的执行过程及具体实现。

  • 6.6变量的生存期

    本次课主要介绍不同作用域变量—局部和全局变量的含义、生存期及功能,并通过两个实例讲解它们的区别;以局部变量为主介绍不同存储类型变量—静态局部和动态局部变量的含义、生存期,并通过一个实例讲解它们之间的区别。

  • 6.7预处理(一)

    本次课主要介绍预处理中的不带参宏定义命令和带参宏定义命令的定义、作用及应用。

  • 6.8预处理(二)

    本次课主要介绍预处理中的文件包含和条件编译命令的定义和作用,并以实例说明它们的具体应用。

  • 第七章数组

    本章主要介绍有关数组的定义、存储方式、引用等基本概念,包括一维数组、二维数组和字符串,并介绍几个典型的算法。使学生理解能综合运用数组编写程序。

  • 7.1数组的概念与存储

    本节通过一个引例体会使用数组来存储和处理多个数据的便利性,通过一个示例学习数组在内存中的存储方式。

  • 7.2一维数组(一)

    本小节介绍了一维数组,包括一维数组的定义及说明以及一维数组在内存中的存储,讲解了一维数组的引用方式,以及一维数组的初始化和一维数组的输入和输出。

  • 7.3一维数组(二)

    本节通过4个编程实例来学习如何用一维数组解决问题。

  • 7.4二维数组

    本节学习二维字符数组的定义,包括二维数组的定义及说明以及二维数组在内存中的存储,二维数组的引用方式。

  • 7.5数组应用举例(一)

    本节介绍一维数组相关应用案例。

  • 7.6数组应用举例(二)

    本节介绍二维数组相关应用案例。

  • 7.7字符数组与字符串-字符数组

    字符数组与字符串

  • 7.8字符数组与字符串-字符串的输入输出

    字符数组与字符串-字符串的输入输出

  • 7.9字符数组与字符串-字符串处理函数

    字符数组与字符串-字符串处理函数

  • 7.10字符数组与字符串-应用举例

    字符数组与字符串-应用举例

  • 第八章指针基础

    本章主要介绍指针类型变量的含义、格式及引用,并介绍了其与一维数组、二维数组、单个字符串、多个字符串之间的关系及应用。

  • 8.1指针概念和定义

    本次课主要通过一个引例引出什么是指针,并介绍指针和指针变量的含义,指针变量的定义格式和注意事项。

  • 8.2指针变量的引用

    本次课主要通过五个实例介绍与指针运算相关的两个运算符的基本应用及指针变量做函数参数时的执行过程和特殊作用。

  • 8.3指针与一维数组

    本次课主要通过一个引例的讲解引出指针如何应用在数组中,从而介绍指针与一维数组之间的关系。以及一维数组元素和元素地址的指针表示法。

  • 8.4指针与二维数组

    本次课主要介绍指针与二维数组之间的关系,如何用指针表示二维数组元素和二维数组元素地址。

  • 8.5指针与数组举例

    本次课主要通过三个实例讲解数组和指针做函数参数的具体实现和执行过程,以此来巩固指针在数组的应用掌握。

  • 8.6指针与字符串(一)

    本次课主要通过四个实例介绍字符串用数组和指针表示的两种形式,及字符指针做函数参数的具体实现。

  • 8.7指针与字符串(二)

    本次课主要介绍表示多个字符串的两种形式—二维字符数组和字符指针数组的基本操作,并通过两个案例讲解了字符串和指针的具体应用实现。

  • 第九章结构体

    本章主要介绍结构体的基本概念与定义(含结构体嵌套定义)、结构体变量的定义和使用、结构体数组的定义与使用、结构体指针的概念、定义和使用等知识。其中,重点介绍结构体的定义与成员引用方式、结构体数组的应用、结构体指针的基本概念与使用,而嵌套结构体的定义、结构体指针作为函数参数是难点。

  • 9.1结构体的概念与定义(一)

    本次课主要通过一个引例引入结构体数据类型,介绍掌握结构体的概念、目的和作用,学习结构体类型定义和结构体的嵌套定义。

  • 9.2结构体的概念与定义(二)

    本次课主要学习结构体变量的定义形式,如何进行结构体变量的初始化,结构体变量成员和结构体变量的使用方法,结构体变量作为函数参数等内容。

  • 9.3结构体数组

    本次课首先通过一个引例引出结构体数组,然后介绍结构体数组的定义和初始化方法,最后介绍如何使用结构体数组。

  • 9.4结构体指针(一)

    本次课首先通过一个引例引出结构体指针,然后介绍结构体指针的概念、定义、初始化和使用方法。

  • 9.5结构体指针(二)

    本次课介绍结构体指针在数组中的使用方法,结构体指针作为函数参数的作用和用法。

  • 9.6结构体应用举例

    本次课主要通过两个案例,进一步学习和掌握在程序设计中如何应用结构体。

  • 第十章文件

    本章主要介绍文件的基本概念,文本文件和二进制文件类型,C 语言文件存储的基本原
    理:文件缓冲系统的使用,文件结构及文件操作指针的定义与使用,自定义类型,文件操作
    处理基本步骤和过程,常用的文件操作函数等知识。

  • 10.1文件的认知

    本节介绍什么是文件、文件的分类、数据流及文件缓冲区和文件指针的相关概念。

  • 10.2文件的打开与关闭

    本节介绍如何打开和关闭文件件。

  • 10.3文件的顺序读写(一)

    本节学习文件的顺序读写操作。将介绍字符数据的读写、字符串数据的读写。

  • 10.4文件的顺序读写(二)

    本节通过3个案例介绍单文件和多文件的打开、读写、关闭等操作,以及二进制数据的读写和数据的格式化读写。

  • 10.5文件的其他操作

    本节就来学习文件的其他两种种常见操作,即文件的随机读写、文件读写的出错监测。

  • 开始学习
  • 第一章  作业测试
    第一章 引言

    1.1 初识C语言

    1.2 我的第一个C语言程序

    1.3 程序与算法

    视频数3
  • 第二章  作业测试
    第二章 C语言入门

    2.1 引例:温度转换

    2.2 引例:计算分段函数

    2.3 引例:输出温度转换表

    2.4 引例:生成乘方表和阶乘表

    视频数4
  • 第三章  作业测试
    第三章 基本数据类型和表达式

    3.1 标识符和关键字

    3.2 常量

    3.3 变量

    3.4 数据的格式化输出

    3.5 数据的格式化输入-字符型数据的输入输出

    3.6 运算符和表达式(一)

    3.7 运算符和表达式(二)

    3.8 运算符和表达式(三)

    3.9 数据类型转换

    视频数9
  • 第四章  作业测试
    第四章 分支结构程序设计

    4.1 分支结构的定义和运算符(一)

    4.2 分支结构的定义和运算符(二)

    4.3 if语句的三种形式(一)

    4.4 if语句的三种形式(二)

    4.5 if语句的嵌套

    4.6 switch语句(一)

    4.7 switch语句(二)

    4.8 分支结构应用举例

    视频数8
  • 第五章  作业测试
    第五章 循环

    5.1 循环的概念

    5.2 while语句

    5.3 do-while语句

    5.4 for语句

    5.5 break与continue语句

    5.6 循环的嵌套

    5.7 常见问题举例(一)

    5.8 常见问题举例(二)

    5.9 常见问题举例(三)

    视频数9
  • 第六章  作业测试
    第六章 函数

    6.1 引例:不同半径的圆形面积

    6.2 函数的定义

    6.3 函数的调用和声明

    6.4 函数的调用过程

    6.5 函数的两种特殊调用方式

    6.6 变量的生存期

    6.7 预处理(一)

    6.8 预处理(二)

    视频数8
  • 第七章  作业测试
    第七章 数组

    7.1 数组的概念与存储

    7.2 一维数组(一)

    7.3 一维数组(二)

    7.4 二维数组

    7.5 数组应用举例(一)

    7.6 数组应用举例(二)

    7.7 字符数组与字符串-字符数组

    7.8 字符数组与字符串-字符串的输入输出

    7.9 字符数组与字符串-字符串处理函数

    7.10 字符数组与字符串-应用举例

    视频数10
  • 第八章  作业测试
    第八章 指针基础

    8.1 指针概念和定义

    8.2 指针变量的引用

    8.3 指针与一维数组

    8.4 指针与二维数组

    8.5 指针与数组举例

    8.6 指针与字符串(一)

    8.7 指针与字符串(二)

    视频数7
  • 第九章  作业测试
    第九章 结构体

    9.1 结构体的概念与定义(一)

    9.2 结构体的概念与定义(二)

    9.3 结构体数组

    9.4 结构体指针(一)

    9.5 结构体指针(二)

    9.6 结构体应用举例

    视频数6
  • 第十章  作业测试
    第十章 文件

    10.1 文件的认知

    10.2 文件的打开与关闭

    10.3 文件的顺序读写(一)

    10.4 文件的顺序读写(二)

    10.5 文件的其他操作

    视频数5
  • 期末考试