软件技术基础教学大纲

合集下载

《计算机软件技术基础》- 课程教学大纲

《计算机软件技术基础》- 课程教学大纲

《计算机软件技术基础》课程教学大纲

一、课程概况

英文名:Introduction to Software Technique

开课单位:机械工程学院

课程编码:201102

学分学时:2.5学分40学时

授课对象:机械自动化专业

先修课程:《C语言》,《微型计算机原理》

课程目的和主要内容:

该课程是机械自动化专业一门重要的学科基础课程,开设目的在于使学生对计算机软件有比较深入和系统的了解,通过对软件工程、数据结构和操作系统方面基本知识和技术的系统介绍,让学生熟练掌握数据结构的基本数据运算并代码实现,奠定编写复杂应用程序的基础。

二、课程教学内容及要求

第一章:计算机软件的基本概念

软件开发方法与技术。要求学生学习和掌握软件的基本概念,软件的研制过程、软件工程概述、软件设计方法、程序结构、算法描述工具,如流程图和算法语言。

1.1 计算机软件的概念

1.2 计算机软件的发展及应用

1.3 软件工程学的基本思想和一般方法

第二章:数据结构与算法

要求学生学习和掌握数据结构的基本概念与原理、线性表、顺序存储结构和链式存储结构、算法实现、数组、栈、队列、树。

2.1 数据结构的概念与算法描述

(1)掌握数据结构基本概念

(2)了解算法描述方法

(3)C语言程序设计简介

2.2 线性结构

2.2.1 线性表

(1)掌握顺序表的定义及其基本运算

(2)掌握线性链表的定义及其基本运算(单链表、循环链表)

(3)了解线性表的应用

2.2.2 栈

(1)掌握栈(顺序栈、链栈)的定义及其运算

(2)了解栈的应用

2.2.3 队列

(1)掌握队列(单队列、循环队列、链对列)的定义及其运算

计算机软件基础教学大纲

计算机软件基础教学大纲

计算机软件基础教学大纲

课程概述

《计算机软件基础》课程是以数据结构为主、包含软件工程和操作系统基础知识的一个课程群。主要内容包括线性数据结构(线性表、栈、队列、串和数组)、非线性数据结构(树和图)、排序和查找、资源管理技术、软件工程技术等。重点在各种数据结构的存储结构和基本操作的算法实现。

本课程是为电类非计算机专业本科生开设的一门学科基础必修课,是计算机类课程的基础课程,在电类课程体系中具有重要的地位。通过本课程学习应使学生了解和掌握计算机软件技术的基本理论和数据处理方法,结合先修课程C语言程序设计,可为后续的专业课程以及毕业设计开发应用软件打下基础。

授课目标

通过本这门课程的学习,培养学生利用计算机软件技术解决问题的基本思路与能力,使学生掌握程序设计技术和进行应用软件开发所必要的基本知识,具有初步的软件分析、算法与数据库的设计、软件设计的能力。使学生掌握开发应用软件所必需的软件基础知识,在理解计算机系统软件特点的基础上,采用较好的数据结构和开发方法,结合本专业知识完成对较为复杂应用系统的分析、计算与设计。

课程大纲

第一章绪论

1.1计算机软件

1.2数据结构概述

1.3算法及分析

第一章测试

第一章作业

第二章线性数据结构

2.1线性表概念

2.2线性表的顺序存储及其运算

2.3线性表的链式存储及其运算-1

2.4线性表的链式存储及其运算-2线性表部分的作业

线性表部分单元测验

第二章线性数据结构

2.5栈

2.6队列

2.7串

2.8数组

栈和队列的作业

栈和队列部分测试

串和数组的作业

串和数组部分测试

第三章非线性数据结构

软件技术专业全套教学大纲

软件技术专业全套教学大纲

目录

理论教学大纲部分

软件技术专业《数据库应用(Access)》教学大纲 (2)

软件技术专业《数据库访问技术程序设计》教学大纲 (7)

软件技术专业《C# Windows程序设计》教学大纲 (11)

软件技术专业《C#程序设计》教学大纲 (15)

