SPOC学校专有课程
程序设计基础(那俊)
第1次开课
开课时间: 2021年09月21日 ~ 2021年12月30日
学时安排: 4小时每周
当前开课已结束 已有 88 人参加
老师已关闭该学期,无法查看
spContent=《程序设计基础》课程是计算机类专业课程中的一门重要专业基础课,课程的任务是使学生掌握程序设计的思想,理解核心编程概念,掌握独立于编程语言环境的程序设计方法,理解程序设计背后的逻辑并获得有效的编程技能。课程采用英文课件PPT及中文视频讲解的方式,将中英文教学资源进行有效融合。
《程序设计基础》课程是计算机类专业课程中的一门重要专业基础课,课程的任务是使学生掌握程序设计的思想,理解核心编程概念,掌握独立于编程语言环境的程序设计方法,理解程序设计背后的逻辑并获得有效的编程技能。课程采用英文课件PPT及中文视频讲解的方式,将中英文教学资源进行有效融合。
—— 课程团队
课程概述

《程序设计基础》课程以计算思维构建为主线,把相关基础知识、编程技术和程序设计思想融会贯通,并将软件工程的开发方法融入到课程教学内容之中。课程采用英文课件PPT及中文视频讲解的方式,将中英文教学资源相结合,包括每周的测验题目均为中英文对照题目,培养学生的国际视野和自学能力。课程教学内容包括数据类型、控制结构、文件访问与数组等核心编程概念以及模块化问题分析、程序设计、程序文档编写、代码风格、面向对象理念等程序设计技术。通过对程序设计流程、基本控制结构、搜索与排序算法、文件操作及基本编程设计工具的学习,提高学生解决实际问题的能力,为计算机相关专业后续核心课程的学习打下坚实的基础。


本SPOC课程主要作为线上MOOC教学内容的补充,提供本班实际线下课程的课件、编程案例、源代码等学习素材,布置本班课后练习和作业,达到线下班级教学目标。

成绩 要求

课程学习的最终成绩构成说明(不限于慕课平台):

(1)平时作业10%,由SPOC的单元测验成绩折算;

(2)平时测验20%,五次线上课程课堂测验和四次实验课编程测验成绩各折算10%;

(3)实验20%,四次实验代码运行效果和最终大作业报告分别折算10%;

(4)期末机考50%,包括客观题和编程题。


课程大纲
Introduction to Computers
课时目标:布置课程安排,介绍课程学习的背景,包括什么是计算机硬件软件,计算机如何存储数据以及一个程序如何工作等。
1.1 Introduction
1.2 Hardware and Software
1.3 How Computers Store Data
1.4 How a Program Works
1.5 Types of Software
Introduction to C Programming
课时目标:以示例程序讲解的形式切入对C语言程序基本结构与构成元素的介绍,并解释内存在编程中的重要作用。
2.1 A Simple C Program: Printing a Line of Text
2.2 Another Simple C Program: Adding Two Integers
2.3 Memory Concepts
2.4 Arithmetic in C
2.5 Standard Input/Output Functions
C Program Selection Structure
课时目标:介绍算法的概念,引出对控制结构的介绍以及如何使用C语言中if、if..else和switch语句实现分支结构。
3.1 Algorithms
3.2 Control Structures
3.3 The if Statement
3.4 The if…else Statement
3.5 The switch Multiple-Selection
3.6 Case Study
C Program Repetition Structure
课时目标:介绍循环结构的概念,及如何使用C语言中的while、for和do…while实现循环。依托案例讲解循环与选择结构的综合使用,区分break和continue的使用差别。
4.1 Introduction
4.2 Iteration Essentials
4.3 The while Statement
4.4 for Iteration Statement
4.5 do…while Iteration Statement
4.6 break and continue Statement
4.7 Structured Programming Summary
C Functions
课时目标:介绍模块化编程的概念,引出C语言中函数的定义,以随机数生成为例,讲解并展示C语言中库函数的使用,以及如何使用函数实现模块化编程。详细讲解函数的构成,结合实例讲解编写和调用C语言函数的具体语法。解析函数的参数传递机制以及函数的高级用法,递归调用。学习理解递归调用的含义、递归程序的编写,通过实际案例加深对递归调用的理解。
5.1 Introduction
5.2 Modularizing Programs in C
5.3 Math Library Functions
5.4 Case Study: Random Number Generation
5.5 Function Definitions
5.6 Example: A Game of Chance
5.7 Passing Arguments By Value and By Reference
5.8 Storage Classes
5.9 Scope Rules
5.10 Recursion
5.11 Passing Arguments by reference
C Arrays and Strings
课时目标:讲解数组的基本概念以及如何定义和使用数组,并给出高维数组的定义和使用方法。介绍字符数组的概念及操作,以及如何使用字符数组存储多个字符串,符串和字符串数组的定义与相关函数。针对数组中元素的查找和排序问题展开讨论,强化算法设计能力。
6.1 Introduction
6.2 Arrays
6.3 Defining Arrays
6.4 Array Examples
6.5 Multidimensional Arrays
6.6 Using Character Arrays to Store and Manipulate Strings
6.7 Fundamentals of Strings and Characters
6.8 Character-Handling Library
6.9 String-Conversion Functions
6.10 Searching
6.11 Sorting
C Structures, Unions and Enumerations
课时目标:介绍为什么需要结构体以及C语言中结构体的定义、初始化、结构体成员访问以,对比介绍共用体和枚举类型的含义和使用方法。结合案例介绍结构体与函数、结构体与数据的混合使用方法。
7.1 Introduction
7.2 Structure Definitions
7.3 Initializing Structures
7.4 sizeof Operator
7.5 Accessing Structure Members
7.6 Unions
7.7 Enumeration Constants
7.8 Structures and Functions
7.9 Structures and Arrays
C Pointers
课时目标:指针的基础:讲解指针的基本概念以及物理含义,介绍指针变量的定义、初始化及使用方法。结合指针在函数中的使用,讲解值传递与地址传递的区别与联系。指针与数组:讲解指针与数组之间的关系以及指针数组的概念及指向函数的指针等复杂结构与操作。
8.1 Introduction
8.2 Pointer Variable Definitions and Initialization
8.3 Pointer Operators
8.4 Passing Arguments to Functions by Reference
8.5 Bubble Sort Using Pass-by-Reference
8.6 Pointer Expressions and Pointer Arithmetic
8.7 Relationship between Pointers and Arrays
8.8 Arrays of Pointers
8.9 Pointers to Functions
8.10 Accessing Structure Members
C Linked Lists
课时目标:分析动态内存分配的需求以及基本原理,解释链表的概念。基于链表实现数据的动态存储,理解并掌握链表元素的增、删、改、查等方法。
9.1 Introduction
9.2 Self-Referential Structures
9.3 Dynamic Memory Allocation
9.4 Linked Lists
C File Processing
课时目标:介绍文件的基本概念和类型,讲解C语言中顺序访问文件的相关函数和操作方法。介绍随机访问文件的相关函数和操作方法。
10.1 Introduction
10.2 Files and Stream
10.3 Creating a Sequential-Access File
10.4 Reading Data from a Sequential-Access File
10.5 Writing Data to a Sequential-Access File
10.6 Random-Access Files
10.7 Creating a Random-Access File
10.8 Writing Data Randomly to a Random-Access File
10.9 Reading Data from a Random-Access File
展开全部
源课程

该SPOC课程部分内容来自以上源课程,在源基础上老师进一步增加了新的课程内容

东北大学
1 位授课老师
那俊

那俊

讲师

下载
下载

下载App