软件开发技术基础的实验报告

2024-05-24

软件开发技术基础的实验报告(共12篇)

篇1:软件开发技术基础的实验报告

《软件开发技术基础》实验报告

《软件开发技术基础》实验报告

姓名:

学号:

班级:

《软件开发技术基础》实验报告

实验一 线性表的操作(2学时)

实验类型:验证性

实验要求:必修 实验学时: 2学时

一、实验目的:

参照给定的线性表顺序表类和链表类的程序样例,验证给出的线性表的常见算法。

二、实验要求:

1、掌握线性表顺序表类和链表类的特点。掌握线性表的常见算法。

2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。

三、实验内容:

设计一个静态数组存储结构的顺序表类,要求编程实现如下任务:

1)建立一个线性表,首先依次输人整数数据元素(个数根据自己的需要键盘给定)

2)删除指定位置的数据元素(指定元素位置通过键盘输入)再依次显示删除后的线性表中的数据元素。

3)查找指定数据的数据元素(指定数据的大小通过键盘输入),若找到则显示位置,若没有找到就显示0。

四、要求

1)采用顺序表实现,假设该顺序表的数据元素个数在最坏情况下不会超过50个。

2)写出完整的程序并能调试通过即可

《软件开发技术基础》实验报告

{ if(nn==mm)

return(-1);if(nn==0)

return(0);return(1);}

template void sq_LList::ins_sq_LList(int i,T b){ int k;if(nn==mm){

cout<<“overflow”<

return;} if(i>nn)

i=nn+1;if(i<1)

i=1;for(k=nn;k>=i;k--)

v[k]=v[k-1];v[i-1]=b;nn=nn+1;return;}