软件技术专业《C语言程序设计》教学大纲 (20)

软件技术专业《HTML和XML语言》教学大纲 (24)

软件技术专业《JAVA语言及应用》教学大纲 (29)

软件技术专业《Visual 程序设计》教学大纲 (34)

软件技术专业《WEB程序设计》教学大纲 (38)

软件技术专业《WEB程序设计()》教学大纲 (42)

软件技术专业《计算机技术基础》教学大纲 (46)

软件技术专业《计算机网络技术》教学大纲 (50)

软件技术专业《计算机专业英语》教学大纲 (54)

软件技术专业《软件工程与团队开发》教学大纲 (58)

软件技术专业《数据结构》教学大纲 (61)

软件技术专业《网络数据库SQL Server》教学大纲 (66)

软件技术专业《网页与网站设计》教学大纲 (70)

软件技术专业《微机硬件基础》教学大纲 (75)

实训教学大纲部分

软件技术专业《数据库应用(Access)》实训教学大纲 (78)

软件技术专业《数据库访问技术程序设计》实训教学大纲 (81)

软件技术专业《HTML和XML语言》实训教学大纲 (83)

软件技术专业《Visual 程序设计》实训教学大纲 (86)

软件技术专业《C#程序设计》实训教学大纲 (88)

软件技术专业《WEB程序设计》实训教学大纲 (90)

《计算机软件技术基础》教学大纲

《计算机软件技术基础》教学大纲

《计算机软件技术基础》教学大纲

计算机软件技术基础教学大纲

一、课程描述

计算机软件技术基础是一门研究计算机软件的基础知识与技术的课程。通过本课程的学习,学生将掌握计算机操作系统、计算机网络、数据库管

理系统、软件工程等方面的基础知识和常用技术,为今后进一步学习计算

机相关专业课程以及从事相关工作提供基础支持。

二、课程目标

1.了解计算机操作系统的基本原理和实现技术,熟悉操作系统的常用

功能和应用;

2.理解计算机网络的基本概念、工作原理和常用协议,掌握网络通信

的基本技术;

3.掌握数据库管理系统的基本原理和常见数据操作操作技术,了解数

据库应用的一般规程;

4.了解软件工程的基本概念和原理,了解常用的软件开发方法和流程;

5.培养学生的逻辑分析与问题解决能力,培养学生的数据处理和编程

能力;

6.培养学生的团队合作和沟通能力,培养学生的创新意识和实践能力。

三、教学内容

1.计算机操作系统基础

基本概念和原理、进程管理、内存管理、文件系统、输入输出管理、操作系统的应用。

2.计算机网络基础

网络基本概念、网络通信协议、局域网和广域网、网络安全基础、网络的应用。

3.数据库管理系统基础

数据库基本概念、关系型数据库、SQL语言、数据操作语句、数据库设计和规范、数据库应用。

4.软件工程基础

软件工程概念和原理、软件开发过程、需求分析与规格说明、软件设计与实现、软件测试与维护、软件工程实践。

四、教学方法

1.教师讲授

通过课堂讲解,向学生介绍基本概念和原理,并解释相关技术和方法的应用。

2.课堂讨论

引导学生参与课堂讨论,提出问题和观点,增强学生的思考和分析能力,并培养团队合作和沟通能力。

《软件技术基础与开发》课程教学大纲(本科)

《软件技术基础与开发》课程教学大纲(本科)

软件技术基础与开发

Foundations and Development of Software Technology

课程代码:02410041

学分:2

学时:32 (其中:课堂教学学时:26 实验学时上机学时:6 课程实践学时:0 )先修课程:C语言程序设计或C++语言程序设计

适用专业:非计算机专业本科生

教材:《计算机软件技术基础》,徐世良,葛兵编著,清华大学出版社,2014年9月第4版

一、课程性质与课程目标(-)课程性质

《软件技术基础与开发》是面对非计算机专业学生所开设的一门选修课。其旨在使非计算机专业学生除过熟悉本专业知识外,还能初步掌握一定的计算机软件技术开发知识。通过课程内容的学习,全面完善学生的知识结构,提高学生的个人素质,使其善于运用软件技术的相关知识来解决其专业领域的问题,并将软件设计、开发、编制过程中的方式方法融会贯通,更好地指导自身的工作、学习和生活。

