文档库 最新最全的文档下载
当前位置:文档库 › report1

report1

report1
report1

浙江大学城市学院实验报告

课程名称数据结构基础

实验项目名称实验一熟悉Project组织应用程序

学生姓名鲍晨专业班级计算1103 学号31101165

实验成绩指导老师(签名)日期

一.实验目的和要求

1、熟悉VC6.0开发环境;使用Workspace和Project组织应用程序;

2、回顾C语言程序设计,编写完整的实验应用程序,并调试通过。

3、掌握文件包含,以及库函数iostream.h中的标准输入、输出流对象cin和

cout,理解“引用(&)”方式的参数传递。

二.实验内容

1、按下述介绍的方法,练习并掌握使用Project组织应用程序的方法。

步骤:

①启动VC++,选择“文件(File)”菜单中的“新建(New)”项,选择“工程(Projects)页,然后选择“Win32 Console Application”,在右上角输入project的名称(如:Example),再选择合适的存储路径,然后按下“确定”按钮。这样就建立了一个新的工程。如图所示:

②在窗口左侧出现WorkSpace视图,选择“FileView”页可浏览该工程所包含的文件。然后可在项目中新建源文件(菜单:文件→新建),包括

“C/C++Header File”和“C/C++Source File”两类文件,或将已有的源文件加入到这个工程中(菜单:工程→增加到工程)。如图所示。

完成后程序组织结构如图所示:

其中Source Files中包含主程序等源程序文件(如:main.cpp),Header Files中包含头文件等(如:function.h)。

2、在VC中建立工程(工程名为test1_1),添加头文件(test1_1.h)和源文件(test1_1.cpp)并编写如下程序加入到工程中,编译执行该程序。要求使用cin和cout进行数据的输入输出。

程序要求如下:

设a为长度为n的整数型一维数组。

①编写求a中的最大值、最小值和平均值的函数void aMAX_MIN_AVE(int *a, int n, int &max, int &min, int &aver), 用“引用参数”带回结果。

②编写函数int prime_SUM(int *a, int n) 计算a中所有素数之和。

③选做:编写函数void aSORT(int *a,int n) 对a进行从小到大的排序,并输出排序结果。

要求:

把以上函数存放在头文件test1_1.h中,并自行设计主函数来测试各类操作实现的正确性,主函数存放在文件test1_1.cpp中。

3、填写实验报告,实验报告文件取名为report1.doc。

4、上传实验报告文件report1.doc 、源程序文件test1_1.cpp及test1_1.h到Ftp服务器上自己的文件夹下。

三. 函数的功能说明及算法思路

(包括每个函数的功能说明,及一些重要函数的算法实现思路)

四. 实验结果与分析

(包括运行结果截图、结果分析等)

五. 心得体会

(记录实验感受、上机过程中遇到的困难及解决办法、遗留的问题、意见和建议等。)

现在编程已经不是某一块的能力,感觉有点考察整体的能力,所以感觉大一学的那些基础知识很重要,可能是以前编程太少了,经验也不多,所以不是很顺畅。在以后的学习中,尽量打好基础。

【附录----源程序】

主函数:

#include

#include

#include"text1_1.h"

int main(void)

{

int a[10],x,j,aMax=0,aMin=0,aVer=0; int i=0;

cin>>x;

while(x!=-1&&i<10)

{

a[i++]=x;

cin>>x;

}

cout<<"数组中的元素为:"<

cout<

cout<

aMAX_MIN_A VE(a,i,aMax,aMin,aVer );

cout<<"最大值="<

"<

aSORT(a,i);

for(j=0;j

cout<

cout<

return 0;

}

子函数:

void aMAX_MIN_A VE(int *a, int n, int &max, int &min, int &aver)

{

int i;

max=a[0];

min=a[0];

aver=0;

for(i=1;i

{

if(a[i]>max)

max=a[i];

}

for(i=1;i

{

if(a[i]

min=a[i];

}

for(i=0;i

{

aver=aver+a[i];

}

aver=aver/n;

}

int prime_SUM(int *a,int n) {

int i,j,k,sum=0;

for(i=0;i

if(a[i]>=1)

sum=sum+0;

for(j=2;j

{

k=a[i]%j;

if(k==0)

break;

}

if(j==a[i])

sum=sum+a[i];

}

return sum;

}

void aSORT(int *a,int n) {

int i,j,k;

for(i=0;i

for(j=i+1;j

{

if(a[j]

{

k=a[i];

a[i]=a[j];

a[j]=k;

}

}

}

}

相关文档