template void sq_LList::del_sq_LList(int i){ int k;if(nn==0){

cout<<“underflow!”<

return;} if((i<1)||(i>nn)){

cout<<“Not this element in the list!”<

return;} for(k=i;k

v[k-1]=v[k];

《软件开发技术基础》实验报告

return 0;}

运行结果如下:

心得体会:

1.通过本次试验,我掌握了线性表的基本概念。

2.通过本次试验,我懂得了如何建立一个顺序表,并能对顺序表进行基本的建立、插入、检测、删除以及查找的操作。

3.本次试验我知道了线性表的顺序存储结构具有如下两个特点:(1)线性表中所有元素所占的存储空间是连续的。

(2)线性表中各元素在存储空间中是按逻辑顺序依次存放的。

实验二 栈、队列的操作

《软件开发技术基础》实验报告

#define stacksize 5

typedef struct { char taskname[10];int taskno;

}DataType;

class stack { private:

public:

};

//任务名 //任务号

int top;DataType task[stacksize];bool init();bool empty();bool push(DataType d);bool pop(DataType &d);

bool stack::init(){ top=0;int i;for(i=0;i

strcpy(task[i].taskname,“");

task[i].taskno=-1;} return true;}

bool stack::empty(){ return top>0?false:true;

}

《软件开发技术基础》实验报告

queue_node(int d){

data=d;

next=NULL;} };

class queue { private: queue_node *front,*rear;public: bool init();bool empty();bool enqueue(int d);bool dequeue(int &d);};

bool queue::init(){

front=rear=new queue_node;

return true;}

bool queue::empty(){ if(front==rear)return true;else return false;}

bool queue::enqueue(int d){ rear->next=new queue_node(d);rear=rear->next;return true;}

《软件开发技术基础》实验报告

bool sqqueue::enqueue(int d){ if((rear+1)%queuesize==front)return false;base[rear]=d;rear=(rear+1)%queuesize;return true;}

bool sqqueue::dequeue(int &d){ if(front==rear)return false;d=base[front];front=(front+1)%queuesize;return true;}

void main(){

DataType dd[5],tt;

char tn[]=”任务a“;int i;for(i=0;i<5;i++){ strcpy(dd[i].taskname,tn);tn[4]++;dd[i].taskno=i+1;} stack mystack;mystack.init();for(i=0;i<5;i++){ mystack.push(dd[i]);} cout<<”入栈完成,按回车键继续……“;getchar();

《软件开发技术基础》实验报告

实验结果:

实验三 查找算法实现(2学时)

实验类型:验证性

实验要求:必修 实验学时: 2学时

一、实验目的:

参照各种查找算法程序样例,验证给出的查找常见算法。

二、实验要求:

1、掌握各种查找算法的特点,测试并验证查找的常见算法。

2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。

三、实验内容:

1.建立有序表,采用折半查找实现某一已知的关键字的查找。

2.利用折半查找算法在一个有序表中插入一个元素,并保持表的有序性。

源程序如下:

#include using namespace std;template class sL_List { private:

int mm;

int nn;

T *v;public:

sL_List(){mm=0;nn=0;return;}

sL_List(int);

int search_sL_List(T);

int insert_sL_List(int,T);

void prt_sL_List();};

template sL_List::sL_List(int m){ mm=m;

《软件开发技术基础》实验报告

int i;for(i=0;i

cout<

int main(){ int k,t,q,result;int a[20]={10,20,30,40,50,60,70,80};sL_Lists(20);for(k=0;k<8;k++)

s.insert_sL_List(k+1,a[k]);cout<<”输出有序对象s:“<>t;cout<>q;cout<

实验结果如下:

《软件开发技术基础》实验报告

2、提交实验报告,报告内容包括:目的、要求、算法描述、程序结构、主要变量说明、程序清单、调试情况、设计技巧、心得体会。

三、实验内容:

输入一组关键字序列分别实现下列排序: 1.实现直接插入排序; 2.实现冒泡排序算法;

3.实现快速排序算法(取第一个记录或中间记录作为基准记录);

4.快速排序的非递归算法; 5.堆排序。

把上述几种排序的算法编写成菜单,根据输入的数字不同执行对应的排序算法。

源程序如下:

#include using namespace std;//实现简单插入排序 template void insort(T p[],int n){ int j,k;T t;for(j=1;j

t=p[j];

k=j-1;

while((k>=0)&&(p[k]>t))

{

p[k+1]=p[k];

k=k-1;

}

p[k+1]=t;} return;} //实现冒泡排序 template void bub(T p[],int n){ int m,k,j,i;T d;k=0;

《软件开发技术基础》实验报告

static int split(T p[],int n){ int i,j,k,l;T t;i=0;j=n-1;k=(i+j)/2;if((p[i]>=p[j])&&(p[j]>=p[k]))

l=j;else if((p[i]>=p[k])&&(p[k]>=p[j]))

l=k;else

l=i;t=p[l];p[l]=p[i];while(i!=j){

while((i=t))

j=j-1;

if(i

{

p[i]=p[j];

i=i+1;

while((i

i=i+1;

if(i

{

p[j]=p[i];

j=j-1;

}

} } p[i]=t;return(i);} //实现堆排序

template void hap(T p[],int n){ int i,mm;T t;mm=n/2;for(i=mm-1;i>=0;i--)

sift(p,i,n-1);for(i=n-1;i>=1;i--)

《软件开发技术基础》实验报告

p[i]=100.0+200.0*p[i];cout<<”排列前的序列为:“<

cout<cout<

cout<cout<

cout<cout<

cout<cout<

cout<cout<

运行结果如下:

《软件开发技术基础》实验报告

篇2:软件开发技术基础的实验报告

姓名:肖燕平上机实验 一 Ex1_1 #include #define maxnum 20

typedef struct list_type { int data[maxnum];int length;}list_type;

void error(int a){ switch(a){

case 0:

printf(“nthe length of the data is too longn”);break;

case 1:

printf(“nthe place is wrongn”);break;} }

void creatlist(list_type *table)

//创建链表

{ int i;int k;table->length=0;printf(“nplease input the numbers of the datan”);for(i=0;i

scanf(“%d”,&k);

if(k==-1)

//输入-1则结束

break;

学号:2011019090028

}

} table->data[i]=k;table->length++;

while(k!=-1)//如果数据输入过长,则报错且重新输入数据

{ error(0);while(k!=-1)//防止接下来的程序变量得到错误的数据

{

scanf(“%d”,&k);} creatlist(table);} void showlist(list_type *table)//显示数据

{ int i;while(table->length<=0){

printf(“NO DATA”);

creatlist(table);

}

for(i=0;ilength;i++){

printf(“%d

”,table->data[i]);} printf(“nthe length of the data is %dn”,table->length);

}

void insertlist(list_type *table,int pla,int num)//插入一个数

{ int i;

while(pla<0||pla>table->length)//如果插入的位置不符合条件,则重新输入

{

error(1);

printf(“nplease input the place of the insert number againn”);

scanf(“%d”,&pla);

}

table->length=table->length-1;

pla=pla-1;

for(i=table->length;i>pla-1;i--)

{

table->data[i+1]=table->data[i];

}

table->data[pla]=num;

table->length=table->length+2;

}

void delete_list(list_type *table,int place)

//删除一个数

{ int i;while(place>table->length-1||place<1){

error(1);

printf(“nplease input the place of the delete number againn”);

scanf(“%d”,&place);

} for(i=place-1;ilength-1;i++){

table->data[i]=table->data[i+1];} table->length--;}

void main(){ int inse_place,inse_num;int del_place;

list_type table;

creatlist(&table);//创建顺序表

showlist(&table);//显示顺序表

printf(“nplease input the insert place and numbern”);scanf(“%d%d”,&inse_place,&inse_num);

insertlist(&table,inse_place,inse_num);

//插入一个数

printf(“nthe new list isn”);

showlist(&table);//显示插入数后的顺序表

printf(“nplease input the delete placen”);scanf(“%d”,&del_place);

//删除一个数 delete_list(&table,del_place);printf(“nthe new list isn”);showlist(&table);

}

输出数据:

1,不考虑边界情况

2,考虑边界

问题及解决方法

问题1:遗漏了某个变量而直接用

注意:对于变量,要那个变量则再来定义,定义后再用。

问题2:输入数据量大于19时,其余数字会赋给后程序的scanf。解决方法:利用另一变量k值,若k不等于-1则不允许程序往下走。

问题3:在print“NO DATA”后,程序依然往下走,不能重新录入数据。

解决方法:再调用输入数据函数,并且惯用while.问题还有很多,但忘了些。。。

心得体会:

1,在使用变量时,将要用哪个马上定义再使用。

2,error函数尽量写在所有函数之前。方便任一函数调用。3,对于printf函数,多用换行。

4,用scanf函数时,若输入数的量大于某一scanf的需求量,则要运用一函数消耗掉多余量,避免影响下面的函数,赋错值。

5,对于一些不符合要求的录入值,要习惯于重新调用输入函数或调用自我重新录入。

6,虽然自我的思考很重要,但还是要和同学讨论和交流算法。7,对于取值检验时,不能只取一种类型的数值或只随机取值,要注意取边界值和范围之外的值。

8,对于删除许多数时(例如把负数全部删除),要避免一次又一次的调用删除函数,防止出错。用x,y。Y首先比x前一位,若想<0,则y值赋给x。若不符合前提,令y往下走,至符合条件。

9,编程时,不要一来就写代码,一定要明确自己的步骤,在纸上写下来,用框图画好再写程序。

篇3:软件开发技术基础的实验报告

我校自2001在清华大学第一批教授专家团的指导下,结合我校校情开始对非计算机专业学生的计算机公共基础课程体系进行了多次改革和实践。并于2007年在计算机应用基础、高级语言类的课程体系上开设了《软件技术基础》等课程形成了较完整的计算机公共基础课程体系结构。

1《软件技术基础》开设的目的和特点

1.1《软件技术基础》开设的目的《软件技术基础》课

程主要为非计算机专业的工科学生开设。掌握这门课程主要是以培养学生实践能力为主要目的,为社会培养复合型、创新型人才打好基础。

1.2《软件技术基础》课程的主要特点

主要为学生讲授数据结构和算法还介绍了基本的操作系统、数据库技术及软件工程的相关概念。希望学生对计算机系统知识有个全面的认知和了解,能更好的将计算机技术和所学专业相结合。

2 突出实践,改革创新

在2007年开设这门课程至今五年来,对教学不断的进行着探索。结合我校学生特点大胆进行教学改革。

2.1 原来存在的问题

2.1.1 教学面广量大难度高

特别是对于数据结构部分需要学生完成线性表、队列、栈、二叉树的实现和相关运算。在经历了两个教学周期发现学生实验完成效果非常差。究其原因发现:(1)我校生源本地学生占一定的比例,其中还有很多少数民族学生,学生水平层次不齐。(2)实验教学中要求学生用学习过的C语言来编程实现。由于学生对于C语言这部分掌握不太理想,在进行实验教学过程中发现很多学生根本无法独立完成一个实验。久而久之大部分学生就产生了厌学心理。对于实验就更加敷衍了事甚至开始抄袭他人作业。在这种情况下实验的目的根本没有达到。

2.1.2 实验内容组织不科学首先,实验内容结构松

散。最初希望将每一部分理论知识都能和开设的实验相结合。在理论课中讲授的数据结构部份中的线性表、队列、栈、二叉树都有相应的实验。虽然“面面俱到”但实验和实验之间没有联系内容离散没有侧重点。其次,实验性质多为验证性。因为学时的关系在做完验证性的实验后根本没有时间再开展综合性的实验。缺乏对学生理解力和创新力的培养。另外实验内容较多而且每个实验只有2个学时时间比较紧张,并且要求学生对C语言掌握较熟悉。而学生对于C语言的掌握往往差强人意,加上每个实验任务时间少学生很容易造成厌学情绪。整个实验下来很少有学生真正在理解和自主的学习中完成,实验的目的成为一纸空谈。

2.2 调整学时,加大实践

根据《软件技术基础》课程的内容和性质,在最初制定教学大纲时将理论和实验各分为32学时。后经实践教学发现实验内容较多,学时不足造成实验效果差强人意,无法提高工科学生的实践能力。结合课程的内容将一些较容易理解的章节课时进行了压缩,增加到了实验课时。经过调整后实验课时为36,比列占到了总课时的56.3%,其中课程设计课时为8,占到了总课时的12.5%。实验学时的调整大大增加了学生自主实践的时间。

2.3“以线带面”,增加“小课设”在《软件技术基础》

课程的教学改革过程中针对我校工科学生专业特点,主要从实验的创新角度出发在数据结构和算法这两部分知识中挑选出“线性表”作为基础实验和综合的课程设计两部分来进行。实验的创新即突出侧重点,又提高了学生的自主学习和实践能力。

2.3.1“一线式”教学

根据我校学生的实际水平、能力和原有实验中存在的问题,对实验内容进行了改革和创新。将数据结构中的实验主要集中在线性表这一部分知识中。围绕着线性表这“一条线”开展实验教学活动。实际实施中将实验任务细化要求学生能够实现线性表的两种存储结构:顺序和链式。要求分别实现对线性表进行建表、插入和删除等基本运算。在完成线性表实验的基础上,要求学生实现查找和排序的各种算法。实验的创新使得内容整体化,前后连贯重点突出。保证了基础知识的掌握并为后续实验做好基础。由于移除了队列、栈等实验内容,将相应的实验学时增加到了线性表的实验中。学生在实验中能够有较充足的时间去完成。实验内容围绕着线性表这“一条线”开展,引导学生逐步编程实现,激发学生学习的兴趣培养自主学习的能力。在近年来的实际教学过程中,学生的实验完成效果较原来有很大的改善和提高。

2.3.2 开设“课程设计”在实验教学的创新中,除了

进行“一线式”教学内容的设计外还开创了课程设计。这也是我校计算机公共基础课程中的独有特色。课程设计一般要求学生在相对集中的时间内运用所学的相关知识完成一个具体的小设计,它是一次完整的创新实践训练。课程设计的设置可加深学生对所学课程的理解,培养学生的基本设计技能,引导并启发学生创新[1]。

在《软件技术基础》课程中开设课程设计是一种新的尝试,是对课程理论知识的综合应用。其目的是发挥学生的主动性、培养学生分析问题并加以解决的能力,锻炼学生设计创新能力[2]。

(1)课程设计的教学思路。课程设计是《软件技术基础》课程实践教学中非常重要的一部分。教学思路主要从两点出发:

1)“由线及面”。在进行了前面“一线式”的实验内容后,学生已经掌握了线性表的逻辑结构和存储结构以及在其上进行各种操作。虽然学生完成了这部分的实验但仍然是比较抽象的,因此在实验中增加了课程设计环节。由前面实验的“线”构建课程设计这个“面”。教学活动的开展环环相扣,要求学生能够运用前面掌握的知识解决实际问题。达到培养学生自主学习能力和创新能力及团队合作能力。

2)“由被动转主动”。在前面的实验教学中是以老师为中心,学生被动去接受知识。学生的主动性和积极性受到了一定的限制,不利于创造能力的培养[3]。课程设计的教学思路就是利用任务驱动教学法将学生的学习方式“由被动转主动”。该教学法强调学生的学习活动必须与大的任务或问题相结合,以探索问题来引发和维持学习的兴趣,让学生带着真实的任务去学习。学生在亲身参与的实践活动中体会到自己探索的成功,可以充分激发学生的学习兴趣,调动学生的学习积极性和主动参与意识[4]。

(2)课程设计的实施。在具体的实施过程中课程设计题目的选择,如何组织教学?教学效果的衡量都是非常重要的[5]。首先是确定设计的题目,题目可以由教师制定,还可以由学生自选。最初开始时最好由老师根据教学内容来制定,对教学活动进行整体控制。其次是分组合作,分组在学生进行完前面“一线式”的实验内容之后开始。由于学生水平和能力相差很多,所以在进行分组时强调“团队精神”和“协作学习”。最后是时间的安排,设计的时间和地点没有局限于单纯的实验课堂而是要求学生利用课内和课外并行进行。离开课堂和老师的实验学习就要求学生具有一定的自主学习的能力并逐渐培养自主学习的习惯。

(3)课程设计的考核。课程设计的成绩是衡量学生学习水平的重要部份。课程设计的考核主要从两个方面进行。首先老师根据每个组提交的预期报告进行监督和考核。考核的分值的评定主要是看学生是否按照项目进度完成各自的实验,实验完成效果如何,查阅资料如何等方面。除了老师的监督和评定,另一方面的分值交由组长进行组内成员的评定。由组长根据每个组员的实际能力评定出优、良、合格三个分值段。最后的课程设计分值由老师考核结果和组长考核结果加一定权值共同计算得出。

2.4 创新实验对课程的影响

2.4.1 提高学生的自主学习能力

在对《软件技术基础》课程实验进行创新改革后,学生对于程序设计能力有了整体提高,对于计算机有了系统的理解。从学生完成的实验报告和课程设计结果来看效果显著。在改革前,大多数学生无法独立完成实验。在进行“一线式”实验教学后,学生能够很好的完成实验内容,同时对于实验的掌握更加促进了对于理论知识的理解;在改革前,学生对于课程设计的题目视为“天书”,加之前面实验基础薄弱课程设计完成起来非常困难。改革后学生因为通过前面“一线式“的实验教学打下了比较结实的基础,所以可以较好的理解题目并完成课程设计。学生的课程设计代码均超过500行以上,同时通过课程设计全面的理解了结构化程序设计思想,并对C语言的掌握有了大幅度的提高。从学生的课程设计报告的总结中可以看出,进行课程设计对于学生查阅资料、编写程序、团队合作等方面都得到了很大提高。对今后进行专业课程的课程设计或是毕业设计而言做了有力的前导和铺垫。在后续的学生专业课程得到的反馈中,学生能够将《软件技术基础》课程所讲授的系统知识应用到专业学习中。例如,后续为工科学生开设的计算方法、电路原理等课程中,学生能够利用所学软件技术知识来解决实际问题。实践能力得到了很大的提高,教学真正有了意义,学生有了更强的社会竞争力。

2.4.2 对同类课程改革提供了新思路

创新实验作为《软件技术基础》课程的教学亮点对于教学改革起着积极的促进作用,也是我校计算机公共基础课程改革的一部分。创新实验的目标着重强调对大学生自主学习能力、实践能力的提高。通过对《软件技术基础》课程改革的实践为同类课程提供了有力借鉴,同时促进着我校计算机公共基础其他课程的改革和建设。

3 结束语

“一线式”教学虽然取得了一定效果,但实验内容舍去了队列、栈、二叉树等内容,实验目标过于单一。学生情况千差万别,学习主动性和能力各不相同。如果用同样的尺度要求,达不到因材施教的目的[6]。希望今后可以形成多目标体系结构满足不同水平学生的学习要求。在今后的改革中还希望开设操作系统的相关实验。另外课程设计题目太单薄,考核标准不统一等等都是今后改革的内容。

摘要:以非计算机工科类学生开设的软件技术基础课程的特点出发,阐述了以创新实验对软件技术基础课程进行的改革和实践,并对课程教学效果的影响进行了深入分析。

关键词:软件技术基础,实践能力,自主学习,课程设计

参考文献

[1]刘晓康,余洁冰.工科学生课程设计与综合素质培养[J].广东:高教探索,2009,(5):133.

[2]庞晓琼.案例驱动的数据结构课程设计教学改革实践[J].北京:计算机教育,2009,(1):53.

[3]王新龙,宋晔.论课程设计环节中学生创新能力的培养[J].北京:中国现代教育装备,2010,(3):138.

[4]韩梅.任务驱动法在高校计算机公共课教学中的应用[J].上海:华东理工学院学报,2005,24(4):394.

[5]颜素莉.课程设计在实践教学中的实施与研究[J].北京:中国科技信息,2009,(11):303.

篇4:软件开发技术基础的实验报告

目前,计算机辅助教学引起了社会的普遍关注。加强计算机基础教育,不仅是为了让学生学习掌握现代化的信息处理工具,同时也是对学生进行一种科学素质教育。为了加强信息学院非计算机专业学生的计算机应用能力,笔者所在学校在开设相应专业基础课和专业课以外,还开设了计算机软件技术基础课程这样的专业选修课程。

一、目前的教学情况

由于该门课程是为非计算机专业的学生开设的,因此在该课程的教学过程中,涉及到比较广泛的内容,包括软件工程、数据结构、操作系统和数据库系统四个部分的基础知识。其目的是通过该课程的学习,使学生能够全面系统地掌握计算机软件技术基础的基本知识,熟悉软件工程基础概念、数据结果基本概念和结构等,并且具有一定的软件系统设计的能力。

在近几年的教学中,笔者教授课程的目的是为了让学生对软件技术基础有一定的了解,因此在教学的过程中没有涉及到实验部分。但是,笔者发现这不能让学生达到巩固知识的目的。因此,在教学大纲的改编中,笔者增设了实验课内容。通过实验教学环节,能使学生在有限的教学学时内掌握更多的知识。

二、实验内容设计

1.数据结构

在该课程的学时分配中,数据结构的内容占据了最大的比例。众所周知,数据结构是计算机学科中最重要的课程之一。在计算机科学中,数据结构不仅是一般程序设计的基础,而且是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。现今计算机知识突飞猛进,计算机软件的规模越来越大,结构越来越复杂,所要编写的程序也就越来越多。这就需要程序设计者在编程时,不仅要考虑解决某一特定问题的算法,而且首先需要考虑对这些数据量大且关系复杂的数据如何组织的问题,也就是要研究数据的特性及其之间的相互关系,研究如何存储这些数据。以上就是数据结构的实质所在。因此,笔者将面向对象的编程思想引入计算机软件技术基础教程教学中,并且通过实验,让学生进一步了解和掌握数据结构的含义。

在数据结构中,包含了顺序表、链表、栈、队列、二叉树、图等结构的内容,每种结构又包含了诸多内容:第一,线性表的顺序存储、链式存储及相关算法,如建立、插入、删除、查找、输出等。第二,栈的顺序存储、链式存储及相关算法,如建空栈、判断栈空、栈满,入栈、出栈、输出等。第三,队列的顺序存储、链式存储及相关算法,如建空队、判断队空、队满,进队、出队、输出等。第四,二叉树的存储及相关算法,如建立、前序遍历、中序遍历、后序遍历以及二叉树查找等。第五,图的存储及相关算法,如建立、插入、删除、查找、输出节点,图的深度优先遍历、广度优先遍历等。

由于课时的限制,因此,在实验的分配上,学习二叉树的遍历。“遍历”是抽取数据结构中各个数据值。“二叉树遍历”是以固定的顺序,有系统地抽取二叉树中的各个节点,且每个节点均恰好被抽取一次。二叉树结构如图1所示。

二叉树结构中的每个节点均有左右两个分支,在遍历的过程中可以选择往左或往右走,遍历结束,每个节点均被抽取一次。事实上,二叉树遍历是以递归的方式进行的,依递归的调用顺序之不同,可分为三种不同的遍历方式:前序遍历、中序遍历和后序遍历。下面给出二叉树节点的数据类型及前序遍历的流程图。

二叉树节点的数据类型为:

struct tree

{

struct tree*left;

int data;

struct tree *right;

};

typedef struct tree treenode;

typedef treenode b_ tree;

前序遍历思想是:先遍历根节点,再遍历左子树,最后才遍历右子树。图l所示的二叉树前序遍历顺序为:ABDECFGH。

二叉树前序遍历的程序流程图,如图2所示。

2.数据库系统

数据库技术,从20世纪60年代中期产生以来,得到了迅速的发展,是计算机科学技术中发展最快的技术之一。数据库技术在计算机辅助设计、人工智能、电子商务、工农业生产、行政管理、科学研究和工程技术等诸多领域得到了广泛应用,已经成为计算机信息系统和应用系统的核心技术和重要基础。通过学习,学生能够正确理解数据库的基本原理,熟练掌握数据库的设计方法和应用技术。因此,本着培养应用人才目的,针对学生过去存在的概念抽象、实践不足等情况,该部分内容除了理论讲解之外,也增加了利用Visual FoxPro进行上机练习的环节,让学生更直观、更直接地了解数据库的含义。

在数据库的实验中,笔者希望学生能够掌握基本的数据库表的操作,包括数据库表的建立,记录的显示、编辑、修改、插入和删除等操作。学生通过操作,了解数据库表的含义以及应用。

在该实验中,笔者选择了Visual FoxPro 6.0(VFP)软件。VFP是一种用来进行管理信息系统开发的常用工具。Visual Foxpro6.0学习起来较为简单,易于入门,而且操作方便,较为直观,学生容易理解。因此,笔者选择了Visual Foxpro6.0作为数据库的基础课程,旨在让学生通过学习,了解数据库的基本原理及应用技术。

篇5:工程材料与成形技术基础实验报告

一、金属材料的硬度实验

一、实验类型

验证性

二、实验目的

1、了解硬度测定的基本原理及应用范围。

2、了解布氏、洛氏硬度试验机的主要结构及操作方法。

三、实验仪器与设备

1、HB-3000型布氏硬度试验机;

2、H-100型洛低硬度试验机;

3、读数放大鏡;

四、实验内容:

金属的硬度可以认为是金属材料表面在接触应力作用下抵抗塑性变形的一种能力。硬度测量能够给出金属材料软硬程度的数量概念。由于在金属表面以下不同深处材料所承受的应力和所发生的变形程度不同,因而硬度值可以综合地反映压痕附近局部体积内金属的弹性、微量塑变抗力、塑变强化能力以及大量形变抗力。硬度值越高,表明金属抵抗塑性变形能力越大,材料产生塑性变形就越困难。另外,硬度与其它机械性能(如强调指标b及塑性指标和)之间有着一定的内在联系,所以从某种意义上说硬度的大小对于机械零件或工具的使用性能及寿命具有决定性意义。

硬度的试验方法很多,在机械工业中广泛采用压入法来测定硬度,压入法又可分为布氏硬度、洛氏硬度、维氏硬度等。

压入法硬度试验的主要特点是:

(1)试验时应力状态最软(即最大切应力远远大于最大正应力),因而不论是塑性材料还是脆性材料均能发生塑性变形。

(2)金属的硬度与强调指标之间存在如下近似关系。

bKHB

(3)硬度值对材料的耐磨性、疲劳强度等性能也有定性的参考价值,通常硬度值高,这些性能也就好。在机械零件设计图纸上对机械性能的技术要求,往往只标注硬度值,其原因就在于此。

(4)硬度测定后由于仅在金属表面局部体系内产生很小压痕,并不损坏零件,因而适合于成品检验。(5)设备简单,操作迅速方便。

布氏硬度(HB):

(一)布氏硬度试验的基本原理

布氏硬度试验是施加一定大小的载荷P,将直径为D的钢球压入被测金属表面(如图1-1所示)保持一定时间,然后卸除载荷,根据钢球在金属表面上所压出的凹痕面积F凹求出平均应力值,以此作为硬度值的计量指标,并用符号HB表示。

其计算公式如下:

HBP/F凹

根据压痕面积和球面之比等于压痕深度h和钢球直径之比的几何关系,可知压痕部分的球面积为:

F凹Dh

(1-2)

由于测量压痕直径d要比测定压痕深度h容易,故可将(1-2)式中h改换为d来表示,这可根据图1-1(b)中Oab的关系求出:

12Dh12(D2)(2d2)2

h(DDd)2

2(1-3)

将式(1-2)和(1-3)代入式(1-1)即得:

HBPDh2PD(DDd)22

(1-4)

式中只有d是变数,故只需测出压痕直径d,根据已知D和P值就可计算出HB值。在实际测量时,可由测出之压痕直径d直接查表得到HB值。

(三)布氏硬度试验机的结构和操作

1、HB-3000型布氏硬度试验机的外形结构如图1-2所示。其主要部件及作用如下。

(1)机体与工作台:硬度机有铸铁机体,在机体前台面上安装了丝杠座,其中装有丝杠,丝杠上装立柱和工作台,可上下移动。

(2)杠杆机构:杠杆系统通过电动机可将载荷自动加在试样上。(3)压轴部分:用以保证工作时试样与压头中心对准。

(4)减速器部分:带动曲柄及曲柄连杆,在电机转动及反转时,将载荷加到压轴上或从压轴上卸除。(5)换向开关系统:是控制电机回转方向的装置,使加、卸载荷自动进行。

2、操作程序:

(1)将试样放在工作台上,顺时针转动手轮,使压头压向试样表面直至手轮对下面螺母产生相对运动为止。

(2)按动加载按钮,启动电动机,即开始加载荷。此时因紧压螺钉已拧松,圆盘并不转动,当红色指示灯闪亮时,迅速拧紧紧压螺钉,使圆盘转动。达到所要求的持续时间后,转动即自动停止。

(3)逆时针转动手轮降下工作台,取下试样用读数显微镜测出压痕直径d值,以此值查表即得HB值。洛氏硬度(HR):

(一)洛氏硬度试验的基本原理

洛氏硬度同布氏硬度一样也属于压入硬度法,但它不是测定压痕面积,而是根据压痕深度来确定硬度值指标。

洛氏硬度测定时,需要先后两次施加载荷(预载荷和主载荷),预加载荷的目的是使压头与试样表面接触良好,以保证测量结果准确。0-0位置为未加载荷时的压头位置,此时压入深度为h1,2-2位置为加上主载荷后的位置,此时压入深度为h2,h2包括由加载所引起的弹性变形和塑性变形,此时压头的实际压入深度为h3。洛氏硬度就是以主载荷所引起的残余压入深度(h=h3-h1)来表示。洛氏硬度的试验规范:

洛氏硬度值的计算公式如下: HRK(h3h1)0.002

(三)洛氏硬度试验机的结构和操作

1、H-100型杠杆式洛氏硬度试验机的结构如图1-4所示,其主要部分及作用如下:

(1)机体及工作台:试验机有坚固的铸铁机体,在机体前面安装有不同形状的工作台,通过手轮的转动,借助螺杆的上下移动而使工作台上升或下降。

(2)加载机构:由加载杠杆(横杆)及挂重架(纵杆)等组成,通过杠杆系统将载荷传至压头而压入试样,借扇形齿轮的转动可完成加载和卸载任务。

(3)千分表指示盘:通过刻度盘指示各种不同的硬度值(如图1-5所示)。

2、操作规程如下:

(1)根据试样预期硬度按表1-2确定压头和载荷,并装入试验机。

(2)将符合要求的试样放置在试样台上,顺时针转动手轮,使试样与压头缓慢接触,直至表盘小指针指到“0”为止,此时即已预加载荷10kgf。然后将表盘大指针调整至零点(HRA、HRC零点为0,HRB零点为30)。此时压头位置即为图1-3中的1-1位置。

(3)按动按钮,平稳地加上主载荷。当表盘中大指针反向旋转若干格并停止时,持续8~4秒(此时压头位置为图1-3中的2-2位置),再顺时针旋转摇柄,直至自锁为止,即卸除主载荷。此时大指针退回若干格,这说明弹性变形得到恢复,指针所指位置反映了压痕的实际深度(此时压头位置相当于图1-3中的3-3位置)。由表盘上可直接读出洛氏硬度值,HRA、HRC读外圈黑刻度,HRB读内圈红刻度。

(4)逆时针旋转手轮,取出试样,测试完毕。

五、实验方法与步骤

1、分成两大组,分别进行布氏和洛氏硬度试验,并相互轮换。

2、在进行试验操作前必须事先阅读并弄清布氏和洛低硬度试验机的结构及注意事项。

3、按照规定的操作顺序测定试样的硬度值(HB和HRC)。

4、注意事项

1)试样两端要平行,表面应平整,若有油污或氧化皮,可用砂纸打磨,以免影响测试。2)圆柱形试样应放在带有“V”型槽的工作台上操作,以防试样滚动。3)加载时应细心操作,以免损坏压头。

4)加预载荷(10kgf)时若发现阻力太大,应停止加载,立即报告,检查原因。5)测完硬度值,卸掉载荷后,必须使压头完全离开试样后再取下试样。

