软件技术基础2实验任务1

软件技术基础2实验任务1
软件技术基础2实验任务1

《软件技术基础2》实验报告1

学院机械工程学院

专业机械设计制造及其自动化

年级201 6级

姓名吴美莲

任课教师葛卫民

实验指导葛卫民

2017年 3 月5日

实验一

一、实验目的

通过本试验,使学生掌握利用VC6.0调试C++程序的过程及方法;深入理解C++程序的结构与组成和程序的执行机制;掌握常量、变量、表达式、基本输入与输出在程序中的具体使用方法。

二、实验内容

1.通过程序实例,熟悉VC6.0开发环境,掌握调试C++程序的基本步骤和操作方法。

2.编写教材第一章习题7中(1)、(4)、(5)要求的程序,并完成上机调试的实验任务。

3.编写教材第二章习题中3、5要求的程序,并完成上机调试的实验任务。

三、实验准备

1.复习第一章的1.2-1.8节及第2章2.1-2.3内容;

2.预习实验指导书的第一章内容;

3.编写教材第一章习题7中(1)、(4)、(5)及第二章习题中3、5要求的程序。

四、实验任务

任务一:

1.内容:利用VC6.0调试教材第一章的例1.2的程序

2.源程序:

#include

void main()

{

int a,b,n;

cout<<”请输入两个数:”;

cin>>a>>b;

n=a+b;

cout<<”a+b=”<

}

3.运行结果:

4.实验中遇到的主要问题及解决方法

无问题

任务二:

1.内容:任意输入一个整数值,输出该数的10倍。

2.源程序:

#include

void main()

{

int a,b;

cout<<"请输入一个整数:";

cin>>a;

b=10*a;

cout<<"a="<

}

3.运行结果:

4.实验中遇到的主要问题及解决方法

无问题

练习1-7-1

1.内容:任意输入一个整数值,输出该值的十倍

2.源程序

#include

void main()

{int a, b=10;

cout<<"输入一个整数:";

cin>>a;

cout<

cout<

}

3.实验结果

1-7-4

1.内容:将10000秒化成小时、分、秒

2.源程序

#include

void main()

{int a,b,c,n,p=10000,q=60;

c=p%q;

n=p/q;

b=n%q;

a=n/q;

cout<

}

3.实验结果

1-7-5

1.内容:将输入的一个三位正整数的各个数字分三行输出

2.源程序

#include

void main()

{int m,a,b,c;

cout<<"输入一个三位正整数:";

cin>>m;

a=m/100;

b=(m/10)%10;

c=m%10;

cout<

cout<

}

3.实验结果

2-3

1.内容:用if语句编程序

2.源程序

#include void main()