(二)课程目标(根据课程特点和对毕业要求的贡献,确定课程目标。应包括知识目标和能力目标。)课程目标1:

使学生掌握或了解如下相关知识.算法的基本概念

1.常用数据结构.常用查找与排序方法

2.软件设计与开发基本流程课程目标2:

提升学生如下方面的能力与素质.使学生掌握常见的数据结构、查找与排序方法,规范软件架构方

式;

1.使学生了解操作系统、数据库、软件设计与开发的基本原理,了解软件开发的大致流程;.培养学

生良好的程序设计、开发和维护风格,为将来软件工作打下坚实的基础。

注:工程类专业通识课程的课程目标应覆盖相应的工程教育认证毕业要求通用标准;(三)课程目标与专业毕业要求指标点的对应关系(认证专业专业必修课程填写)

软件技术基础教学大纲-软件技术基础-瞿亮-清华大学出版社

软件技术基础教学大纲-软件技术基础-瞿亮-清华大学出版社

《软件技术基础》教学大纲

一、课程信息

二、课程内容

(一)课程教学目标

通过本课程的学习,使学生了解计算机软件中的相关重要概念、软件技术的基础知识和方法,从而培养学生利用计算机解决问题的意识和能力,为计算机在专业应用中奠定基础。为非计算机专业学生开设的一门关于计算机软件基础知识的综合性课程,以应用为目的,选择性地介绍数据结构、操作系统、软件工程、数据库技术和网络基础等部分内容,通过这些内容的学习,学生能对计算机软件系统有一个整体的认识和了解。

(二)基本教学内容

1、计算机软件技术概述及C语言回顾;

2、几种典型数据结构的逻辑结构和存储结构;

3、算法的概念,二叉树及图的遍历方法,常用的查找和排序算法。

4、软件工程中的基本概念及生命周期法;

5、操作系统中的基本概念及管理方法;

6、数据库的基本知识,SQL语言。

7、计算机网络的主要结构和常识。

8.网络新技术

(1)计算机软件技术概述及C语言回顾;

教学目的与要求:了解软件技术的发展历程,常用软件的分类。复习开发工具C语言中的相关知识。

教学重点:教材章节内容及开发工具C语言中的相关知识。

教学难点:C语言中指针的应用。

教学内容:软件的概念,历史及分类。本教程各章节的主要内容及学习方法。开发工具C语言中较难理解的指针,结构体等编程知识。

(2)数据结构

教学目的与要求:理解数据结构的基本概念;理解线性表、栈、队列数据结构的基本概念,理解各线性数据结构的特点和存储结构,掌握基于不同的存储结构的相关操作的实现方法;理解树和图的基本概念,基本特点和存储结构,掌握二叉树的遍历算法的实现以及树和二叉树之间转换的方法;理解查找和排序的基本概念,掌握查找和排序的各三种基本方法和实现。

软件工程教学大纲

软件工程教学大纲

软件工程教学大纲

软件工程教学大纲

引言:

软件工程是一门涉及软件开发和维护的学科,它在现代社会中扮演着重要的角色。为了培养学生的软件开发能力和解决实际问题的能力,软件工程教学大纲

应当具备一定的深度和广度。本文将探讨软件工程教学大纲的设计和内容。

一、课程目标

软件工程教学大纲应明确课程的目标。首先,学生应掌握软件工程的基本概念

和原则。其次,他们应具备分析、设计和实现软件系统的能力。此外,他们还

应了解软件项目管理和质量保证的方法。最后,他们应具备团队合作和沟通的

能力。

二、课程内容

软件工程教学大纲应覆盖一系列的主题。首先,课程应包括软件开发生命周期

的各个阶段,如需求分析、系统设计、编码、测试和维护。其次,课程还应涵

盖软件项目管理的内容,包括项目计划、进度控制和资源管理。此外,课程还

应介绍软件质量保证的方法,如测试策略和代码审查。最后,课程还应包括软