6)金刚钻压头系贵重物件,质硬而脆,使用时要小心谨慎,严禁与试样或其它物件碰撞。

7)应根据硬度试验机使用范围,按规定合理选用不同的载荷和压头,超过使用范围将不能获得准确的硬度值。

实验二 金属相图的观察

一.实验类型

验证性

二.实验目的

了解金属相图在显微镜下的图形

三.实验内容 1.试样制备

要在金相显微镜下对金属的组织进行观察和摄影,必须制备平整、光亮、清洁、无划痕、并用适当的方法显示出真实组织的试样

(1)手工磨样

试样在金相砂纸上由粗到细磨制。磨样时用力均匀,待磨面上旧磨痕消失,新磨痕均匀一致时就更换细一号的砂纸,并且试样转90o再磨。一般磨制到4号(粒度800)砂纸即可。

(2)抛光

本实验采用机械抛光的方法。PG-2金相制样抛光机

在专用的抛光机上进行,抛光织物(如呢料、金丝绒等)固定在抛光盘上,洒以抛光粉悬浮液,试样轻压于旋转的抛光盘上。靠嵌于抛光织物中的抛光粉的磨削作用和滚压作用,得到平整、光亮无划痕的磨面。

(3)化学浸蚀

试样在浸蚀剂作用下,组织中电位低的部分为阳极,电位高的部分为阴极,低电位处于溶解较快而呈现凹陷从而显示出组织特征。碳钢常用3~4%硝酸酒精溶液浸蚀。