{int n,y;

cout<<"输入n:";

cin>>n;

if(n>0)

y=n+1;

else if(n==0)

y=0;

else

y=n*n;

cout<

cout<<"y="<

4.实验结果

2-5

源程序

#include

void main(){

char ch;

cin>>ch;

for(;;)

if(ch>='0'&&ch<='9') {cout<<"这是一个数字"<

else if(ch>='a'&&ch<='z') {cout<<"这是一个小写字母"<

else if(ch>='A'&&ch<='Z') {cout<<"这是一个大写字母"<

else {cout<<"it's a other character."<

}

}实验结果

五、 教师评语及评分

重庆邮电大学-软件技术基础--实验报告(耿道渠)

《软件技术基础》实验报告 实验名称:顺序表的操作 班级学号姓名 第9 周星期 2 、5,6 节成绩 一、实验目的: 1、掌握顺序表结构的实现方式; 2、掌握顺序表常用算法的实现; 3、熟悉利用顺序表解决问题的一般思路; 4、参照给定的顺序表的程序样例,验证给出的顺序表的常见算法,领会顺序表结构的优点和不足。 二、实验内容: 1、设计一个静态数组存储结构的顺序表,要求编程实现如下任务:(1)建立一个顺序表,首先依次输人整数数据元素(个数根据需要键盘给定)。 (2)删除指定位置的数据元素(指定元素位置通过键盘输入),再依次显示删除后的顺序表中的数据元素。 (3)查找指定数据的数据元素(指定数据由键盘输入),若找到则显示位置,若没有找到则显示0。 2、使用顺序表实现一个电话本的管理程序,电话本中的每条记录包括学号、姓名、手机号码和固定电话四项。要求实现菜单、初始化、添加、删除和显示等功能。 三、实验结果:

四、实验中遇到的问题及解决方法: 第一次编写C++,感觉力不从心,回去多看看PPT。

五、实验心得体会: 对顺序表的一些常用语句不熟悉,对顺序表的整体思路理解不深刻以后要加强练习 附:源程序(自行编写或修改的程序。若为修改程序请注明修改部分的功能,若为书上实例则可不附。) #include #include #include #include #define MAXSIZE 20 using namespace std; int num; typedef struct { string student_number; string name; string tel; string home_phone; int id; } TEL; void shuaxin(TEL *); void delet(TEL *);

软件技术基础重点总结

第一章 1.算法的基本要素:一是要做哪些事(算法对数据的操作)二是决定做这些事情的先后顺序(控制结构) 2.算法的基本特征:(1)能行性(2)确定性(3)有穷性(4)拥有足够的情报 3.算法评价的标准(算法的复杂度主要包括):时间复杂度和空间复杂度 4.算法的时间复杂度:执行算法所需要的计算工作量算法的空间复杂度:执行这个算法所需要的内存空间 5.用算法在执行过程中所需基本运算的执行次数来度量算法的工作量 6.算法所执行的基本运算次数与问题规模相关 7.对于一个固定规模,算法所执行的基本运算次数可能与特定的输入有关用①平均性态(平均时间复杂度)②最坏情况复杂性(最坏时间复杂度)来描述 第二章 1.数据结构研究的主要问题:①分析数据的特征②选择逻辑结构和物理存储结构③在存储结构的基础上实现对数据的操作 2.数据逻辑结构指数据元素前后件的关系,与它们在计算机中的存储位置无关;数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(也称数据的物理结构) 3.常用的存储结构有顺序、链接、索引等存储结构 4. 5. 6.线性表:n(n≥0)个数据元素的有限序列线性表特点:均匀性 有序性除了第一个元素, 每一个元素都有一个前驱,除了最后一个元素每个元素都有一个后继 7.线性表中所有元素所占的存储空间是连续的线性表中的各数据元素在存储空间中是按逻辑顺序依次存放 8.顺序表:将线性表中的元素相继存放在一个连续的存储空间中;存储结构:数组;特点:线性表的顺序存储方式。逻辑上相邻,物理上相邻;存取方式:随机存取。 9.栈是限定仅在表尾进行插入和删除运算的线性表,表尾称为栈顶(top),表头称为栈底(bottom)。 10.栈的物理存储可以用顺序存储结构,也可以用链式存储结构。 11.队列:一种特殊的线性表,遵守FIFO(First In First Out)规则。队列的数据元素重视从表末尾加入,从表头取出。队列的物理存储可以用顺序存储结构,也可用链式存储结构。 12. front 13.循环队列区分队空队满长采用两种方法①增加一个标志位S;S=0 队空 S=1且rear==front 队满 14.程序中front==(rear+1)%MAXSIZE来判断队满 15.二叉树的性质:①在二叉树的第i层上至多有2^(i-1)个结点(i≥1)②深度为k的二叉树至多有2^k -1个结点(k≥1)③对任何一颗二叉树T,如果其叶结点数为n0,度为2的结点数为n2,则n0=n2+1④具有n个结点的二叉树,其深度至少为log2 n+1⑥在编号完全的完全二叉树中,编号为i的结点,若存在做孩子,则其编号为2i;若存在有孩子,则其编号为2i+1;若存在父结点,则其编号为i/2 16.图是对结点的前驱和后继个数不加限制的数据结构。有向图:图中每条边都是顶点的有序对。无向图:图中每条边都是顶点的无序对。 17.顶点间的关系边可描述为顶点的偶对,边是无序的。弧:顶点间的边是有序的。弧头:弧的终点(方向前方)。弧尾:弧的起始点称为弧尾(方向后方)。Vx(弧尾)→Vy弧头 18.无向图中:顶点的度是以该顶点为一个端点的边的条数。有向图中有入度和出度。 19.路径:从顶点Vx到顶点Vy的顶点序列称为从Vx到Vy的路径。路径的长度是该路径上边或弧的数目。 20.连通图:在无向图中,若每一对顶点间都有路径,称此图是连通图。 第三章 1.平均查找长度(ASL):与关键字进行比较的平均次数。它是用来评价一个算法好坏的一个依据。顺序查找优点对结点的逻辑次序和存储结构无要求;缺点ASL较长。 2.二分查找的先决条件是查找表中的数据元素必须有序。优点:ASL≤log2 n;缺点:因要求有序,所以对所有数据元素按大小排序是非常费时的操作。 3.分块查找又称索引顺序查找,这是顺序查找的一种改进方法。优点:插入、删除操作方便;只要找到对应的块,在块中任意位置操作均可。缺点:索引表增加了辅助存储空间。 4.哈希查找也成为散列查找,哈希查找则是通过计算存储地址的方法进行查找的。 在哈希元素(地址)求解过程中,不同关键字值对应到同一个存储地址的现象称为冲突。即关键字K1≠K2,但哈希函数值H(K1)=H(K2)。处理冲突的方法:开放定址法Hi=(H(key)+di) MOD m,再哈希法,链地址法。线性探测再散列di=1,2,…m-1 二次探测再散列di=1^2,-1^2,2^2,…+k^2,-k^2(k≤m/2) 5.快速排序法又被称为“分区交换排序”。按某种方法选取一个元素K,以它为分界点,用交换的方法将序列分为两个部分:比该值小的放在左边,否则在右边。形成{左子序列}K{右子序列}再分别对左右两部分实施上述分解过程。 6.插入排序基本思想:边插入边排序,保证子序列中是排好序的。每次处理将无需数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。插入算法比较次数和交换次数约为n^2/2,因此其时间复杂度为O(n^2),该算法基本稳定,数据基本有序,插入排序速度块。 7.希尔排序是对直接插入排序的改进方法。排序间隔n/2^k k=1,2,…… 8.选择排序:每次从待排序的记录中选出关键字最小(或最大)的记录,顺序放在已有序的记录序列的最后(或最前)面,直到全部数列有序。9.堆定义:hi≥h2i,hi≥h2i+1 hi≤h2i hi小于等于h2i+1从最后一个非终端结点开始往前逐步调整,让每个双亲不大于(或不小于)子女,直到根结点为止。 10.二分法查找效率高,顺序法可以采用链表存储结构,操作灵活,最好是既有二分法的高效率,又有链表灵活性的查找方法。解决之道:二叉排序树。 11.二叉排序树:二叉树为空,或者是具有下列性质的二叉树:如根结点的左子树不空,则左子树所有结点是值均小于根结点值;如根结点的右子树不空,则右子树所有结点是值均小于根结点值;根结点的左右子树也分别是二叉排序树。 第四章 1.操作系统是控制和管理计算机硬件和软件资源、合理组织计算机工作流程、方便用户使用计算机响应速度而设计的一套程序的集合。功能:文件管理,进程管理,存储器管理,设备管理,作业管理。 2.程序是为解决某个问题用计算机语言或命令设计、编写的一系列指令的有序集合。 3.进程就是程序的一次执行过程,是系统进行资源分配和调度的一个独立单元。进程的状态运行状态、就绪状态、等待状态。①处于就绪状态的进程一旦分配到CPU,就转为运行状态。 ②处于等待状态的进程,当需要等待某个时间发生才能继续运行时,则转为等待状态;或者由于分配给它的时间片用完,就让出CPU而转为就绪状态。③处于等待状态的进程,如果它等待的时间已经发生,即条件得到满足,就转为就绪状态。 4.线程是一个程序内部的顺序控制流(独立执行的流)。但线程并不是程序,它自己并不能运行,必须在程序中才能运行。 5.存储器(Memory)能接收数据、保存数据、并能根据命令提供这些数据的装置。 第五章 1.数据库:长期存储在计算机内的、有组织的、可共享的数据集合。特点:数据按一定的数据模型组织、描述和存储;具有较小的冗余度;较高的数据独立性和易扩展性;可为各种用户共享。 2.数据结构是对实体类型和实体间联系的表达和实现,描述系统的静态特性;数据操作是在数据结构之上允许执行的操作集合,包括对数据库的检索和更新(插入、删除、修改)操作,描述系统的动态特性;数据完整性约束是数据及其联系所具有的制约和依赖规则,以保证数据库中数据的正确性、有效性和相容性。 3.ER图中的四个基本成分:矩形框,表示实体类型;菱形框,表示联系类型;椭圆形框,表示实体类型和联系类型的属性(下划线表示键);直线,联系类型与其涉及的实体类型之间以直线连接,并在直线端部标上联系的种类(1:1, 1:N, M:N) 4.关系的三类完整性约束:实体完整性、参照完整性和用户定义完整性。完整约束条件是数据模型的一个重要组成部分,它保证数据库中数据与现实世界的一致性;实体完整性:元组在组成主键的属性上不能有空值;参照完整性(引用完整性):不允许引用不存在的元组;用户定义的完整性(域完整性) 5.视图的作用? ①视图能够简化用户的操作②视图使用户能以多种角度看待同一数据③视图对重构数据库提供了一定程度的逻辑独立性⑤视图能够对机密数据提供安全保护 6.数据库设计步骤? ①需求分析②概念结构的设计③逻辑结构的设计④物理结构的设计 7.sql语言 ①建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩G组成,其中(Sno, Cno)为主码。 CREATE TABLE SC( Sno CHAR(5) , Cno CHAR(3) , G int, Primary key (Sno, Cno)); ②增加列基本格式 ALTER TABLE 表名ADD 列名类型; ALTER TABLE S ADD ADDRESS V ARCHAR (30) 修改列基本格式 ALTER TABLE 表名MODIFY 列名类型; ALTER TABLE S MODIFY SA SMALLINT; 删除列基本格式 ALTER TABLE 表名DROP 列名; ALTER TABLE S DROP UNIQUE(Sn); ③DISTINCT短语的作用范围是所有目标列 查询选修课程的各种成绩SELECT DISTINCT Cno,Grade FROM SC; ④查询所有(不)姓刘学生的姓名、学号和性别。 SELECT Sname,Sno,Ssex FROM Student WHERE Sname (NOT)LIKE ‘刘%’; ⑤使用谓词IS NULL 或IS NOT NULL,“IS NULL” 不能用“= NULL” 代替 查询缺少成绩的学生的学号和相应的课程号。 SELECT Sno,Cno FROM SC WHERE Grade IS NULL; ⑥使用ORDER BY子句可以按一个或多个属性列排序升序:ASC;降序:DESC;缺省值为升序 查询选修了3号课程的学生的学号及其成绩,查询结果按分数降序排列。 SELECT Sno,Grade FROM SC WHERE Cno= ' 3 ' ORDER BY Grade DESC; ⑦查询有3门以上课程是90分以上的 学生的学号及(90分以上的)课程数 SELECT Sno, COUNT(*) FROM SC WHERE Grade>=90 WHERE是选择记录的条件; GROUP BY Sno HA VING是选择分组的条件,且 HA VING COUNT(*)>=3; 必须和GROUP BY一起使用 ⑧求学生学号、姓名、选修课程名、成绩。 SELECT Student.Sno,Sname,Cname,Grade FROM Student,Course,SC WHERE Student.Sno=SC.Sno AND https://www.360docs.net/doc/c210778659.html,o=https://www.360docs.net/doc/c210778659.html,o;

第一次作业计算机基础知识

第一次作业计算机基础 知识 标准化管理部编码-[99968T-6889628-J68568-1689N]

1. 计算机问世以来经历了四代,划代的主要依据是计算机电子元件的类型。大规模集成电路主要应用于____d__。 a. 第1代 b. 第2代 c. 第3代 d. 第4代 2.在计算机的多种技术指标中,决定计算机的计算精度的是___b___。 a. 运算速度 b. 字长 c. 存储容量 d. 进位数制 3. 个人计算机(PC)是除了主机外,还包括外部设备的微型计算机。而其必备的外部设备是___b___。 a. 键盘和鼠标 b. 显示器和键盘 c. 键盘和打印机 d. 显示器和扫描仪 4. 从硬件看,对整机性能影响最大的是___b___。 a. 内存 b. CPU c. 显示器 d. 硬盘 5. WPS、Word等文字处理软件属于___c___。 a. 管理软件 b. 网络软件 c. 应用软件 d. 系统软件 6. 一般认为,世界上第一台电子数字计算机诞生于___a___。 a. 1946年 b. 1952年 c. 1957年 d. 1963年 7. 用来计算计算机存储容量的基本单位是___c___。 a. 字 b. 页 c. 字节 d. 数据块 8. 液晶显示器简称为___c___。 a. CRT b. VGA c. LCD d. TFT 9. 在计算机中,控制总线的英文术语的缩写是___b___。 a. DB b. CB c. AB d. MODEM 10. 计算机中常说的486、586指的是计算机的___c___。 a. 存贮容量 b. 运算速度 c. CPU型号 d. 显示器速度 11. 在计算机工作中,一般不能写入信息的存储器是___b___。 a. 软盘 b. ROM c. RAM d. 硬盘 12. 用户所用的内存储器容量通常是指___b___。 a. ROM的容量 b. RAM的容量 c. ROM的容量+RAM的容量

电子科技大学软件技术基础实验报告4

电子科技大学通信与信息工程学院标准实验报告 (实验)课程名称软件技术基础实验 电子科技大学教务处制表

电子科技大学 实验报告 一、实验室名称:校公共机房 二、实验项目名称:二叉树和哈夫曼树 三、实验学时:4学时 四、实验原理: 使用VS2010等C语言集成开发环境(IDE),在微型计算机上对程序进行编辑、编译、连接与运行。通过上机练习掌握二叉树的建立、插入删除,遍历等方法和过程,掌握递归函数在二叉树建立,遍历中的应用,掌握哈夫曼树的最小路径和建立过程。 五、实验目的: 1.熟练二叉树和哈夫曼树的概念和基本操作方法。 2.掌握课程平台使用方法。 六、实验内容: 上机完成所有函数,编程实验,调试运行程序并完成报告。 七、实验器材(设备、元器件): 硬件要求:普通pc机,1G内存,100G硬盘空间即可。 软件要求:Windows 7,包括C编译器的IDE。 八、实验步骤、实验编程与运行结果: 下面建立该二叉树并展示输出结果: #include #include typedef struct bnode

{ int data; struct bnode *lc,*rc; }; struct bnode* create() { struct bnode *tree=NULL; char ch; ch=getchar(); if(ch=='_') tree=NULL; else { tree=(struct bnode *)malloc(sizeof(struct bnode)); tree->data=ch; tree->lc=create(); tree->rc=create(); } return tree; } //先序遍历(根左右)--递归 int preorder(struct bnode *root) { putchar(root->data); if(root->lc!=NULL) preorder(root->lc); if(root->rc!=NULL) preorder(root->rc); } //中序遍历--递归 int inorder(struct bnode *root) { if(root->lc!=NULL) inorder(root->lc); putchar(root->data); if(root->rc!=NULL) inorder(root->rc); } //后序遍历--递归 int postorder(struct bnode *root) { if(root->lc!=NULL) postorder(root->lc); if(root->rc!=NULL)

软件技术基础教学大纲

《软件技术基础》教学大纲 课程编号:23000840 适用专业:电子信息类(非计算机专业) 学时数: 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、参考资料

计算机软件技术基础实验报告Word版

计算机软件基础实验报告 姓名学号实验目的 1. 掌握C语言程序设计方法,并学会上机调试。 2. 熟悉Huffman编码源程序,并构造Huffman树。 实验内容 1.试设计一算法,从包括n个元素的数组中,求最大和最小元素,并使得当n 个元素为有序排列时,元素之间的比较次数仅为n-1次。 2.在给出的Huffman编码源程序基础上,要求画出Huffman树,求出与等长编 码相比时的压缩比。 实验要求 1.根据实验内容编写算法,并用 C 语言进行程序设计。 2. 将所编程序在计算机上调试通过,并全面测试。 实验结果 1.以一个含有8个元素的一维数组{1,2,3,5,7,8,9,12}为例,设计程序如下: #include int maxArray(int x ,int y); int minArray(int x ,int y); int main(void) { int i = 0 ; int array[8]={ 1,2,3,5,7,8,9,12} ; printf; do { scanf("%d",&array[i]); i++; } while(i < 8); int maxTemp = array[0]; int minTemp = array[0]; int maxIndex = 0; int minIndex = 0; for(i=1;i<8;i++)

maxTemp = maxArray(array[i] , maxTemp); minTemp = minArray(array[i] , minTemp); } for(i=0;i<8;i++) { if (maxTemp == array[i]) { maxIndex = i; } if (minTemp == array[i]) { minIndex = i; } } printf; return 0; } 运行结果如下: 2.Huffman编码源程序 #include #include #include #include #include typedef struct {unsigned int weight; //结点权值 unsigned int parent,lchild,rchild; //结点的父指针,左右孩子指针 }HTNode,*HuffmanTree; //动态分配数组存储哈夫曼树 typedef char **HuffmanCode; //动态分配数组存储哈夫曼编码表 void CreateHuffmanTree(HuffmanTree &,unsigned int*,int ); //生成哈夫曼树 void HuffmanCoding(HuffmanTree,HuffmanCode &,int ); //对哈夫曼树

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

软件技术基础》教学大纲 课程编号: 23000840 适用专业:电子信息类(非计算机专业) 学时数: 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 学时)。

大学计算机基础实验作业

提高Windows系统内存效率的优化方法 优化内存,提高内存的使用效率,尽可能地提高运行速度,是我们所关心的问题。下面介绍在Window s操作系统中,提高内存的使用效率和优化内存管理的几种方法。 读取数据是靠磁头在磁性物质上读取,页面文件放在磁盘上的不同区域,磁头就要跳来跳去,自然不利于提高效率。而且系统盘文件众多,虚拟内存肯定不连续,因此要将其放到其他盘上。改变页面文件位置的方法是:用鼠标右键点击“我的电脑”,选择“属性→高级→性能设置→高级→更改虚拟内存”,在驱动器栏里选择要改变到的位置即可。值得注意的是,当移动好页面文件后,要将原来的文件删除(系统不会自动删除)。 改变了页面文件的位置后,我们还可以对它的大小进 行一些调整。调整时我们需要注意,不要将最大、最小页面文件设为等值。因为通常内存不会真正“塞满”,它会在内存储量到达一定程度时,自动将一部分暂时不用的数据放到硬盘中。最小页面文件越大,所占比例就低,执行的速度也就越慢。最大页面文件是极限值,有时打开很多程序,内存和最小页面文件都已“塞满”,就会自动溢出到最大页面文件。所以将两者设为等值是不合理的。一般情况下,最小页面文件设得小些,这样能在内存中尽可能存储更多数据,效率就越高。最大页面文件设得大些,以免出现“满员”的情况。 512MB以上的内存时,页面文件的作用将不再明显, 因此我们可以将其禁用。方法是:依次进入注册表编辑器“HKEY_LOCAL_MACHINE ∕SYSTEM∕CurrentControlSet∕Control∕Session Manager∕Memory Management”下,在“DisablePagingExecutive ”(禁用页面文件)选项中将其值设为“1”即可。

软件技术基础实验报告

《计算机软件技术基础》实验报告 专业_____________ 年级_____________ 学号_____________ 学生姓名_____________ 指导老师_____________ 南华大学计算机学院编

【实验报告】

I 实验要求 1.每次实验中有若干习题,每个学生至少应该完成其中的两道习题。 2.上机之前应作好充分的准备工作,预先编好程序,经过人工检查无误后,才能上机,以提高上机效率。 3.独立上机输入和调试自己所编的程序,切忌抄袭、拷贝他人程序。 4.上机结束后,应整理出实验报告。书写实验报告时,重点放在调试过程和小节部分,总结出本次实验中的得与失,以达到巩固课堂学习、提高动手能力的目的。 实验一线性表 【实验目的】 1.熟悉VC环境,学习如何使用C语言实现线性表的两种存储结构。 2.通过编程、上机调试,进一步理解线性表的基本概念,熟练运用C语言实现线性表基本操作。 3.熟练掌握线性表的综合应用问题。 【实验内容】 必做: 1.一个线性表有n个元素(n

软件技术基础-文本整理

软件技术基础 第一章计算机进制系统 1.计算机中数据的单位 a、在计算机内部,数据都是以二进制的形式存储和运算的。 b、位(bit) ,简写b,比特,计算机存储数据的最小单位。 c、字节(byte),简写B,1B=8bit,计算中数据处理的最基本单位。 d、字:通常由一个或若干个字节组成。 e、数的换算关系: 1Byte=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB。 字长由计算机型号不同而异,常用字长有8、16、32、64位。一般情况下,IBM PC/XT的字长为8位,80286微机字长为16位,80386/80486微机字长为32位,Pentium4系列微机字长为64位。 2.进位计数制 计算机中采用二进制主要原因: a、电路简单 b、工作可靠 c、简化运算 d、逻辑性强 3、计算机中常用的几种计数制 数码:一个数制中表示基数数值大小的不同数字符号。如,八进制有8个数码:0、 1、2、3、4、5、6、7。 基数:一个数值所使用的数码的个数。如,八进制的基数为8,二进制的基数为2。 位权:一个数值中某一位上的1所表示数值的大小。如,八进制的123,1的位权是64,2的位权是8,3的位权是1。 4.十进制(Decimal) 特点: a、有10个数码:0、1、2、3、4、5、6、7、8、9。 b、基数:10 c、逢十加一(加法运算),借一当十(减法运算) d、按权展开式。对于任意一个n位整数和m位小数的十进制数D,均可按权 展开。 例如:将十进制数456.24写成按权展开式形式为: 456.24=4*102+5*101+6*100+2*10-1+4*10-2 5.二进制(Binary) 特点: a、有2个数码:0、1 b、基数:2 c、逢二进一(加法运算),借一当二(减法运算) d、按权展开式,对于任意一个n位整数和m位小数的二进制数D,均可按权 展开。 例如:把(11001.101)2写成展开式,它表示的十进制数为:

《计算机应用基础》实验报告本1

(封面) 上海建桥学院《计算机应用基础》 实验报告本 20 11 年3月15 日

2010-2011学年第一学期《计算机应用基础》实验目录

上海建桥学院实验报告 课程名称:计算机应用基础实验类型:验证/ 设计/ 综合 实验名称:文字处理软件的使用 系别:艺术系专业:视觉传达班级:三班学号:10B05060324 姓名:顾雯茵 同组人姓名: 指导老师:实验地点: 实验日期:2011年 3 月15 日 实验报告日期:2011年3月15日 报告退发( 订正、重做): 成绩:指导教师(签字):_________________________ 一、实验名称:文字处理软件的使用 二、实验目的: 1.掌握字体、段落格式、首字下沉、中文版式、分栏的设置; 2.掌握查找与替换、项目符号和编号、边框和底纹的设置; 3.掌握表格插入和设置; 4.掌握图片、图形、艺术字、文本框的插入、编辑及混排设置; 5.掌握公式、水印、页眉和页脚的插入及编辑方法; 6.掌握页面设置方法。

三、实验环境(所使用的平台和相关软件) (1)中文WindowXP操作系统 (2)中文Word2003应用软件 (3)中文实验配套材料配套 四、实验内容(实验内容的具体描述) 实验(1) 打开配套文件Word-Lx1.doc,按下列要求操作,并将结果以原文件名保存。 (1) 插入标题,内容见样张,其中大字:华文琥珀,72磅,空心,阴影;小字:华文云 彩,60,金色底纹,双行合一。 (2) 正文为小四号,第一段添加蓝色小3号项目符号;其余各行,首行缩进2字符;如 样张分栏,第1栏宽4厘米,间距0.75厘米;文末段落首2字下沉,并设置灰-20% 底纹。 (3) 按样张,对文中相应段落添加绿色、3磅边框线。 (4) 把文中的半角逗号、句号,均改为全角。 (5) 按样张,利用制表位在文末输入相关文字(注意对齐方式,间距自定)。 实验(2) 打开配套文件Word-Lx3.doc,按下列要求操作,并将结果以原文件名保存。 (1) 按样张,将文本标题“网上阅读,日趋流行”转化为艺术字,艺术字式样为艺术字 库中第四行第一列;艺术字字体为楷体、36磅、加粗;艺术字高2.8厘米、宽7.5厘米,形状采用“波形2”;艺术字衬底为加上填充色为“雨后初晴”斜上过渡效果的“流程图:资料带”。 (2) 按样张,将正文各段首行缩进2字符,将第二段(网页成本极为便宜…最大区别还 在于能够“反馈”。)设置成1.7倍行距。 (3) 将正文中所有的“图书馆”都替换为楷体、红色、四号、粗斜、蓝色双下划线。 (4) 按样张,为第一段中的文字“印刷出版物”制作合并字符效果,字体:隶书,字号: 12。 (5) 取消第三段原有的分栏,并将第二、三段按样张分为三栏,其栏宽分别为8字符米、 10字符、14字符。 (6) 将第四、五段加上三维边框,框线的粗细为3磅,颜色为深红,并加上如样张所示 的编号。 (7) 按样张,在文末插入大小为30%的配套图片Examine.wmf。

计算机基础实验作业

实验一:Windows基本操作 【实验目的】 1.熟练掌握图标、任务栏、开始菜单等基本操作; 2.熟练掌握文件、文件夹管理及资源管理器等操作; 3.熟练掌握控制面板中常规项目的设置。 【实验内容】 1. 图标、任务栏、开始菜单的操作; 2. 资源管理器等操作; 3. 文件操作; 4. 其它基本操作。 【实验步骤】 一、图标的操作 1.在桌面上添加一个名为“我的文件夹”的文件夹图标。 2.在桌面上添加一个名为“发言稿.txt”的文本文档图标。 3.按“名称”自动排列桌面上的图标。 4.将新建的“发言稿.txt”图标的名称改为“讲话稿.txt”。 5.将“我的文件夹”图标放入回收站。 6.将Powerpoint的快捷方式发送到桌面上。 二、任务栏的操作 1.将任务栏的宽度改变成当前宽度的两倍。 2.将任务栏置于屏幕的上边框处。 3.将任务栏的属性设置成“自动隐藏”和“总在最前面”。 三、开始菜单的操作 1.在开始菜单中建立一个指向C盘的菜单项“C盘”,通过该菜单项可打开C盘的窗口。 2.删除开始菜单中刚建立的菜单项。 3.清除开始菜单中最近访问过的文档的名字。 四、资源管理器等操作 1.分别打开“C盘”窗口和“W ord窗口”,对两个窗口进行层叠、水平平铺、垂直平铺。 2.打开C盘窗口,用鼠标改变该窗口的大小。 3.认识资源管理器窗口,观察左、右窗格所显示的内容有何联系;点击左窗格中图标前的“+”、“-”,观察显示内容如何变化。 4.在资源管理器窗口的左窗格中单击选定C盘图标,分别将右窗格中图标的显示方式设置成大图标、小图标、列表、详细资料等形式,看各种形式各有什么特点。 5.按“类型”对右窗格中的图标进行重新排列。 6.在资源管理器窗口中找到文件:calc.exe,其在磁盘中的路径为:C:\Winnt\System32。 7.通过“我的电脑”,找到文件夹:Accessories,其在磁盘上的路径为:C:\Program Files\Windows NT。 8.把你所用的电脑中的所有扩展名为.C的文件找出来。 9、在C盘上查找Notepad程序文件,如果找到则运行该程序。 10、选择“查看”菜单下的“文件夹选项“命令,在“文件夹选项”窗口中选择“查看”选项卡,在“高级设置”列表框中选择“不显示隐藏文件”单选按钮,观察有什么变化。 五、文件操作 1.打开任何一个文件夹,练习选定文件或文件夹:①选定一个;②选定连续的多个;③选定不连续的多个;④全选。

软件技术基础模拟试题及参考答案

软件技术基础模拟试题(第二十次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1、数据元素是数据的基本单位,数据项是数据的最小单位。(对a) 2、栈是特殊的线性表,须用一组地址连续的存储单元来存储其元素。(错b) 3、引入虚拟存储技术后,逻辑内存总容量是由地址总线的位置确定的。(a对) 4、编译程序是一种常用应用软件。(b错) 5、顺序文件和链接文件的长度都可以动态变化。(b错) 6、在文件系统中采用目录管理文件。(a对) 7、允许多用户在其终端上同时交互地使用计算机的操作系统称为实时系统。(b 错) 8、程序、数据、和进程控制块是构成一个进程的三要素。(对a) 9、黑盒测试时,既要考虑程序的内部逻辑结构又要考虑其外部特性。(错b) 10、软件的总体设计和详细设计都要用PAD图形工具。(错b) (参考答案:1~10:ABABB ABABB) 二、单项选择题:(每小题1分,共5分) 1、允许用户把若干作业提交计算机系统集中处理的操作系统称为(D)。 A分时操作系统B实时操作系统C网络操作系统D批处理操作系统 2、分配到必要资源并获得了处理机时的进程的状态称为(B)。 A就绪状态B执行状态C等待状态D阻塞状态 3、利用通道技术可以在(C)之间直接交换数据。 A内存与CPU B CPU与外设C内存与外设D内存、CPU和外设三者 4、以下的准则中哪个不是软件设计的准则(A)。 A编程语言选择准则B信息屏蔽准则 C结构化和模块化准则D抽象准则 5、有一数列:97657613294958经过一趟排序后得到: 65971376294958请问使用的是何种排序方法?(C)A简单插入排序B冒泡排序C2路归并排序D快速排序(参考答案:DBCAC) 软件技术基础模拟试题(第十九次省统考) 一、是非判断题(正确选填A,错误选填B)(每小题1分,共10分) 1、在目前,用于保证软件质量的主要手段是进行软件测试。(对) 2、使用DMA方式传送数据期间不需要CPU干预。(错) 3、线性顺序队列会产生“假溢出”,而线性循环队列则不会。(对) 4、对同一种算法,用高级语言编写的程序比用低级语言编写的程序运行速度快。(错) 5、在线性表中,数据的存储方式有顺序和链接两种。(错) 6、进程由程序块、进程控件块和数据块三部分组成。(对) 7、在面向对象的程序设计中,派生类只能从一个基类产生。(对) 8、操作系统是用户和硬件的接口。(对) 9、个人计算机中可配置的最大内存容量受地址总线位数的限制。(对)

大学计算机实验WORD作业1

WORD作业1——图文混排 (第1次实验课内容) 一、实验内容 参考《实验1-1 应用Word设计制作班级报刊》(实验教程P1),用Word完成一篇图文混排的文稿。 ?注:内容及形式不限(不限于“班级报刊”),如:可上网收集自己感兴 趣主题的文字和图片等资源,在此基础上完成“图文混排”文档。作业 文档中至少要包括插图(图片、剪贴画、形状等对象)、文本(文本框、 艺术字、字首下沉等对象)、表格等对象,且要恰到好处地设置它们与正 文之间的位置关系,加强自己所表现的主题内容;文档中要有项目符号、 分栏、边框底文等格式的应用。 二、提交作业要求 ◆结果文档(包括实验小结)。 ?“实验小结”包括实验后收获、所遇问题、解决方法、未解决的问题及 简答一道思考题。 ?结果文档的文件名要规范,命名规则:学号_姓名_WORD作业1.docx。 例:“12011001_常佳鑫_WORD作业1.docx”。 ?认真阅读“六、实验习题”中提出的问题,在实验报告的“实验小结” 中选答一道(简答)。 ◆ 注意:未能当堂完成的作业要保存在自己的优盘或邮箱里,已完成且提交了的作业也需自己保存一段时间(后续作业可能需在该作业基础上进行,也有可能所提交的作业出现问题(如无法打开等))。 注意:每名学生的文档内容不可能完全相同,要独立完成作业,若出现完全一样的作业结果文档,被视为抄袭,0分处理。

三、作业评分规则: 1.5分:在完全消化了“指导书”中的实验知识点后的再创新,实验要完 整,小结要有自己的特色;实验结果文档命名规范。 是“最好的”作业,得满分就一定要认真、需付出更多的思考和努力, 鼓励自主创新。 2.4分:基本完成“指导书”中的实验知识点,实验基本完整(其中1-2 个小要点完成情况不是很好);小结一般;实验结果文档命名规范。 是大多数学生的作业成绩。 3.3分:基本完成“指导书”中的实验知识点,实验基本完整(其中3个 以上小要点完成情况不是很好);小结一般;实验结果文档命名不规范。 目的:鼓励学生认真完成作业,提高下次实验成绩。 4.2或1分:实验不完整(缺多个要点)、或无小结等。 少数;计算机操作基础很弱、又很想努力掌握操作技能的同学应该主 动寻求帮助。 5.0分:抄袭,警告。

软件技术基础自测一答案

《软件技术基础》课程自测题一 一、单项选择题(每题2分,共40分) ● 采用二元描述法可描述任意数据结构为(K ,R ),其中K 和R 分别代表(C )的集合 A 算法和操作 B 逻辑结构和存储结构 C 数据元素和关系 D 结构和算法 ● 计算机算法指的是(C ) A 计算方法 B 程序 C 解决问题的方法和步骤 D 调度方法 ● 一个栈的元素进栈顺序是1、2、3、4、5,则出栈顺序不可能是(C ) A 1、2、3、4、5 B 2、3、1、5、4 C 4、3、5、1、2 D 4、5、3、2、1 ● 一个队列的入队序列是1、2、3、4,则队列的输出顺序为(B ) A 4、3、2、1 B 1、2、3、4 C 1、2、4、3 D 2、1、3、4 ● 在链接式队列中删除结点时,执行的操作为(B ) A rear = front->next B front = front->next C front = rear->next D rear = rear->next ● 如图所示的二叉树中,(C )不是完全二叉树 ● 具有4个结点的二叉树的形状有(A )种。 A 16 B 5 C 80 D 20 ● 一个有n 个顶点的无向图最多有(D )条边 A n -1 B n +1 C n (n +1)/2 D n (n -1)/2 ● 线性表必须先(C )后,才能对线性表进行折半检索。 A 元素连续存放 B 元素链接式存放 C 元素按关键值大小排列 D 元素按存放地址高低排列 ● 从未排序子表中依次取出元素放入到已排序子表的正确位置上的方法是(D ) A 简单选择排序 B 快速排序 C 冒泡排序 D 简单插入排序 ● 一个计算机系统由(D )组成 A CPU 、存储器 B CPU 和外设 C 操作系统和用户程序 D 硬件和软件 ● 在SPOOLing 技术中,系统实际上将(B )分配给用户进程 A 设备的信号量 B 磁盘上的一块区域,即虚拟设备 C 设备的一段使用时间 D 设备的缓冲区 ● 分页式存储管理是基于(D )实现的。 A 固定分区 B 动态分区 C 静态重定位 D 动态重定位 ● 进程的状态转换不可以是(A ) A 从阻塞态到执行态 B 从执行态到阻塞态 C 从阻塞态到结束态 D 从阻塞态到就绪态 ● 原语是一段程序,它和普通程序本质不同在于(B ) A 原语提供系统服务 B 原语具有不可中断性 C 原语程序很短 D 原语执行不同的指令集 ● 假设有5个进程J1~J5同时到达系统,它们的运行时间为10,6,2,4和8分钟,它 们的优先级分别为3,5,2,1和4(5为最低优先级),若采用优先级调度算法,假设进程是依次执行完毕的,则平均周转时间为(C ) A 20分钟 B 6分钟 C 16分钟 D 10分钟 ● 虚拟设备技术是一种(D )

相关文档
最新文档