件工程的最佳实践和相关的伦理问题。

三、教学方法

软件工程教学大纲应明确教学方法。传统的教学方法包括课堂讲授和课后作业。然而,为了培养学生的实际操作能力,课程还应包括实验和项目。实验可以帮

助学生理解软件开发过程中的关键概念和技术。项目可以让学生应用所学知识

解决实际问题,并培养团队合作和沟通能力。

四、评估方式

软件工程教学大纲应明确评估方式。评估应包括考试、作业和项目。考试可以

测试学生对软件工程理论的理解。作业可以帮助学生巩固所学知识,并培养解

决问题的能力。项目可以评估学生的实际操作能力和团队合作能力。

五、教材选择

软件工程教学大纲应明确教材选择。教材应涵盖软件工程的基本概念和原则,

软件技术基础提纲

软件技术基础提纲

例如:A—B AB 一 (A—B)*C+D AB—C*D+ A*(B+C/D)一 E*F ABCD/+*EF*一 (B+C)/(A—D) BC+AD 一/ 26. 队列的术语:所谓队列,就是允许在一端进行插入、而在另一端进行删除的线性表, 排 头:允许删除的一端称为排头,通常用一个头指针(front)指向排头元素的前面队尾: 允许插入的一端称为队尾, 通常用一个称为尾指针的指针指向队尾元素, 即尾指针 (rear) 总是指向最后被插入的元素,队列规则(先进先出,后进后出)。 27. 队列的假溢出及其避免方法。(了解) 28. 循环队列 将队列存储空间的最后一个位置绕到第一个位置, 形成逻辑上的环状空间,供队列循环 使用。有效解决了“假溢出”的问题。 29. 线性链表 线性链表(Linked List)是线性表的链式存储结构。 数据元素的表示: 由两部分信息组成:一是数据元素的值,二是数据元素在线性表中的逻辑位置。这两部 分信息构成线性链表中的一个结点。 线性链表是由若干个结点组成,每个结点有两个域:一个是数据域,用以存放数据元素 的值;另一个是指针域,用以存放后件的存储地址,即后件结点的存储序号。 30. 线性链表插入,删除后指针的变化。 指针 p 所指的结点后插入指针 s 所指的结点 算法:s->next = p->next; p->next = s; 删除:p->next = p->next ->next;或 s=p->next;p->next=s->next; 31. 单链表:每个结点只有一个指针域。要找到某个结点的前件,必须从头指针开始,沿着 指针方向扫描。 33.双向链表 :每个结点有两个指针域,一个称为左指针,指向其前件结点;另一个称为 右指针, 指向其后件。 从表的任意结点出发可以通过正向环 (或反向环) 找到表中其它结点。 插入: p a1 a3

软件技术基础复习大纲

软件技术基础复习大纲

软件技术基础复习大纲

一.填空题

1.数据结构的内容:逻辑结构,存储结构,和对数据的操作。

2.数据的逻辑结构两大类:线性结构和非线性结构。

3.数据存储结构的4种形式:顺序存储,链式存储,索引存储,散

列存储方法。

4.时间复杂度:常数阶O(1),--指数阶O(2n)

5.单链表的插入计算:s->next=p->next , p->next=s;

6.栈的定义:先进后出的线性表;队列:先进先出

7.栈用向量存放,位置固定不变

8.顺序栈的运算

进栈:s->data[++s->top]=x 退栈:return s->data[s->top--];

9.空队列条件:front==rear ,满队列条件:(rear+1)%Maxsize==front

10.一维数组特点:线性聚集,一头一尾;

11.二维数组的存储:行优先顺序和列优先顺序;

12.二维数组的计算公式:a[i]=L0+i*L

13.串是线性表;

14.二叉树的性质:

①二叉树的第i层上的结点数目最多为2(i);

②高度为k的二叉树至多有2k+1-1个结点;

③任意一棵二叉树中,若终端结点的个数为n0,度为2的结点数为

n2,则n0=n2+1.

15.图的三种存储结构:邻接矩阵,邻接表和邻接多重表。

16.连通分量:无向图G的极大连通子图为G的连通分量。