2.观察金相显微组织

制好的试样放在显微镜下观察。使用显微镜时,动作轻、速度慢,由低倍到高倍进行观察,结合试样热处理工艺,观察与分析组织。

篇6:软件开发技术基础的实验报告

机械工程教研室:

《机械制造技术基础》课程于2006年被批准为重点建设课程,教学大纲中安排了四个实验,其中刀具几何角度测量和加工误差统计分析两个实验需要完善部分设施,具体情况如下,望予协助解决为盼!

特 此 报 告

课程负责人:喻逸君

二〇〇八年八月二十七日

附:

1、刀具几何角度测量仪6台2、45度和90度车刀各6把

3、Φ10f6长15mm小圆柱(材料45)100根

篇7:软件开发技术基础的实验报告

实验名称:实验日期:

专业:计算机应用(本科)年级:姓名:

一、实验目的:

(在这里填写该次实验的实验目的)

二、实验要求:

1.2.…

三、实验内容:

(在这里填写该次实验所需完成的任务)

四、实验步骤:

(在这里填写完成该次实验的主要步骤)

五、调整/完善情况:

(在这里填写在完成该次实验过程中对某些参数的进一步调整等)

六、实验结果分析:

篇8:软件开发技术基础的实验报告

关键词:专业基础课综合性实验,工程教育,数控直流稳压电源,数模转换,计数显示

