C语言程序设计(山东联盟-青岛大学)
C语言程序设计(山东联盟-青岛大学)
5000+ 人选课
更新日期:2025/04/25
开课时间2025/01/21 - 2025/07/20
课程周期26 周
开课状态开课中
每周学时-
课程简介
《C语言程序设计》是计算机相关专业的一门专业基础课程,主要培养学生利用计算机语言编制程序解决问题的能力。本课程系统讲授了C语言的基础知识、结构化程序设计方法、数组、函数、指针、结构及文件的应用。通过本门课程的学习,使学生熟悉C语言的集成开发环境,掌握使用C语言进行结构化、模块化的程序设计方法,理解计算思维的思想,具备基本的问题分析、数据表达、算法描述和编程实现的能力,为进一步获得程序设计相关知识奠定基础。
课程大纲

在线教程

章节简介教学计划
引言
登录后可预览视频
一个C语言程序
兰淑丽
程序与程序设计语言
兰淑丽
程序设计语言的语法
兰淑丽
C语言的发展历史与特点
兰淑丽
实现问题求解的过程
兰淑丽
数据类型与数据运算
屏幕输出程序
高雪霞
变量与常量
高雪霞
数据类型
整型
高雪霞
字符型
高雪霞
实型
高雪霞
算术运算
高雪霞
赋值运算
高雪霞
自增自减运算和长度运算
高雪霞
数据类型转换
高雪霞
数据的输入与输出
格式化输出函数和输入函数
高雪霞
常用数学函数
高雪霞
整型数据的输入和输出
高雪霞
实型数据的输入和输出
高雪霞
字符型数据的输入和输出
高雪霞
分支结构
关系运算和逻辑运算
兰淑丽
单分支结构(if)
兰淑丽
双分支结构(if-else)
兰淑丽
多分支结构(if-else if)
兰淑丽
switch语句
switch语句1
兰淑丽
switch语句2
兰淑丽
分支嵌套
兰淑丽
循环结构
for语句
高雪霞
while语句
高雪霞
do-while语句
高雪霞
辅助循环控制语句
高雪霞
嵌套循环
高雪霞
函数
函数的定义
吴海霞
函数的调用
吴海霞
函数的数据传递
吴海霞
结构化程序设计
吴海霞
函数程序设计
吴海霞
局部变量与全局变量
吴海霞
变量的生存周期与存储方式
吴海霞
数组
一维数组的定义与引用
毛爱英
一维数组的初始化
毛爱英
一维数组的应用
毛爱英
二维数组的定义与引用
毛爱英
二维数组的初始化
毛爱英
二维数组的应用
毛爱英
字符数组
毛爱英
字符串函数
毛爱英
指针
指针变量的定义与初始化
地址与指针的关系
曲翠璐
指针变量的定义与初始化
曲翠璐
指针作为函数的参数
值传递
曲翠璐
地址传递
曲翠璐
指针在数组中的使用
指针、数组和地址间的关系
曲翠璐
数组名作为函数的参数
曲翠璐
字符串和字符指针
字符串和字符指针
曲翠璐
常用字符串处理函数-1
曲翠璐
常用字符串处理函数-2
曲翠璐
指针实现内存动态分配
曲翠璐
结构体、共同体、枚举以及文件
结构体类型与结构体变量
郑世秀
结构体数组
郑世秀
结构体指针
郑世秀
结构体与函数
郑世秀
共同体
郑世秀
枚举
郑世秀
文件的概念与类型
郑世秀
文件的打开与关闭
郑世秀
文件的读写
郑世秀
  • 第一章引言

    本章作为本课程的引言,将简要介绍程序设计语言的功能、语法要素、C语言的历史和特点、程序设计求解问题的一般步骤等,以及VC++6.0开发环境的介绍。

  • 1.1一个C语言程序

    本节简单介绍C语言程序的组成部分。

  • 1.2程序与程序设计语言

    本节介绍程序和程序设计语言的概念,并简单讲解程序设计语言的功能。

  • 1.3程序设计语言的语法

    本节以C语言为例,简单说明程序设计语言中最主要的语法要素,如标识符、表达式等。

  • 1.4C语言的发展历史与特点

    本节简单介绍程序设计语言的发展历史,C语言的发展历史,以及C语言的优缺点。

  • 1.5实现问题求解的过程

    本节讲解程序设计的一般性过程和步骤。

  • 第二章数据类型与数据运算

    本章主要介绍整型、字符型和实型3种基本数据类型;算术运算、赋值运算和自增自减运算以及运算过程中数据类型的转换。

  • 2.1屏幕输出程序

    本节通过一个简单的屏幕输出程序,介绍C语言程序的基本框架

  • 2.2变量与常量

    本节主要介绍C语言中常量和变量的概念

  • 2.3数据类型

    本节主要介绍整型、实型和字符型3种基本数据类型

  • 2.4算术运算

    本节主要介绍算术运算中的算术运算符、算术表达式以及算术运算规则。

  • 2.5赋值运算

    本节主要介绍赋值运算中的赋值运算符、赋值表达式以及赋值运算的数据类型转换。

  • 2.6自增自减运算和长度运算

    本节主要介绍自增自减运算的自增自减运算符以及自增自减运算规则。

  • 2.7数据类型转换

    本节主要介绍数据运算过程中的自动数据类型转换和前值数据类型转换。

  • 第三章数据的输入与输出

    本章主要介绍C语言中格式化的输入和输出函数,以及整型、实型和字符型数据的输入和输出格式控制

  • 3.1格式化输出函数和输入函数

    本节主要介绍格式化的输出函数printf()和输入函数scanf()的用法。

  • 3.2常用数学函数

    本节主要介绍常用的六种数学函数的用法。

  • 3.3整型数据的输入和输出

    本节主要介绍整型数据的输入和输出规则。

  • 3.4实型数据的输入和输出

    本节主要介绍实型数据也叫浮点型数据的输入和输出规则。

  • 3.5字符型数据的输入和输出

    本节主要介绍字符型数据的输入输出规则

  • 第四章分支结构

    本章详细介绍分支结构,包括单分支、双分支、多分支、switch语句以及分支嵌套等。

  • 4.1关系运算和逻辑运算

    本节介绍在分支结构的表达式中最常见的关系运算和逻辑运算。

  • 4.2单分支结构(if)

    本节介绍第一种分支结构——if单分支结构。

  • 4.3双分支结构(if-else)

    本节介绍最典型的双分支结构——if-else语句。

  • 4.4多分支结构(if-else if)

    本节介绍最常用的多分支结构——if-else if结构。

  • 4.5switch语句

    本节介绍switch语句,作为多分支结构的补充实现语句,根据其中break语句的应用与否,有3种情况的switch语句。

  • 4.6分支嵌套

    本节介绍分支结构的嵌套实现,各类分支结构都可以互相嵌套,需特别注意的是单分支结构的嵌套。

  • 第五章循环结构

    本章主要介绍C语言中实现循环结构的for语句、while语句和do-while语句的用法;以及辅助循环控制语句和循环嵌套。

  • 5.1for语句

    本节主要介绍循环结构中for语句的一般形式、执行流程以及for语句的应用。

  • 5.2while语句

    本节主要介绍循环结构中while语句的一般形式、执行流程以及while语句的应用。

  • 5.3do-while语句

    本节主要介绍循环结构中do-while语句的一般形式、执行流程以及do-while语句的应用。

  • 5.4辅助循环控制语句

    本节主要介绍辅助循环控制的break语句和continue语句的用法

  • 5.5嵌套循环

    本节主要介绍什么叫循环嵌套以及在程序设计过程中怪如何进行嵌套。

  • 第六章函数

    本章主要介绍函数的定义、调用、数据传递,同时介绍结构化程序的思想,以及变量的作用域、变量的生存周期与存储方式。

  • 6.1函数的定义

    本节主要通过程序的解析来介绍函数的定义。

  • 6.2函数的调用

    本节主要介绍函数的调用过程以及函数的原型声明。

  • 6.3函数的数据传递

    本节主要介绍函数的数据传递,参数传递与返回值传递。

  • 6.4结构化程序设计

    本节主要介绍结构化程序设计思想:自顶向下分析问题的方法、模块化设计、结构化编码。

  • 6.5函数程序设计

    本节主要进行程序解析,分析函数的程序设计。

  • 6.6局部变量与全局变量

    本节主要介绍局部变量与全局变量,分析全局变量的应用以及二者的不同。

  • 6.7变量的生存周期与存储方式

    本节主要介绍变量的生存周期以及存储方式;介绍静态局部变量的应用。

  • 第七章数组

    数组是一组有序数据的集合,可以批量处理同一数据类型的数据,用数组名和下标可以唯一地确定数组元素。数组有一维、二维及多维数组之分,本章重点介绍一维数组与二维数组。相比二维数组,一维数组的应用比较简单。无论是一维数组还是二维数组,都要先定义再引用,其定义与引用都有固定的一般格式。一维数组在内存中从第一个元素顺序存放,二维数组由于有行和列的概念,其在内存中是按行存放的。给各个数组元素赋值称为数组的初始化,二维数组的初始化方法比一维数组复杂。一维数组与二维数组在应用中都离不开循环结构,本章通过程序的详细讲解来介绍一维数组与二维数组的具体应用。本章最后介绍了一维字符数组、字符串及常用的字符串函数,字符串作为特殊的一维字符数组,在编程中要能对其灵活处理。

  • 7.1一维数组的定义与引用

    本小节首先引入数组的概念,然后重点介绍一维数组的定义与引用。一维数组是数组中最简单的形式,它的元素只需要用数组名加一个下标就能唯一地确定;一维数组中的元素在内存中是连续存放的,数组名就是一个地址常量,用来存放数组内存空间的首地址;一维数组在定义后就可以引用其元素,而且只能引用单个的数组元素,不能一次引用整个数组。在实际应用中要注意区分一维数组定义与引用的格式不同。

  • 7.2一维数组的初始化

    为了使程序简洁,常在定义数组的同时给各数组元素赋值,这称为数组的初始化。通常可以用“初始化列表”的方法实现一维数组的初始化,而且在对一维数组进行初始化时可以只针对部分元素进行赋值。

  • 7.3一维数组的应用

    一维数组的应用离不开循环。将一维数组的下标作为循环变量,通过循环,可以逐个处理一维数组元素。本节通过“用数组处理Fibonacci数列问题”、“查找数组中给定的数”两个程序来学习如何利用一维数组解决实际问题。

  • 7.4二维数组的定义与引用

    二维数组的描述要有行和列的概念,二维数组的元素个数是行长度与列长度的乘积。和一维数组一样,二维数组也要先定义,再引用。对于二维数组元素,在内存中排列的顺序是按行存放的。

  • 7.5二维数组的初始化

    二维数组的初始化方法比较多,本节主要介绍4种方法,分别为分行赋初值法、顺序赋初值法、部分元素赋初值以及省略行长度赋值法。在实际应用中要灵活选用适合的初始化方法。

  • 7.6二维数组的应用

    二维数组的应用也离不开循环,将二维数组的行下标和列下标分别做为循环变量, 通过二重循环,可以遍历二维数组。本节通过“矩阵输出”、“求矩阵中的最大值”两个程序来学习如何利用二维数组解决实际问题。

  • 7.7字符数组

    一维字符数组的定义、引用、初始化与其他类型的一维数组一样。字符串是一种特殊的一维字符数组,字符串在C语言中采用一维字符数组方式存储,故对字符串的处理实际上就是对一维数组的处理,只是循环的控制条件由数组元素值是否等于’\0’来确定。

  • 7.8字符串函数

    主要掌握puts、gets等7个常用字符串函数。在学习过程中需要重点掌握函数的一般形式及用法,由于有些函数的功能相似或相关,大家可以对其成对记忆。

  • 第八章指针

    指针是c语言中一个非常重要的概念,是c语言的特色之一,使用指针可以对复杂数据进行处理,可以对计算机的内存分配进行控制,是一个重点内容。本章学习指针变量、内存单元和地址之间的关系,如何定义、初始化和使用指针变量,指针变量的基本运算,如何使用指针操作所指向的变量,学习指针变量与简单变量作为函数参数的本质区别,学习指针和数组之间的关系,学习字符数组和字符指针对字符串进行复制、比较等操作,学习内存的动态管理方法。

  • 8.1指针变量的定义与初始化

    本小节介绍地址和指针的关系,在程序运行过程中,变量或程序代码被存储在以字节为单位组织的内存单元中,每一个内存单元有唯一的地址、存储的内容和对应的变量名,访问变量有两种方法,使用变量名直接访问变量和使用指针间接访问变量。

  • 8.2指针作为函数的参数

    本节主要介绍指针作为函数参数的使用,值传递和地址传递本质区别。

  • 8.3指针在数组中的使用

    本节主要介绍指针在数组中是怎样使用的,指针、数组和地址间是什么样的关系,数组名作为函数的参数时,C语言是怎样识别运行的。

  • 8.4字符串和字符指针

    本节主要介绍字符串和字符指针的关系,通过实例理解字符指针怎样用来操作字符串,常用的字符串处理函数的使用。

  • 8.5指针实现内存动态分配

    本节主要介绍使用指针实现内存动态分配的方法。

  • 第九章结构体、共同体、枚举以及文件

    本章讲解结构体、共同体、枚举类型的概念及应用,以及文件的相关概念、文件的打开与关闭、文件的读写函数的应用。

  • 9.1结构体类型与结构体变量

    本节介绍什么是结构体类型、如何声明结构体类型,以及如何定义结构体类型的变量。

  • 9.2结构体数组

    本节介绍结构体与数组的区别与联系,以及如何定义并使用结构体数组。

  • 9.3结构体指针

    本节介绍在结构体中运用指针。指向结构体变量的指针提供了对结构体成员的更加灵活的访问形式。而指向结构体数组的指针可以灵活访问一个结构体数组的元素。

  • 9.4结构体与函数

    本节介绍结构体与函数。结构体元素、整个结构体变量都可以作为函数的参数。向函数传递结构体指针可以高效地访问结构体。

  • 9.5共同体

    共同体又叫共用体、联合体。本节介绍共同体变量的定义以及简单应用。

  • 9.6枚举

    本节介绍枚举类型的定义和简单应用。

  • 9.7文件的概念与类型

    本节介绍文件的相关概念和文件的类型。

  • 9.8文件的打开与关闭

    本节介绍文件类型指针的概念以及文件的打开和关闭方法。

  • 9.9文件的读写

    本节介绍文件的主要读写函数及其具体应用。

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

    1.1 一个C语言程序

    1.2 程序与程序设计语言

    1.3 程序设计语言的语法

    1.4 C语言的发展历史与特点

    1.5 实现问题求解的过程

    视频数5
  • 第二章  作业测试
    第二章 数据类型与数据运算

    2.1 屏幕输出程序

    2.2 变量与常量

    2.3 数据类型

    2.4 算术运算

    2.5 赋值运算

    2.6 自增自减运算和长度运算

    2.7 数据类型转换

    视频数9
  • 第三章  作业测试
    第三章 数据的输入与输出

    3.1 格式化输出函数和输入函数

    3.2 常用数学函数

    3.3 整型数据的输入和输出

    3.4 实型数据的输入和输出

    3.5 字符型数据的输入和输出

    视频数5
  • 第四章  作业测试
    第四章 分支结构

    4.1 关系运算和逻辑运算

    4.2 单分支结构(if)

    4.3 双分支结构(if-else)

    4.4 多分支结构(if-else if)

    4.5 switch语句

    4.6 分支嵌套

    视频数7
  • 第五章  作业测试
    第五章 循环结构

    5.1 for语句

    5.2 while语句

    5.3 do-while语句

    5.4 辅助循环控制语句

    5.5 嵌套循环

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

    6.1 函数的定义

    6.2 函数的调用

    6.3 函数的数据传递

    6.4 结构化程序设计

    6.5 函数程序设计

    6.6 局部变量与全局变量

    6.7 变量的生存周期与存储方式

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

    7.1 一维数组的定义与引用

    7.2 一维数组的初始化

    7.3 一维数组的应用

    7.4 二维数组的定义与引用

    7.5 二维数组的初始化

    7.6 二维数组的应用

    7.7 字符数组

    7.8 字符串函数

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

    8.1 指针变量的定义与初始化

    8.2 指针作为函数的参数

    8.3 指针在数组中的使用

    8.4 字符串和字符指针

    8.5 指针实现内存动态分配

    视频数10
  • 第九章  作业测试
    第九章 结构体、共同体、枚举以及文件

    9.1 结构体类型与结构体变量

    9.2 结构体数组

    9.3 结构体指针

    9.4 结构体与函数

    9.5 共同体

    9.6 枚举

    9.7 文件的概念与类型

    9.8 文件的打开与关闭

    9.9 文件的读写

    视频数9
  • 期末考试