17.强连通分量:有向图G的极大连通子图为G的强连通分量。

18.入度与出度的关系:1:1或相等。

19.常见的遍历图方法:深度优先搜索和广度优先搜索。

20.在单链表中的一个结点中有1个指针。

21.软件的定义:软件是计算机程序,规则,相关的文档以及在计算

软件技术基础复习大纲

软件技术基础复习大纲

软件技术基础复习大纲

一.填空题

1.数据结构的内容:逻辑结构,存储结构,和对数据的操作。

2.数据的逻辑结构两大类:线性结构和非线性结构。

3.数据存储结构的4种形式:顺序存储,链式存储,索引存储,散

列存储方法。

4.时间复杂度:常数阶O(1),--指数阶O(2n)

5.单链表的插入计算:s->next=p->next , p->next=s;

6.栈的定义:先进后出的线性表;队列:先进先出

7.栈用向量存放,位置固定不变

8.顺序栈的运算

进栈:s->data[++s->top]=x 退栈:return s->data[s->top--];

9.空队列条件:front==rear ,满队列条件:(rear+1)%Maxsize==front

10.一维数组特点:线性聚集,一头一尾;

11.二维数组的存储:行优先顺序和列优先顺序;

12.二维数组的计算公式:a[i]=L0+i*L

13.串是线性表;

14.二叉树的性质:

①二叉树的第i层上的结点数目最多为2(i);

②高度为k的二叉树至多有2k+1-1个结点;

③任意一棵二叉树中,若终端结点的个数为n0,度为2的结点数为

n2,则n0=n2+1.

15.图的三种存储结构:邻接矩阵,邻接表和邻接多重表。

16.连通分量:无向图G的极大连通子图为G的连通分量。

17.强连通分量:有向图G的极大连通子图为G的强连通分量。

18.入度与出度的关系:1:1或相等。

19.常见的遍历图方法:深度优先搜索和广度优先搜索。

20.在单链表中的一个结点中有1个指针。

21.软件的定义:软件是计算机程序,规则,相关的文档以及在计算

中职软件技术基础课程

中职软件技术基础课程

中职软件技术基础课程

中职软件技术基础课程

一、课程简介

中职软件技术基础课程是软件技术专业的入门课程,旨在帮助学生掌握计算机科学与技术的基本概念和原理,了解计算机系统的组成和工作原理,熟悉常用的编程语言和开发工具,掌握软件开发的基本流程和方法。

二、课程目标

1. 掌握计算机科学与技术的基本概念和原理;

2. 了解计算机系统的组成和工作原理;

3. 熟悉常用的编程语言和开发工具;

4. 掌握软件开发的基本流程和方法。

三、教学内容

1. 计算机科学与技术基础知识

(1)计算机组成原理

(2)操作系统

(3)数据结构与算法

(4)计算机网络

2. 编程语言与开发工具

(1) C语言

(2) Python语言

(3) Visual Studio Code集成开发环境

3. 软件开发流程与方法

(1)需求分析

(2)设计阶段

(3)编码阶段

(4)测试阶段

(5)发布阶段

四、教学方法

1. 理论授课

通过讲解计算机科学与技术的基本概念和原理,引导学生建立正确的计算机知识体系。

2. 实践操作

通过编写简单的程序和实际项目练习,培养学生的编程能力和解决问

题的能力。

3. 课堂互动

通过提问、讨论等方式,激发学生学习兴趣和思考能力。

五、评价方式

1. 考试

采用闭卷考试形式,测试学生对于计算机科学与技术基础知识、编程

语言和开发工具以及软件开发流程与方法的掌握情况。

2. 实验报告

要求学生按照软件开发流程撰写实验报告,包括需求分析、设计阶段、编码阶段、测试阶段和发布阶段等内容。评分主要考虑实验报告的完

整性、规范性和质量。

3. 项目作品

要求学生在小组内完成一个简单的软件项目,包括需求分析、设计阶段、编码阶段、测试阶段和发布阶段等内容。评分主要考虑项目作品

软件技术基础教学大纲资料

软件技术基础教学大纲资料

软件技术基础教学大纲资料