0引言

专业基础课是高等教育中的三大教育(通识教育、专业基础教育、专业教育)重要组成部分,而与之配套的专业基础实验课的作为工程教育的载体,首当其冲地充当工程教育的引导者、先行者。专业基础实验课的拓展,必须与工程教育、创新教育的教学体系相符合。强化工程实践,案例启发,将成为实验教学的一种方式。下面就模拟和数字电路实验课程中的综合性实验的开发进行举例。

1 实验任务

设计一个数控直流稳压电源电路,要求:

(1)输出电压:0~+9.9V,步进可调,调整步距0.1V;

(2)输出电流:≤200m A;

(3)精度:静态误差≤2%,纹波≤50m V;

(4)显示:输出电压值由两片数码管显示;

(5)电压调整:由实验箱两个按键步进增减;

(6)系统所需要直流电源(电压±15V,±5V)

由实验箱提供。同时提供通用版一块、数模转换DAC0832两片、大功率三极管一个、相关芯片及焊锡丝若干。

2 设计原理

用模拟和数字电路的知识设计数控直流稳压电源原理框图如图1所示。

2.1 计数译码显示电路

由两片可逆计数器74LS192计数器或161计数器,通过带防抖电路的按键按下次数的统计,分别实现个位、十位的9进制加减。并通过两片CD4511译码器和两片七段数码管(其中十位带DP),实现0~9.9V显示。

