C语言程序设计(西安工程大学)
C语言程序设计(西安工程大学)
2万+ 人选课
更新日期:2025/07/06
开课平台智慧树
开课高校西安工程大学
开课教师高晓娟郝筱松牟莉
学科专业工学计算机类
开课时间2025/01/21 - 2025/07/20
课程周期26 周
开课状态开课中
每周学时-
课程简介
欢迎大家选择学习《C语言程序设计》课程
课程大纲

在线教程

章节简介教学计划
C语言概述
登录后可预览视频
程序及程序设计语言
高晓娟
C程序的构成
高晓娟
调试C程序的步骤和方法
高晓娟
数据类型、运算符和表达式
常量和变量
郝筱松
变量和数据类型
郝筱松
运算符与表达式
郝筱松
关系运算与逻辑运算
郝筱松
结构化程序设计
算法及其表示方法
高晓娟
顺序结构程序设计
C语句概述
高晓娟
格式输入函数
高晓娟
格式输出函数
高晓娟
字符输入输出函数
高晓娟
选择结构程序设计
if语句
高晓娟
if的嵌套
高晓娟
条件运算符和条件表达式
高晓娟
switch语句
高晓娟
循环结构
while语句
高晓娟
do while 语句
高晓娟
for语句
高晓娟
循环的嵌套
高晓娟
break与continue语句
高晓娟
数组
一维数组
郝筱松
二维数组
郝筱松
数组的存储格式与初始化
郝筱松
数组应用-排序
郝筱松
数组处理字符串(上)
郝筱松
数组处理字符串(下)
郝筱松
函数
模块化程序设计
高晓娟
函数的定义和声明
高晓娟
函数调用
高晓娟
数组作为函数参数
高晓娟
函数的嵌套调用
高晓娟
函数的递归调用
高晓娟
变量的存储方式和生存期
高晓娟
局部变量和全局变量
高晓娟
指针
指针与指针变量的概念
牟莉
指针变量的定义及运算
牟莉
指针变量的应用举例
牟莉
用指针访问数组元素
牟莉
取地址符及指向数组的指针
牟莉
指针与二维数组
牟莉
指针与字符串
牟莉
指针与函数
牟莉
指针数组
牟莉
结构体与链表
结构体类型和变量的定义
郝筱松
结构体变量的使用
郝筱松
结构体数组和指针
郝筱松
结构体和函数
郝筱松
链表概述
郝筱松
文件
文件的概念
高晓娟
文件的打开与关闭
高晓娟
顺序读写数据文件
高晓娟
随机读写数据文件
高晓娟
  • 第一章C语言概述

    C语言是世界上应用最广泛的程序设计语言之一。它用途广泛、功能强大,语言简洁紧凑、使用灵活方便,程序结构非常良好,可以直接对计算机的硬件进行操作,这些特点使得C语言成为一种优秀的结构化程序设计语言。

  • 1.1程序及程序设计语言

    程序是一组计算机能够识别和执行的指令的集合。按照程序设计语言发展历程,可分为机器语言、汇编语言、高级语言3大类;C语言是国际上广泛流行的高级语言。

  • 1.2C程序的构成

    一个程序由一个或者多个源程序文件组成,函数是c程序的基本单位,一个c程序可由一个main函数和0个、1个或多个其他函数组成。

  • 1.3调试C程序的步骤和方法

    调试和运行一个C程序,一般要经过编辑、编译、连接和运行几个步骤。

  • 第二章数据类型、运算符和表达式

    计算机程序设计有两个基本问题:一个是数据的描述,一个是操作的描述。数据类型就是对数据的描述,它决定了存储单元的长度以及数据的存储形式。C语言提供了丰富的运算符,这些运算符及其表达式使得C语言功能十分完善。

  • 2.1常量和变量

    常量是在程序运行过程中,其值不能被改变的量。常量按表示形式可以分为字面常量和符号常量。

  • 2.2变量和数据类型

    变量是在程序运行期间,其值可以被改变的量。变量存储在内存当中,它的存储格式、编码方式以及所占内存大小,由变量的数据类型决定。C语言的基本数据类型分为整型、实型和字符型。

  • 2.3运算符与表达式

    运算符是表示特定数学或逻辑运算的符号,表达式是由运算符和操作数连接起来形成的式子。当一个表达式包含多个运算符时,其运算顺序由运算符的优先级和结合性决定。

  • 2.4关系运算与逻辑运算

    本讲主要介绍关系运算符与逻辑运算

  • 第三章结构化程序设计

    C语言是一种结构化的程序设计语言,它的基本结构包括顺序结构、选择结构和循环结构。

  • 3.1算法及其表示方法

    算法就是为解决一个问题而采取的方法和步骤。算法的特点包括:有穷性、确定性、可行性、有零个或者多个输入、有一个或者多个输出。流程图是表示算法的常用方法。

  • 3.2顺序结构程序设计

    顺序结构是最简单的一种基本结构,按语句出现的先后次序顺序执行。
    3.2.1 C语句概述
    C程序对数据的处理是通过执行“语句”来实现的。C语句的作用是向计算机系统发出操作指令,要求计算机执行相应的操作。C语句可分为简单语句、复合语句、控制语句和空语句。
    3.2.2 格式输入函数
    格式输入函数scanf用于为整型、实型、字符型变量输入数据。
    3.2.3 格式输出函数
    格式输出函数printf用于按指定格式向标准输出设备输出若干个任意类型的数据。
    3.2.4 字符输入输出函数
    字符输入函数getchar用于从标准输入设备输入一个字符,字符输出函数putchar用于向标准输出设备输出一个字符。

  • 3.3选择结构程序设计

    选择结构又称为分支结构,根据给定条件的判断结果,选择执行相应操作,控制程序流程。
    3.3.1 if语句
    if语句用于实现双分支选择结构。
    3.3.2 if的嵌套
    在if语句中又嵌套了一个或者多个if语句,就是 if的嵌套。if的嵌套可用于实现多分支选择结构。
    3.3.3 条件运算符和条件表达式
    条件运算符和条件表达式用于实现双分支选择结构。
    3.3.4 switch语句
    switch语句用于实现多分支选择结构。

  • 3.4循环结构

    循环结构又称为重复结构。循环结构是在一定条件下反复执行某段程序的流程结构。根据给定条件的判定结果,确定是继续执行某个功能还是退出循环。循环结构又分为当型循环和直到型循环。
    3.4.1 while语句
    while语句用于实现当型循环,它的特点是先判断循环条件,后执行循环体,循环体有可能一次也不被执行。当循环次数不确定时,宜使用while语句。
    3.4.2 do while 语句
    do while语句用于实现直到型循环,它的特点是先执行循环体,后判断循环条件,循环体至少被执行一次。
    3.4.3 for语句
    for语句用于实现当型循环。当循环次数确定时,宜使用for语句。
    3.4.4循环的嵌套
    一个循环体内又包含另一个完整的循环结构,就是循环的嵌套。内嵌的循环中,还可以再嵌套循环,从而形成多层循环。
    3.4.5 break与continue语句
    break语句可以用在switch语句中和循环体中。break语句用在循环体中,可以使得程序流程从循环体内跳出,提前结束循环。continue语句只能用在循环体中,它的作用是结束本次循环。

  • 第四章数组

    数组是一种构造数据类型,它是一组相同类型数据的集合,使用数组可以处理同类型的批量数据。

  • 4.1一维数组

    一维数组是数组中最简单的,它的元素由数组名加一个下标确定。

  • 4.2二维数组

    二维数组长称为矩阵,可以把二维数组看作一个特殊的一维数组,它的每一个元素又是一个一维数组。

  • 4.3数组的存储格式与初始化

    计算机的内存单元是按顺序进行编号的,数组却有“维数”的概念,它在内存中是以行为主顺序存储的。定义数组时可以给数组元素赋初值。

  • 4.4数组应用-排序

    数组是用来处理批量数据的,在实际应用中,经常需要在批量数据中进行插入、删除、查找和排序等操作,冒泡排序就是一种常用的排序方法。

  • 4.5数组处理字符串(上)

    字符串是由若干有效字符所构成的一个序列。它是一种在实际应用中使用频率极高的数据,C语言通常使用一维字符数组来存储一个字符串。

  • 4.6数组处理字符串(下)

    字符串是由若干有效字符所构成的一个序列。它是一种在实际应用中使用频率极高的数据,C语言通常使用一维字符数组来存储一个字符串。

  • 第五章函数

    C语言使用函数实现模块化程序设计。一个c程序由一个或者多个源程序文件组成,一个源程序文件由一个或者多个函数组成,函数是c程序的基本单位。当c程序由一个main函数和若干个其他函数构成时,由main函数调用其他函数,其他函数也可以相互调用,同一个函数可以被一个或者多个函数调用任意多次。

  • 5.1模块化程序设计

    模块化程序设计可以控制程序设计的复杂性、提高代码的重用性,缩短开发周期,有利于团队开发,同时也易于维护和扩充程序功能。

  • 5.2函数的定义和声明

    函数定义,实际上就是对函数的一个详细的描述,c程序中所有的函数都必须先定义后使用。一般应该在主调函数中对被调用函数进行声明,以便编译系统能正确的识别函数,并检查调用是否合法。

  • 5.3函数调用

    函数调用时,主调函数和被调用函数之间可能会有数据传递关系。当函数参数是基本类型时,把实参的值传递给形参。

  • 5.4数组作为函数参数

    数组名作为函数参数,在函数调用时,将实参数组的首地址传递给形参。

  • 5.5函数的嵌套调用

    函数的嵌套调用就是在调用一个函数的过程中又调用另一个函数。

  • 5.6函数的递归调用

    递归调用就是函数直接或者间接的调用它自身。

  • 5.7变量的存储方式和生存期

    存储类别指定了变量在内存中的存储方式。c语言中,存储类别有四种:自动的、静态的、寄存器的和外部的。

  • 5.8局部变量和全局变量

    在不同位置定义的变量,作用域是不同的。根据变量作用域的不同,把变量分为局部变量和全局变量。

  • 第六章指针

    指针是C语言中的一个重要特色,,正确灵活的运用指针,可以使程序简洁、紧凑、高效。

  • 6.1指针与指针变量的概念

    指针就是地址,指针变量是专门用来存放另一个变量的地址的变量。

  • 6.2指针变量的定义及运算

    在定义指针变量时,必须指定基类型;指针变量可以进行算术运算,其运算结果取决于指针变量的基类型。

  • 6.3指针变量的应用举例

    指针变量必须先赋值,再使用。通过指针变量可以间接访问另一个变量。指针变量作为函数参数时,将所指向的变量的地址传递给被调用函数,在被调用函数中,通过地址访问调用函数中定义的局部变量。

  • 6.4用指针访问数组元素

    可以通过指向数组的指针来引用数组元素。

  • 6.5取地址符及指向数组的指针

    指针可以指向二维数组中的一个元素,也可以指向二维数组中的某一行元素。

  • 6.6指针与二维数组

    指向字符串的指针变量用于存放字符串的起始地址,通过指针引用字符串更加灵活方便。

  • 6.7指针与字符串

    指向字符串的指针变量用于存放字符串的起始地址,通过指针引用字符串更加灵活方便。

  • 6.8指针与函数

    函数指针是用于存放函数的起始地址,指向函数的指针变量的一个重要用途是把函数的地址作为参数传递到其他函数。一个函数也可以返回一个指针值。

  • 6.9指针数组

    可以通过指向数组的指针来引用数组元素。

  • 第七章结构体与链表

    结构体也是一种构造类型,它由若干类型相同或不同的元素构成。链表的结点可以用结构体类型来描述。

  • 7.1结构体类型和变量的定义

    结构体是一种由用户自己定义的数据类型,所以要先声明结构体类型,再用声明的结构体类型定义结构体变量。

  • 7.2结构体变量的使用

    除了同类型结构体变量之间的整体赋值之外,结构体变量一般是不能够整体引用,只能引用结构体变量的成员。

  • 7.3结构体数组和指针

    在定义数组时,可以指定结构体类型作为数组的元素类型,这种数组称为“结构体数组”;如果一个指针用于存放结构体变量的地址,这样的指针称为结构体指针。

  • 7.4结构体和函数

    结构体变量做为函数参数,参数传递方式是批量值传递,如果想要传递地址,也可以用指向结构体的指针变量做函数参数。

  • 7.5链表概述

    链表是一种动态存储的数据结构。它由一系列结点组成,每个结点包括两个部分:用于存储数据元素的数据域,及用于存储下一个结点地址的指针域;结点可以在运行时动态生成。

  • 第八章文件

    本章主要讲解文件的概念、文件的打开与关闭以及顺序读写数据文件和随机读写数据文件。

  • 8.1文件的概念

    使用文件对大批量的数据进行输入和输出,不仅可以提高效率,还可以使数据长期保存,反复使用。通过文件指针访问文件。

  • 8.2文件的打开与关闭

    打开文件是为文件建立相应的信息区和文件缓冲区,并使指针变量指向信息区;关闭文件是撤销文件信息区和文件缓冲区,使文件指针变量不再指向该文件信息区。对文件读写之前,先要打开文件,在文件读写操作结束之后,应该关闭文件。

  • 8.3顺序读写数据文件

    对文件从头到尾按顺序逐个读出或写入,可以读写字符/字符串,也可以按格式读写任何类型的数据。

  • 8.4随机读写数据文件

    随机对文件中任何位置上的数据进行访问。为了实现随机读写,要移动文件位置标记,使它指向需要读写的位置,然后再进行读写。

  • 开始学习
  • 第一章  作业测试
    第一章 C语言概述

    1.1 程序及程序设计语言

    1.2 C程序的构成

    1.3 调试C程序的步骤和方法

    视频数3
  • 第二章  作业测试
    第二章 数据类型、运算符和表达式

    2.1 常量和变量

    2.2 变量和数据类型

    2.3 运算符与表达式

    2.4 关系运算与逻辑运算

    视频数4
  • 第三章  作业测试
    第三章 结构化程序设计

    3.1 算法及其表示方法

    3.2 顺序结构程序设计

    3.3 选择结构程序设计

    3.4 循环结构

    视频数14
  • 第四章  作业测试
    第四章 数组

    4.1 一维数组

    4.2 二维数组

    4.3 数组的存储格式与初始化

    4.4 数组应用-排序

    4.5 数组处理字符串(上)

    4.6 数组处理字符串(下)

    视频数6
  • 第五章  作业测试
    第五章 函数

    5.1 模块化程序设计

    5.2 函数的定义和声明

    5.3 函数调用

    5.4 数组作为函数参数

    5.5 函数的嵌套调用

    5.6 函数的递归调用

    5.7 变量的存储方式和生存期

    5.8 局部变量和全局变量

    视频数8
  • 第六章  作业测试
    第六章 指针

    6.1 指针与指针变量的概念

    6.2 指针变量的定义及运算

    6.3 指针变量的应用举例

    6.4 用指针访问数组元素

    6.5 取地址符及指向数组的指针

    6.6 指针与二维数组

    6.7 指针与字符串

    6.8 指针与函数

    6.9 指针数组

    视频数9
  • 第七章  作业测试
    第七章 结构体与链表

    7.1 结构体类型和变量的定义

    7.2 结构体变量的使用

    7.3 结构体数组和指针

    7.4 结构体和函数

    7.5 链表概述

    视频数5
  • 第八章  作业测试
    第八章 文件

    8.1 文件的概念

    8.2 文件的打开与关闭

    8.3 顺序读写数据文件

    8.4 随机读写数据文件

    视频数4
  • 期末考试