《软件技术基础》教学大纲

课程编号:23000840 适用专业:电子信息类(非计算机专业)学时数: 40 学分数: 2.5 开课学期:第4学期先修课程:《C语言》考核方式:笔试(闭卷)

执笔者:沈晓峰编写日期:2021年3月审核人(教学副院长):

一、课程性质和目标

授课对象:电子信息工程专业大学二年级本科生课程类别:学科拓展课程教学目标:

本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。

二、教学内容和要求

1、课堂理论教学要求和学时安排(32学时)

1) C程序设计(4学时)

(1)C语言回顾,指针的基本概念、运算方法和使用(2学时)。(2)结构体的基本概念和使用方法(2学时)。 2)数据结构(20学时)

(1)数据结构的基本概念(2学时):理解数据结构的基本概念;理解线性和非线性

结构的概念。

(2)线性数据结构(9学时):理解表、栈、队列等线性数据结构的概念,存储方式

及基于不同存储方式的相关操作的实现方法。

a.理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2学时);

b.掌握单链表、双链表、循环链表的创建、插入、删除方法(2学时);

c.理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法(2学时);

d.理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链队列的创建及出队、入队(2学时);

软件技术方案 大纲

软件技术方案 大纲

软件技术方案大纲

一、引言

1.项目背景和目标

2.解决方案的必要性和意义

二、需求分析

1.业务需求

2.功能需求

3.非功能需求

三、技术选型

1.编程语言和开发环境

2.数据库管理系统

3.服务器和运行环境

4.主要技术组件和工具

四、系统设计

1.系统架构设计

a.前端设计

b.后端设计

c.数据库设计

2.功能模块设计

3.用户界面设计

4.安全设计

5.性能设计

五、系统实现

1.编码规范和标准

2.关键模块实现方案

3.数据库实施方案

4.系统集成方案

5.系统测试方案

六、系统部署和运维

1.部署环境配置

2.安装和部署过程

3.系统监控和报警机制

4.系统优化和运维方案

5.安全防护策略

七、项目管理和质量保证

1.项目管理和执行计划

2.质量保证和控制措施

3.风险评估和管理策略

4.持续改进和迭代开发计划

5.项目交付和验收标准

6.项目验收和支持服务

7.项目文档和维护指南

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件技术基础》教学大纲学时数:40 学分数: 2.5 开课学期:第4学期

先修课程:《C语言》

考核方式:笔试(闭卷)

执笔者:沈晓峰编写日期:2015年3月审核人(教学副院长):

一、课程性质和目标

授课对象:电子信息工程专业大学二年级本科生

课程类别:学科拓展课程

教学目标:

本课程是针对工科电子信息类本科生开设的一门学科拓展课程。着重培养学生在软件设计领域的基本素质,基本方法和设计理念。授课对象为大学二年级学生,课程任务是通过本课程的学习和相关实验的练习,使学生掌握数据结构、操作系统等软件技术的基本理论知识,具有一定的软件开发能力。

二、教学内容和要求

1、课堂理论教学要求和学时安排(32学时)

1)C程序设计(4学时)

(1)C语言回顾,指针的基本概念、运算方法和使用(2学时)。

(2)结构体的基本概念和使用方法(2学时)。

2)数据结构(20学时)

(1)数据结构的基本概念(2学时):理解数据结构的基本概念;理解线性和非线性结构的概念。

(2)线性数据结构(9学时):理解表、栈、队列等线性数据结构的概念,存储方式及基于不同存储方式的相关操作的实现方法。

a.理解表的概念及顺序表的存储特点,掌握其创建、插入、删除等实现方法(2

学时);

b.掌握单链表、双链表、循环链表的创建、插入、删除方法(2学时);

c.理解栈的概念及结构特点,掌握顺序栈及链栈的出栈、入栈操作的实现方法

(2学时);

d.理解队列的概念及特点,掌握顺序、循环队列的创建、出队、入队、判空、判满等操作。掌握链队列的创建及出队、入队(2学时);

e.理解数组的概念及二维数组的存放方式,掌握对称矩阵及稀疏矩阵的压缩存储方法(1学时)。