2.2 D/A数模转换电压调整电路

由两片DAC0832转换器实现数字信号转换为模拟电流信号,再通过运放转换为电压信号UO3。

通过运放加法器实现对输出电压UO5的调节。当数码管显示9时,电路满足[1]:

式中,IOUT1、UREF分别为DAC0832电流输出端和基准电压,RFB为内部反馈电阻。通过调节R1电位器即调节UREF电压或调节Rf电位器实现调整输出电压UO5。电路如图2所示。

2.3 扩流输出

UO5电压经过电压跟随器隔离[2],输出到大功率三极管基极,经扩流后实现输出电流≤200m A,同时可以避免带负载RL(50Ω)电阻时,而引起输出电压UO的下降。

3 实验现象地分析和解决办法

实验中当按压按键时,由于机械开关的接触抖动,往往在几十毫秒内电压会出现多次抖动,相当于连续出现几个脉冲信号,使得数码管显示“跳数”,这里可通过RS触发器或施密特触发器的运用,作为防抖电路避免了“跳数”现象。

当UO5电压直接输出到大功率三极管基极时,在接入负载50Ω电阻时,输出电压会下降。改进方法就是接入电压跟随器进行隔离。

对于由零漂引起的失调误差,可对运放加调零电路进行改善[3]。

图3运放内有专用的调零端子调整电路(参见右栏)

图3所示是有专用调零端子的运放的调零电路。图4是无调零端子的反相输入运放调零电路。如果同相端和反 相端输入 偏置电流II B += II B -,则图中RP=R5//R6;如果IIB+≠IIB-,则图中RP≤50Ω。

4 测试分析

由上图表可知,数模转换后,个位和十位的测试数据对比理论计算值是比较精确的,而且数字越大越精确。在最终输出时,测试值5.5V的时候最精确。所以可以通过调节电位器,改善输出精度,满足题目要求。

5 结语

篇9:软件开发技术基础的实验报告

关键词 C语言 软件编程 实验探讨

中图分类号:TP3 文献标识码:A

1 C语言的概述

在各种计算机编程语言中,C语言属于一门高级语言,它是一切计算机语言的基础,拥有高级语言和低级语言的特点,灵活方便,简洁紧凑;而且它的语法限制不严格,程序员在设计时程序书写自由。不仅能够编写系统软件,同时还可以编写应用软件,能够适应于多种操作系统,应用广泛,可移植性强。总之,C语言对于信息技术的发展具有十分重要的作用和价值。

2基于C语言的计算机软件编程实验研究

2.1C语言的编程技巧

(1)灵活运用指针

在C语言编程的时候,指针是一种特殊类型的变量,它能够帮助程序员有效的表达和解决程序设计过程中遇到的复杂问题,熟练掌握指针是必要的。指针具有三要素:指针名以及指针类型和值。在编程时,指针和一般变量名相同,但是在类型以及值上具有区别,另外,指针不仅能够被用于表示数组,还可以被作为函数的参数返回值。

(2)C 语言的特有函数

在C语言编程的时候,有时需要用到一些特有函数。函数都具有一定的功能,同时函数名也反映了该函数的功能。在进行函数定义时,程序员需要把函数的名字、返回值类型以及参数名等各项都进行定义。另外,因为库函数是由C 编译系统提供的,这些函数均是系统首先定义好的,在程序调用的时候,程序员只需利用“#include 指令”把与之相关的头文件包含到所用文件中即可。

(3)算法技巧

在程序设计的过程中,算法是程序的灵魂,因此,掌握一定的算法技巧是必不可少的。通常情况下,算法不仅可以用自然语言表示,有的时候也利用流程图表示。需要注意的是,利用流程图表示算法时,程序设计员必须熟练掌握常用的流程图符号。且“数学乃是计算机之母”,牢固的数学知识同样能够提升编程效率。

(4)位运算以及文件知识

相比其他计算机高级语言的运算方法,位运算作为C 语言的重要特色,具有独特性和唯一性。位运算是以二进制位为对象,然后结合相关程序要求进行各种运算。文件包含有数据文件以及程序文件,是计算机不可缺少的,程序设计员在进行编程时,需要把所写的程序存储的文件之中,这样可以便于程序员查找数据,提升查找效率。

2.2 C语言和汇编语言混合的程序设计案例分析

(1)混合的软件编程方法

随着信息技术的不断发展和应用,在软件开发过程中,大多时候需要使用两种语言混合编程,有效地提高了程序的开发效率。通常情况下,混合的软件编程方法有两种,具体如下:

①把汇编语句嵌入C语言程序中。例如,把asm汇编语句嵌入到C语言源程序中:/*把5送到ax寄存器*/当把一组汇编语句嵌入到C语言源程序中,则需要利用大括号把嵌入程序给括起来:在本次的实验之中,在进行程序嵌入时,有其固定的格式,需要在嵌入的各行代码之前加“asm”关键字,也可以直接在asm代码块中放入汇编语句。但是程序设计者在进行嵌入时,一定要注意满足以下条件:汇编语言指令代码中关键字asm必不可少,且要放在指令代码之前;嵌入汇编语言指令代码能够和正常C语言程序混合,但是C语言的分隔符“;”必不可少;嵌入汇编语言时C语言的注释分界符必不可少,分别是“/*”和“*/” 。

②首先编写C语言程序以及汇编程序,然后独立编译目标代码模块,最终进行链接。

首先,在进行混合编程时,C语言程序能够调用汇编语言的各种子程序以及其定义的变量,同时,C语言编写的函数以及定义的变量等也可以被汇编语言调用。而且混合编程的过程中,一个任务往往是由若干个功能模块组成,且不同的功能模块均是利用合适的语言进行独立编程,且以函数的形式存在。因此,程序设计者要根据每一模块的特点选择相应的语言和语言编程系统进行独立编程,并形成目标文件,继而连接目标文件,形成完整的可执行文件。在混合编程的过程中,设计者需要注意五个问题:参数传递问题;寄存器的使用问题;存储模式;变量以及函数的调用问题;子程序的返回值问题。其中,关于参数传递问题,在进行C语言程序调用汇编程序时,必须遵从参数传递原则,利用堆栈把参数传递给汇编程序。例如,在C语言程序中含有函数:voidaa(char*p,inti),这个函数是利用汇编语言进行编写的,如果编译是在小内存模式下实施的,系统在进行调用时,则写成aa(&q, n);运行时程序首先把n压入堆栈,然后再把&q压入堆栈,当参数传递过来并被汇编语言的子程序取得时,BP寄存器便被用作基地址寄存器,实现对栈中所存数据进行存取操作。

(2)混合的软件编程实例分析

程序的主要功能是在五个数中寻找最小数,有主程序“min.c” 以及汇编子程序“qiumin.asm”这两个部分组成。其中主程序是利用C语言编写,汇编子程序是利用汇编语言编写,被主程序调用,主要于完成寻找最小数。程序代码如下:

/*文件名为:min.c*/

/*声明qiumin为外部函数*/

利用C语言和汇编语言混合的编程方法,能够实现应用程序局部满足高运行速度的要求,但是在具体的运用之中,程序设计者仍需要注意寄存器分配以及内存模式等因素对于程序的影响;且在运行时,因为程序设计语言之间存在相互调用的外部接口,故可以实现外部调用。

参考文献

篇10:软件开发技术基础的实验报告

班级:计算机2010(1)姓名:丁一学号:954211完成日期:2011.9.14

一、分析设计

用文字、图表等说明设计思路及设计结果。

二、主要源代码

Html

Css

三、效果图

屏幕抓图

四、调试过程

(调试过程中碰到的问题及解决方法)

五、实验结论

1、实验结果图

篇11:软件开发技术基础的实验报告

目的:学习使用录音机编辑和制作声音素材。

要求:掌握在Windows 95/98环境下录制、播放和编辑声音文件的方法。设备:Windows 95/98环境。

内容:

用微软操作系统自带的小软件录音机进行声音信号的采集

Windows 98/2000/xp提供的录音机程序能够进行简单的波形声音文件处理。在Windows桌面上依次选择“开始”→“程序” →“附件” → “娱乐”→“录音机”之后,打开 “声音-录音机”窗口。

窗口的菜单栏有“文件”、“编辑”、“效果”、“帮助”4个菜单,它集中了有关录音和播放方面的所有操作命令。“位置”表示声音文件的当前位置(以“秒”为单位),“长度”指文件的录音长度(以“秒”为单位),在“位置”与“长度”之间是声音文件的可视显示,它的形状取决于所选的波形。

随着文件的播放、录制,“进展条”的滑块逐渐向右移动。拖动滑块,或者单击“进展条”将改变播放或录制的进程。在“进展条”下方是5个控制按钮,用于进行播放、停止、快进和倒带、录音等常用操作。

一、播放、录制文件

播放、录制音频文件是录音机的主要功能之一,需要播放已有的音频文件时,可打开“文件”菜单,执行其中的“打开”命令,在出现的对话框内确定保存音频文件的文件夹及其名称,然后单击控制按钮的“播放”按钮。在播放波形文件的同时,窗口的波形显示栏会显示出该波形文件的波形效果。

在录制音频文件之前,需要作一些准备工作。例如录制CD唱机或其他音响的声音时,可将声源(如:录音机)的音频输出电缆连接到声卡;录制对话或独白时,可将麦克风连接到声卡。单击“声音-录音机”窗口的“录音”按钮时,录音工作正式开始。这时在波形显示栏左侧的“位置”框内将显示已录制的声音文件的时间长度,右侧的“长度”框内将显示总共可以录制的声音文件的长度。注意:软件初始录音时长为60秒,在进行正式录音前应估算要录制的时间需要多少秒,在不接音源的情况下点录音按钮(右下红色按钮)空录一段,然后利用复制、粘贴将录音时长增加到所需长度,再进行正式录制。

单击“声音-录音机”窗口的“停止”按钮时,将完成音频文件的录制工作。录制好了以后可以通过编辑菜单下的“删除当前位置以前的内容”或“删除当前位

置以后的内容”命令将多余的部分清除,进行试听后可使用“文件”菜单,执行“另存为”命令,保存录制好的声音文件。在默认的情况下,音频文件以WAV作为扩展名。

编辑声音文件

对声音文件的编辑操作除了常用的“打开”、“保存”或“另存为”命令时,还可在打开的声音文件内录制声音、插入声音文件,这两种操作都将代替原有文件的内容。如果需要将声音文件叠加在一起,可对它们进行混音处理,这样就可以实现多种声音同时播放的效果。

(1)、在现有的文件内录制声音的步骤如下:

1打开现有的声音文件,拖动滑块至开始录制声音的位置。

2单击“录音”按钮开始录音。

录制的声音来自于谈话、演讲、音乐等。新录制的声音将从滑块的位置开始覆盖原有的声音文件。执行“文件”菜单的“保存”命令时,修改后的声音文件将代替原来的声音文件。执行“文件”菜单的“另存为”命令时,可对修改后的声音文件进行换名存盘。

(2)、在现有的文件内插入声音文件的步骤如下:

1打开现有的声音文件,拖动滑块确定插入声音文件的起点。

2执行“编辑”菜单的“插入文件”命令,在打开的对话框内选择插入的声音文件。3单击“确定”按钮。

同样地,插入声音文件之后,可通过“文件”菜单的“保存”或“另存为”命令对文件进行存盘处理。

(3)、混音处理的操作步骤如下:在打开的声音文件内确定混音效果的插入点。执行“编辑”菜单的“混入文件”命令。

如果在此之前曾经将声音文件或片段复制到剪贴板,确定混音效果的插入点之后,也可以执行“编辑”菜单的“粘贴混入”命令,这样剪贴板的声音将混合到当前文件内。

设置声音效果

初次录制的声音文件难免存在不尽人意的地方,除了在此之前介绍的对声音文件进行编辑之外,用户还可删除不满意的声音片段。另外,Windows还允许用户对声音的音量、播放速度、回音效果等进行调整,以达到突出渲染主题的目的。

在删除声音片段之前,首先要确定片段的范围。它可以是从声音文件的开头到某个特定位置,也可以是从指定的位置到声音文件的结束处。被删除的部分往往是声音文件内存在的静默、杂音或噪音。为了确定删除片段的位置,可使用多次试听、逐步缩小搜索范围的方法来定位。

需要删除声音文件的起始部分时,先将滑块拖动到删除片段的结尾处,然后执行“编辑”菜单的“删除当前位置之前的内容”命令。同理,需要删除声音文件的结尾部分时,先将滑块拖动到删除片段的开始处,然后执行“编辑”菜单的“删除当前位置之后的内容”命令。

在“声音-录音机”窗口的“效果”菜单内,包含着对声音文件的音量、播放速度、回音等一系列控制命令。需要加大音量时,可执行“加大音量”命令,按每次增加25%的幅度增大声音文件播放的音量。类似地,执行“降低音量”命令时,将按每次减少25%的幅度减少声音文件播放的音量。

执行“加速”命令时,将按每次增加100%的幅度增加声音文件播放的速率。执行“减速”命令时,按每次减少100%的幅度减少声音文件播放的速率。

执行“添加回音”命令时,将给声音添加回响效果。如果回音效果不明显,可多次执行“添加回音”命令,Windows将在播放时体现叠加后的回音效果。

需要对声音文件进行反向播放时,可首先执行“效果”菜单的“反转”命令,对声音文件进行反转处理。再次执行该命令时,将恢复正常的播放状态。

注释:对声音文件的效果进行调整之后,执行“文件”菜单的“还原”命令恢复打开文件时的效果。这种恢复功能相当于撤消自打开声音文件以来的全部操作,而不是仅仅撤消最近一次的操作。