(3)非线性数据结构(5学时):了解典型非线性数据结构的基本概念、存储和访问方式。

a.理解二叉树、满二叉树、完全二叉树的概念及基本性质(1学时);

b.掌握二叉树的三种遍历算法、树和二叉树的转换方法(2学时);

c.理解图的基本概念及性质,掌握图的邻接矩阵、邻接图存储方式(2学时)。

(4)结构查找和排序(4学时):理解查找和排序的基本概念,掌握三种查找(顺序、二分、分块)和三种排序(简单插入,简单选择和冒泡)方法和实现。

3)操作系统(8学时)

(1)操作系统的基本概念(2学时):了解操作系统的基本概念,操作系统发展的

历程和现代操作系统的基本特征。

(2)处理机管理(4学时);理解进程、进程的状态、描述方式、进程控制的手段,

进程的同步和互斥,进程通信和死锁等基本概念,理解进程调度的相关方法。

(3)作业管理(2学时):理解作业、作业的状态、描述方式、作业控制的手段,

等基本概念,理解作业调度的相关方法。

通过这一章的学习同学们应该理解一个用户作业提交给计算机之后,操作系统控制计算机来执行该用户作业的基本流程。

2、实验安排(8学时)

共设置5组实验,分为上机实验和课外实验两部分:上机实验包括两个实验,课外实验包括3个实验,详细实验内容见实验教学大纲。

三、考核方式

课程最后成绩构成包括:期末考试卷面成绩(70%),平时成绩(10%),实验成绩(20%)。

实验部分的考核包含上机实验和课外实验,实验成绩采用实验出勤、实验考核、实验报告和实验程序验证相结合的方式给出。

四、教材和参考资料

1、教材

《软件技术基础》,黄迪明,电子科技大学出版社,1998年

2、参考资料

1)高质量C编程指南,林锐,附电子版

2)数据结构(C语言),严蔚敏,清华大学出版社

3)操作系统基础教程(第6版)William S.Dav 清华大学出版社

4)深入理解计算机系统 Randal E.Bryant,David O’Hallaron 着,龚奕利,雷迎春译,中国电力出版社

《软件技术基础实验》教学大纲

一、实验项目基本信息

实验项目名称:软件技术基础实验

适用专业:电子信息类(非计算机专业)

学时数:8

先修课程:《C语言》

考核方式:实验过程、实验报告、实验

二、实验项目的性质和任务

1、实验项目的性质

本实验是本科生学科拓展课程《软件技术基础》的实验部分,属软件设计的范畴。

2、实验项目的目的和任务

通过上机实验,要求学生对常用数据结构的基本概念及其不同的实现方法的理论得到进一步的掌握,并对在不同存储结构上实现不同的运算方式和技巧有所体会。培养学生在软件设计方面的知识基础,同时也提供必要的技能训练。

3、实验内容和要求

《软件技术基础实验》是与理论课程《软件技术基础》配套开出的,主要包含两个数据结构部分的基本上机实验和三个课外实验,着重培养同学进行软件设计的基本能力。

(1)上机实验内容:

实验一:顺序表和单链表基本操作上机实验 4学时

实验目的:理解线性结构的基本概念,掌握两种基本的存储结构:顺序存储结构(顺序表)和链式存储结构(单链表);用C语言实现在两种存储结构上的对应操作(包括创建、删除插入元素、遍历

等),巩固强化C程序设计的基本方法和能力。

实验内容:

1、顺序表的创建、元素删除、遍历等操作:

有序的一组整数{1,2,3,4,6},设计顺序表并实现以下操作:

A.初始化一个空的顺序表;

B.从键盘依次输入上述数据添加到顺序表中;

C.删除表中的第四个数据元素;

D.显示B、C操作后顺序表中的内容。

2、现有有序的一组整数{1,2,2,3,4,6,6},设计单链表,分别编写函数实现以下操作:

A.初始化一个空链表。

B.依次添加上述一组数据(结点),生成该链表。

C.统计该链表的长度。

D.在表中查找数据为3和7的结点,并返回其位置(若找不到返回 -1)。

相关文档
最新文档