使用声音转换

通过声音文件的格式转换,用户可以把大的声音文件转换为比较小的声音文件,也可以把声音质量比较差的文件转换为质量有所提高的声音文件。打开声音文件之后,执行“文件”菜单的“属性”命令,将打开如图7-19所示的“属性”对话框,在对话框的标题栏内还同时出现了打开声音文件的名称。

在对话框的上半部分显示当前声音文件的版本、长度、数据大小、音频格式等属性。打开“选择位置”下拉列表框之后,可以看到“回放格式”、“录音格式”、“所有格式”共三个选项,其中“所选格式”包括“回放格式”与“录音格式”,需要对上述两种格式同时进行转换时,可选择“所选格式”选项。

单击“开始转换”按钮之后,将打开“选择声音”对话框。打开“名称”下拉列表框之后,可以看到“收音机质量”、“CD质量”、“电话质量”与“无标题”4个选项。前3个选项是预置的转换名称,每选择一种名称之后,对话框的“格式”、“属性”列表框的内容都将作出调整。

篇12:《电脑软件基础》实验课教学大纲

一、基本信息

课程代码:100749 实验课程名称:电脑软件基础(1)

英文名称: Basic Knowledge of Computer Design Software 课程总学时: 48 总学分:2.5 实验学时:32 适用对象:工业设计专业学生

二、实验课程的性质与任务

《电脑软件基础(1)》课程中要讲解基本操作方法和使用技巧的软件,是国内外现今常用的两种平面设计软件。其中Photoshop是国内外普遍使用的影像处理软件,它的功能非常强大;CorelDRAW是广泛用于艺术设计的矢量绘图及排版软件,这些软件是进行工业设计所必需的强大工具,能让设计的表现力更为丰富和多变,是现代艺术设计师所必须掌握的。

三、实验教学目的与要求 在课程教学中,要求学生全面了解软件的各项命令和菜单,熟练掌握软件的核心内容和使用技巧,要求每个学生在课程中都能完成课堂训练,并在作业中使用教授的软件进行设计完稿。要特别注意与专业课的密切结合和实际应用,并设计完成一定数量的相关平面设计作品。

四、考核办法和成绩评定标准

本课程根据学生上课情况和作业情况来考察。评定标准:

是否能基本掌握课堂讲授知识点; 是否能按课程要求完成作业; 是否能按时完成作业;

五、实验指导书

陈杰编《中文版Photoshop csCoreldraw 12 广告设计宝典》(北京希望电子出版社)

六、实验项目、内容与要求

实验一 Photoshop图像选取实验 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:认识Photoshop图象的选取技巧,为以后的软件操作打下基础

教学要求:结合产品广告设计实际案例,让学生了解和熟练选择和合成所需元素等相关的技术知识。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:图象的选取,Photoshop产品广告设计案例讲授和实验

实验二 Photoshop 图层知识实验 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:认识Photoshop CS图层的基本知识和应用技巧。

教学要求:深入理解Photoshop CS 图层蒙板的基本原理和运用。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Photoshop CS图层的运用,Photoshop杂志封面案例讲授和实验

实验三 Photoshop 图象编辑和调整实验 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:认识Photoshop CS图象编辑处理的基本知识和应用技巧。

教学要求:认识Photoshop CS图象调整的基本原理和运用。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:用图象编辑工具改善图象,Photoshop图象调整的基本原理和运用,结合所学的图象调整知识,进行图象的裁切、旋转、变换图象及画布变换等的练习。

实验四 Photoshop造型工具的运用实验 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:基本掌握矩形、多边形、椭圆、直线、徒手画工具、钢笔工具等的基本操作的方法和技巧,基本掌握绘制路径(直线路径、曲线路径、手绘钢笔路径)的基本方法和技巧。

教学要求:深入了解路径(节点的增删和节点转换工具)、路径面板的知识和技巧。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Photoshop绘图工具的应用,Photoshop路径工具的应用。

实验五 Photoshop 蒙板和通道实验 实验类型:认识实验 实验学时:4 每组人数:4

实验目的:基本了解和掌握Photoshop蒙板的基本原理及操作方法和技巧。

教学要求:基本了解和掌握Photoshop通道的基本原理及操作方法和技巧。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Photoshop蒙板的基本原理及操作方法和技巧,Photoshop通道的基本原理及操作方法和技巧。

实验六 Photoshop 文字处理和滤镜应用实验 实验类型:认识实验 实验学时:4 每组人数:4

实验目的:熟练掌握Photoshop文字处理操作方法和技巧。

教学要求:了解和掌握Photoshop几种常用滤镜的操作方法和技巧。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Photoshop文字处理的操作方法和技巧,Photoshop几种常用滤镜的操作方法和技巧。

实验七 Coreldraw12 操作实验 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:初步了解Coreldraw12的基本功能、软件界面的基本内容和操作。

教学要求:深入了解Coreldraw12应用范围和矢量图的特点。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Coreldraw12相关基础知识,Coreldraw12的操作简介。

实验八 Coreldraw12图形的绘制 实验类型:认识实验 实验学时:2 每组人数:4

实验目的:要求学生熟练掌握矩形工具、椭圆工具、手绘工具、贝塞尔工具、艺术笔触工具、度量工具,交互式连线工具的操作和技巧;

教学要求:要求学生熟练应用Coreldraw的绘图工具进行绘制标志和简单图形;

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Coreldraw12图形绘制的操作方法和应用技巧,Coreldraw12图形绘制案例讲授和实践。

实验九 Coreldraw12物件对象的操作和编辑 实验类型:认识实验 实验学时:4 每组人数:4

实验目的:了解和熟练掌握Coreldraw12对象的操作方法和技巧。

教学要求:要求学生熟练应用Coreldraw12对象的操作方法和技巧。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Coreldraw12对象的操作方法和技巧,Coreldraw12对象的编辑方法和技巧。

实验十 Coreldraw12填充操作、特殊效果和位图处理 实验类型:认识实验 实验学时:4 每组人数:4

实验目的:了解和掌握Coreldraw12的应用填充、颜色与特殊效果。

教学要求:了解和掌握Coreldraw12位图处理的方法和技巧。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:Coreldraw12的应用填充、颜色与特殊效果,Coreldraw12位图的编辑方法和技巧。

实验十一 Coreldraw12填充操作、特殊效果和位图处理 实验类型:设计性实验 实验学时:4 每组人数:4

实验目的:通过单张设计实际案例的练习,让学生熟练地掌握软件的处理方法和技巧。

教学要求:训练学生将Photoshop与Coreldraw12两种软件结合运用的综合能力,使学生在原有的基础上得到提高,进一步熟悉和掌握两种软件的操作技巧,并能在设计中较好的再现。

教学方法:理论讲授、课件演示、课堂示范、上机操作、个别辅导。

实验内容提要:创建文本、美工文本、段落文本、字行段间距、转换文本、编辑文本、填入框架,段落文本环绕、文本链接。渐变填充、蒙板、透视变形、图象合成、选区羽化、创建文本、编辑文本、填入框架,段落文本环绕。通过一个完整的设计过程的练习,让学生体会到哪些步骤中的操作适合选择哪种软件制作,体会Photoshop与Coreldraw12的不同特点,发挥不同软件的优点,从而进一步熟练两种软件的操作。

七、其他说明

上一篇:再见了幼儿园主题活动总结下一篇:教师学习学校制度心得