高级语言程序设计实验报告 本文关键词:高级,实验,语言程序设计,报告
高级语言程序设计实验报告 本文简介:内蒙古工业大学信息工程学院实验报告课程名称:高级语言程序设计(C)实验名称:循环、数组、函数和结构体程序设计实验类型:验证性□综合性√设计性□实验室名称:校计算机中心机房班级:工业13-1学号:201320106052姓名:王洪卫组别:同组人:成绩:实验日期:2013.11.21/2013.11.2
高级语言程序设计实验报告 本文内容:
内蒙古工业大学信息工程学院
实
验
报
告
课程名称:高级语言程序设计(C)
实验名称:循环、数组、函数和结构体程序设计
实验类型:
验证性□
综合性√
设计性□
实验室名称:
校计算机中心机房
班级:
工业13-1
学号:
201320106052
姓名:
王洪卫
组别:
同组人:
成绩:
实验日期:
2013.11.21/2013.11.28
实验报告撰写要求
一、
实验前用预习报告纸撰写预习报告,预习报告包括以下内容
1.
实验目的
2.
实验用仪器设备、器材或软件环境
3.
实验原理、方案设计、程序框图、预编程序等
4.
实验过程中需要记录的实验数据表格
二、
实验过程中,要认真观察,仔细记录
三、
完成实验后用实验报告纸撰写实验报告,包括以下内容
1.
仪器设备型号及编号
2.
实验器材或软件环境
3.
实验步骤、程序调试方法
4.
实验数据处理及结果分析
5.
实验中存在的问题
6.
体会及思考题
四、
报告撰写时,要求格式规范、书写整齐
内蒙古工业大学信息工程学院
预习报告成绩:
指导教师审核(签名):*年*月*日
预习报告
一、
实验题目:
有10个学生,每个学生的数据包括学号、姓名,4门课的成绩、总成绩和平均成绩.从键盘输入10个学生的数据(包括学号、姓名以及4门课的成绩),要求打印出每位学生的学号、姓名、四门课的成绩、总成绩和平均成绩,最后再打印出最高分的学生的数据(包括学号,姓名,4门课的成绩、总成绩和平均成绩)以及4门课的总平均成绩.具体要求:
1.根据学生信息定义一个结构体类型,再说明一个该结构体类型的数组。
2.用input函数从键盘上输入10个学生的数据。
3.用average
函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩。
4.用maximum
函数找出最高分的学生的数据;
5.在主函数中输出每位学生的学号、姓名、4门课的成绩、总成绩和平均成绩,最后再输出最高分学生的数据和总平均成绩。
输出形式如下:
NO.
name
score1
score2
score3
score4
total
average
1
wang
80
79
81
80
320
80.00
2
li
91
88
89
92
360
90.00
.
The
highest
score:
5
zhang
96
91
93
88
368
92.00
The
total
average=85.00
二、
程序流程图(大小控制在一页当中):
三、
预编程序:(这个是最开始的程序,允许有错误)
#include
#define
N
10
struct
stu
{int
number;
char
name[10];
int
score[4];
int
total;
float
average;
};
struct
stu
students[N]
struct
stusp=students;
input()
{int
i;
printf(“input
number
name
score1
score2
score3
score4:/n“);
sp=students;
for(i=0;inumber);
scanf(“%s“,sp->name)
scanf(“%d%d%d%d“,}
}
float
average()
{float
aver=0.0;
int
i;
for(sp=students,i=0;itotal=sp->score[0]+sp->score[1]+sp->score[2]+sp->score[3];
sp->average=sp->total/4.0;
aver=aver+sp->average;
}
aver=aver/N;
return(aver);
}
int
maximum()
{int
i=0,j=0;
int
max=0;
for(sp=students,i=0;itotal>max)
{max=sp->total;
j=i;
}
return(j);
}
mian()
{int
i,j;
float
aver;
input();
aver=average();
j=maximum();
printf(“no./tname/tscore1/tccore2/tscore3/tscore4/ttotal/taverage:/n“);
for(sp=students,i=0;inumber,sp->name,sp->score[0],sp->score[1],sp->score[2],sp->score[3],sp->total,sp->average);
printf(“the
highest
score/n“);
printf(“%d/t%s/t%d/t%d/t%d/t%d/t%d/t%f“,students[j].number,students[j].name,students[j].score[0],students[j].score[1],students[j].score[2],students[j].score[3],students[j].total,students[j].average);
printf(“/naverage=%f/n“,aver);
}
实验报告成绩:
指导教师审核(签名):*年*月*日
实验报告
一、
实验题目:
有10个学生,每个学生的数据包括学号、姓名,4门课的成绩、总成绩和平均成绩.从键盘输入10个学生的数据(包括学号、姓名以及4门课的成绩),要求打印出每位学生的学号、姓名、四门课的成绩、总成绩和平均成绩,最后再打印出最高分的学生的数据(包括学号,姓名,4门课的成绩、总成绩和平均成绩)以及4门课的总平均成绩.具体要求:
1.根据学生信息定义一个结构体类型,再说明一个该结构体类型的数组。
2.用input函数从键盘上输入10个学生的数据。
3.用average
函数求出每个学生总成绩、平均成绩和所有学生的总平均成绩。
4.用maximum
函数找出最高分的学生的数据;
5.在主函数中输出每位学生的学号、姓名、4门课的成绩、总成绩和平均成绩,最后再输出最高分学生的数据和总平均成绩。
输出形式如下:
NO.
name
score1
score2
score3
score4
total
average
1
wang
80
79
81
80
320
80.00
2
li
91
88
89
92
360
90.00
.
The
highest
score:
5
zhang
96
91
93
88
368
92.00
The
total
average=85.00
二、
程序流程图(大小控制在一页当中):
三、
程序:(最终正确的程序)
#include
#define
N
10
struct
stu
{int
number;
char
name[10];
int
score[4];
int
total;
float
average;
};
struct
stu
students[N];
struct
stusp=students;
input()
{int
i;
printf(“input
number
name
score1
score2
score3
score4:/n“);
sp=students;
for(i=0;inumber);
scanf(“%s“,sp->name);
scanf(“%d%d%d%d“,}
}
float
average()
{float
aver=0.0;
int
i;
for(sp=students,i=0;itotal=sp->score[0]+sp->score[1]+sp->score[2]+sp->score[3];
sp->average=sp->total/4.0;
aver=aver+sp->average;
}
aver=aver/N;
return(aver);
}
int
maximum()
{int
i=0,j;
int
max=0;
for(sp=students,i=0;itotal>max)
{max=sp->total;
j=i;
}
return(j);
}
main()
{int
i,j;
float
aver;
input();
aver=average();
j=maximum();
printf(“no./tname/tscore1/tccore2/tscore3/tscore4/ttotal/taverage:/n“);
for(sp=students,i=0;inumber,sp->name,sp->score[0],sp->score[1],sp->score[2],sp->score[3],sp->total,sp->average);
printf(“the
highest
score/n“);
printf(“%d/t%s/t%d/t%d/t%d/t%d/t%d/t%.2f“,students[j].number,students[j].name,students[j].score[0],students[j].score[1],students[j].score[2],students[j].score[3],students[j].total,students[j].average);
printf(“/naverage=%.2f/n“,aver);
}
四、
运行结果(抓图取得Alt+PrtScr):
五、
实验中存在的问题:(实验中遇到的问题及是如何解决的)
1.程序编写不熟练,部分知识有遗忘,查阅资料才得到解决;
2.
经常粗心把主函数“main”写成“mian”;
3.输入程序时由于粗心大意,经常忘记打分号;
4.for循环的使用不熟练,经多次上机调试和认真看过课本之后问题得以解决;
5.输出的形式总是和要求不符,输出后一片混乱。在输出主函数的printf中调整后,输出的效果才与要求一致;
6.部分下方提示的错误无法及时发现
六、
体会和思考:
通过进行这次实验及此次实验报告的书写,发现我在学习C程序设计中存在很多问题。明白了想要编写程序,就必须对课本内容掌握的非常熟悉与理解。在做每一个实验前都不能盲目的写程序,必须先把输入,输出的结构安排恰当,然后逐一对其进行补充与夯实,直到使其成为一个完整的程序。然后通过电脑的TC进行仔细的检验,最后使其成为一个完整同时有完美的程序。在此过程中,了解到C语言是不光是一门高深的学科,还是一门非常有实用价值的课程。深刻理解到所要求的知识不仅要理论上掌握,而且要上机操作去检验你所学的知识的层次,通过上机实践我们把自己的实践操作能力得到提升,同时也丰富了自己的知识面。只有这样我们才会学得更好,掌握得更透彻,让C语言为我们更好的服务,也让我们通过C语言作出更加完美的程序。
第-13-页
篇2:附合导线平差程序设计报告
附合导线平差程序设计报告 本文关键词:导线,程序设计,报告,附合
附合导线平差程序设计报告 本文简介:地图学课程设计报告《测量平差程序》课程设计(报告)学生姓名:罗正材学号:1108030128专业:2011级测绘工程指导教师:肖东升目录一、前言…………………………………………………………3二、平差程序的基本要求………………………………………3三、平差程序模块化……………………………………………3四
附合导线平差程序设计报告 本文内容:
地图学课程设计报告
《测量平差程序》课程设计
(报告)
学生姓名:罗正材
学
号:1108030128
专
业:2011级测绘工程
指导教师:肖
东
升
目录
一、前言…………………………………………………………3
二、平差程序的基本要求………………………………………3
三、平差程序模块化……………………………………………3
四、平差中的重要函数…………………………………………4
五、结论…………………………………………………………7
六、部分源代码…………………………………………………7
一、前言
随着测绘科学技术的不断发展,在测量数据的处理中产生很多种平差的方法。在本文中,附合导线近似平差程序是利用C++编程实现的,我们需要将导线网的已知数据信息按照特定的规则输入到.txt文本中,利用C++程序读取文本数据信息后,对其进行一系列的平差计算,最终获得平差后的结果,并以.txt文本的形式输出且保存,这样就可为测量工作提供一定的参考,还能为测绘数据的管理带来帮助。
二、平差程序的基本要求
平差程序设计与其它程序设计相同,应当满足一定的要求。
(1)程序逻辑结构简单,清晰易读,符合结构化程序设计要求,便于扩展;
(2)运算速度快,占用内存小,内外存之间的交换不宜过于频繁;
(3)数学模型及计算方法正确、先进,计算结果精度高;
(4)适应性强,便于移植,充分考虑各种可能形式,尽量满足不同要求与需要;
(5)方便用户,操作简便。数据输入与用户作业方式与习惯相统一,输出明了、齐全;尽量减少手工处理工作量,操作简便;人机交互性要强。
上述要求,既体现在平差程序的总体设计中,也贯穿于平差程序设计的各个环节中。
三、平差程序模块化
图1
四、平差中的重要函数
(一)、角度制与弧度制的相互转化
C/C++程序设计中,关于角度的计算以弧度制为单位,而在测量以及具体工作中我们通常习惯以角度制为单位。这样,在数据处理中,经常需要在角度制与弧度制之间进行相互转化。这里,我们利用C/C++数学函数库math.h中的相关函数完成这两种功能。
这里,我们使用double类型数据表示角度制数和弧度制数。例如:123度44分58.445秒,用double类型表示为123.4458445,其中分、秒根据小数位确定。
在角度制与弧度制的转化中,涉及如下图2所示的两个环节。
度.分秒
度
弧度
图2
1.角度化弧度函数
double
d_h(double
angle)
//角度化弧度
{
double
a,b;
angle=modf(angle,//a
为提取的度值(int类型),angle为分秒值(小数)
angle=modf(angle*100.0,//
b为提取的分值(int类型),angle为秒值(小数)
return
(a+b/60.0+angle/36.0)*(PI+3.0E-16)/180.0;
}
2.弧度化角度函数
double
h_d(double
angle)
//弧度化角度
{
double
a,b,c;
angle=modf(angle*180.0/(PI-3.0E-16),angle=modf(angle*60.0,angle=modf(angle*60.0,return
a+b*0.01+c*0.0001+angle*0.0001;
}
其中,函数modf(angle,double
s;
f
=
dms>=0
?
1
:
-1;
//0.001秒
=
4.8481368110953599358991410235795e-9弧度
dms
+=
f
0.0000001;
d
=
(int)dms;
dms
=
(dms
-
d)
100.0;
m
=
(int)dms;
s
=
(dms
-
m)
100.0;
return
(d
+
m
/
60.0
+
s
/
3600.0)
_TORAD
-
f
4.8481368110953599358991410235795e-9;
}
//弧度转“度分秒”
double
RADtoDMS(double
rad)
{
int
f
=
rad
>=
0
?
1
:
-1;
//
符号
+
-
//加0.001秒(用弧度表示),化为度
rad
=
(rad
+
f
4.8481368110953599358991410235795e-9)
_TODEG;
int
d
=
(int)rad;
rad
=
(rad
-
d)
60.0;
int
m
=
(int)rad;
double
s
=
(rad
-
m)
60.0;
return
d
+
m
/
100.0
+
s
/
10000.0
-
f
0.0000001;
}
//读入已知点的坐标
void
ReadKnwData(FILE
in,DyArray
array)
{
char
buffer[256];
double
dx,dy;
SurPnt
pnt;
while
(
!feof(in)
)
{
fgets(buffer,sizeof(buffer),in);
if
(
sscanf(buffer,“%s
%lf
%lf“,pnt.name,}
else
break;
}
dx
=
array->elem[1].x
-
array->elem[0].x;
dy
=
array->elem[1].y
-
array->elem[0].y;
adj.azi0=atan2(dy,dx)
+
(dy
elem[3].x
-
array->elem[2].x;
dy
=
array->elem[3].y
-
array->elem[2].y;
adj.azin=atan2(dy,dx)
+
(dy
elem[1].x;
adj.y1=array->elem[1].y;
adj.xn=array->elem[2].x;
adj.yn=array->elem[2].y;
Destroy(array);//
}
//观测值信息写到动态数组
void
ReadObsValue(FILE
in,DyArray
array)
{
char
buffer[256];
double
dir0,dir1,dist0,dist1;
SurPnt
pnt;//用于临时保存点的坐标
while
(
!feof(in)
)
{
fgets(buffer,sizeof(buffer),in);
if(
feof(in)
)
return;
if(sscanf(buffer,“%s
%s
%lf
%lf
%s
%lf
%lf“,pnt.name,pnt.dir0.name,pnt.dir0.dist=dist0;
pnt.dir1.dv=DMStoRAD(dir1);
pnt.dir1.dist=dist1;
pnt.b=pnt.dir1.dv-pnt.dir0.dv+(pnt.dir1.dv-pnt.dir0.dvlength;
i++)
{
sumb+=array->elem[i].b;
}
adj.fb=adj.azi0+sumb-_PI*array->length-adj.azin;
adj.v=-adj.fb/array->length;
adj.fb=adj.fb/_PI*180*3600;
adj.fr=2*8*sqrt(array->length);
if
(abs(adj.fb)
>=
adj.fr)
strcpy(adj.judge,“方位角闭合差超限了!“);
else
strcpy(adj.judge,“方位角闭合差没超限“);
}
//角度改正
void
CorrectAngle(DyArray
array)
{
for
(int
i=0;
ilength;
i++)
{
array->elem[i].b+=adj.v;
}
adj.v=adj.v/_PI*180*3600;
}
//推算方位角
void
Direct(DyArray
array)
{
SurPnt
pnt;
//第一个未知边
pnt.dir1.alfa=adj.azi0+array->elem[0].b-_PI;
pnt.dir1.dist=(array->elem[0].dir1.dist+array->elem[1].dir0.dist)/2;
pnt.dir1.dx=pnt.dir1.dist*cos(pnt.dir1.alfa);
pnt.dir1.dy=pnt.dir1.dist*sin(pnt.dir1.alfa);
AddDir(array,pnt,0);
for(int
i=1;ilength-1;i++)
{
pnt.dir1.alfa=array->elem[i-1].dir1.alfa+array->elem[i].b-_PI;
pnt.dir1.dist=(array->elem[i].dir1.dist+array->elem[i+1].dir0.dist)/2;
pnt.dir1.dx=pnt.dir1.dist*cos(pnt.dir1.alfa);
pnt.dir1.dy=pnt.dir1.dist*sin(pnt.dir1.alfa);
AddDir(array,pnt,i);
}
for(i=0;ilength-1;i++)
{
array->elem[i].dir1.alfa=RADtoDMS(array->elem[i].dir1.alfa);//alfa转为角度
}
}
//坐标增量改正
void
CorrectDirect(DyArray
array)
{
double
sumx=0.0;
double
sumy=0.0;
double
sums=0.0;
for(int
i=0;ilength-1;i++)
{
sumx+=array->elem[i].dir1.dx;
sumy+=array->elem[i].dir1.dy;
sums+=array->elem[i].dir1.dist;
}
adj.fx=adj.x1+sumx-adj.xn;
adj.fy=adj.y1+sumy-adj.yn;
adj.fs=sqrt(adj.fx*adj.fx+adj.fy*adj.fy);
adj.f=int(sums/adj.fs);//导线全长相对闭合差分母
for(
i=0;ilength-1;i++)
{
array->elem[i].dir1.dx-=adj.fx*array->elem[i].dir1.dist/sums;//坐标增量改正
array->elem[i].dir1.dy-=adj.fy*array->elem[i].dir1.dist/sums;
}
}
//解算近似平差坐标
void
Coordinate(DyArray
array)
{
SurPnt
pnt;
array->elem[0].x=adj.x1;
array->elem[0].y=adj.y1;
for(int
i=0;ilength-2;i++)
{
//strcpy(pnt.name,array->elem[i+1].name);
pnt.x=array->elem[i].x+array->elem[i].dir1.dx;//
pnt.y=array->elem[i].y+array->elem[i].dir1.dy;
AddCor(array,pnt,i+1);
}
}
//输出
void
Print(DyArray
array,FILE
out)
{
double
d,m,s;
fprintf(out,“方位角闭合差fb=%.0lf秒
%s
角度改正v=%.0lf秒/n“,adj.fb,adj.judge,adj.v);
fprintf(out,“坐标增量闭合差
fx=%.0lfmm
fy=%.0lfmm
fs=%.0lfmm/n“,adj.fx*1000,adj.fy*1000,adj.fs*1000);
fprintf(out,“导线全长相对闭合差
fs/∑S=1/%d/n/n“,adj.f);
fprintf(out,“坐标方位角/n“);
for
(int
i=0;
ilength-1;
i++)
{
d=array->elem[i].dir1.alfa;
m=(d-(int)d)*100;
s=(m-(int)m)*100;
fprintf(out,“α%s-%s=%.0lf°%.0lf′%.0lf″/n“,array->elem[i].name,array->elem[i+1].name,d,m,s);
}
fprintf(out,“/n近似平差坐标/n“);
for
(i=1;
ilength-1;
i++)
{
fprintf(out,“%s
x=%.3lfm
y=%.3lfm/n“,array->elem[i].name,array->elem[i].x,array->elem[i].y);
}
}
int
main(int
argc,char*
argv[])
{
DyArray
pnts;
Init(
char
infile[255],outfile[255];
if
(argc
<
2)
{
printf(“Enter
infile
name:/n“);
scanf(“%s“,infile);
}
else
strcpy(infile,argv[1]);
FILE
in
=
fopen(infile,“r“);
if(in
==
NULL)
{
printf(“File
%s
cann
t
open!“,infile);
return
-1;
}
if
(argc
<
3)
{
printf(“Enter
outfile
name:/n“);
scanf(“%s“,outfile);
}
else
strcpy(outfile,argv[2]);
FILE
out
=
fopen(outfile,“w“);
if(out
==
NULL)
{
printf(“File
%s
cann
t
open!“,outfile);
return
-1;
}
//读入已知点的坐标
ReadKnwData(in,Init(
//观测值信息写到动态数组
ReadObsValue(in,//求角度闭合差fb
Fb(
//角度改正
CorrectAngle(
//推算方位角
Direct(
//坐标增量改正
CorrectDirect(
//解算近似平差坐标
Coordinate(
fclose(in);
//输出
Print(
fclose(out);
Destroy(
return
0;
}
14
篇3:里仁多核程序设计实验报告
里仁多核程序设计实验报告 本文关键词:多核,程序设计,实验,报告
里仁多核程序设计实验报告 本文简介:多核程序设计实验报告Multi-coreProgrammingExperimentReport学生所在学院:里仁学院学生所在班级:学生姓名:学生学号:指导教师:教务处2014年4月实验一Windows多线程编程模块一:基础练习一.实验目的与要求二.实验环境及软件三.实验内容四.实验代码·#inclu
里仁多核程序设计实验报告 本文内容:
多核程序设计实验报告
Multi-core
Programming
Experiment
Report
学生所在学院:
里仁学院
学生所在班级:
学
生
姓
名
:
学
生
学
号
:
指
导
教
师
:
教
务
处
2014年
4
月
实验一
Windows多线程编程
模块一:基础练习
一.
实验目的与要求
二.
实验环境及软件
三.
实验内容
四.
实验代码
·
#include
·
#include
·
#include
·
#include
·
void
test(int
n)
·
{
·
for
(int
i
=
0;
i
#include
#include
#define
NN
2000
int
A[NN][NN],B[NN][NN];
long
long
C[NN][NN];
void
solve(int
n,int
num_thread){
int
i,j,t,k,paralleltime,serialtime;
clock_t
startTime,endTime;
long
long
sum;
omp_set_num_threads(num_thread);
//--------------对矩阵A和矩阵B进行初始化-------------
for
(i
=
0;
i
#include
#include
#include
using
namespace
std;
static
long
num_steps=1000000000;//定义所分的块数
#define
NUM_THREADS
2
//定义所开启的线程数
int
_tmain(int
argc,_TCHAR*
argv[])
{
int
i;
omp_set_num_threads(NUM_THREADS);//开启线程
double
x,sum=0.0,pi;
clock_t
start_time,end_time;
double
step=1.0/(double)num_steps;
//并行--------------------------------------
start_time=clock();
#pragma
omp
parallel
sections
reduction(+:sum)
private(x,i)
{
#pragma
omp
section
{
for
(i=omp_get_thread_num();i
#include
#include
#include
#include
“omp.h“using
namespace
std;
//int
count=0;
void
swap(int
tmp
=
a;
a
=
b;
b
=
tmp;
}
void
quicksort(intA,int
l,int
u)
{
int
i,m,k;
if
(l
>=
u)
return;
m
=
l;
for
(i
=
l
+
1;
i
<=
u;
i++)
if
(A[i]
<
A[l])
/*不管是选第一个元素作为pivot还是最后一个作为pivot,假如我们想得到的是从小到大的序列,那么最坏的输入情况就是从大到小的;如果我们想得到从大到小的序列,那个最坏的输入情况就是从小到大的序列*/
swap(A[++m],A[i]);
swap(A[l],A[m]);
quicksort(A,l,m
-
1);
quicksort(A,m
+
1,u);
}
void
main(int
argc,charargv)
{
omp_set_num_threads(2);//----------------设置线程数为2,因为是双核的CPU
int
k
=
0,i
=
0;
int
m
=
0,n
=
0;
double
cost
=
0;
int
len
=
10000;
int
short_len
=
len
/
2;
int
B[10000],C[10000],D[5000],E[5000];//--------将B[]分为两个小的数组,并行的对他们调用快速排序算法
#pragma
omp
parallel
default(none)
shared(B,C,len)
private(i)//---这个for循环是并行的
{
int
j
=
50000;
#pragma
omp
for
for
(i
=
0;
i i++) { B[i] = j--; C[i] = j--; //初始化B[],C[]数组 } } clock_t begin = clock();//----------------计时开始点 #pragma omp parallel default(none) shared(B,D,E,short_len) private(i)//---这个for循环是并行的 { #pragma omp for for (i = 0; i i++)//---这个for循环是并行的 { D[i] = B[i];//将B[]的前5000个数放入D[] E[i] = B[i + 5000];//将B[]的后5000个数放入E[] } } #pragma omp parallel default(none) shared(E,D,short_len) //private(i)------快速排序的并行region { #pragma omp parallel sections { #pragma omp section quicksort(D,0,short_len - 1);//对D[]排序 #pragma omp section quicksort(E,0,short_len - 1);//对E[]排序 } } for (; k k++)//----------将D[]和E[]进行归并排序放入B[]里面 { if (m n++; } else { B[k] = E[m]; m++; } } if (m == short_len || n == short_len) { if (m == short_len) B[k] = E[m]; else B[k] = D[n - 1]; k += 1; break; } } if (/*m==short_len for (int p = 0; p p++) { B[k] = D[n]; n++; k++; } } else if (/*n==short_len for (int q = 0; q q++) { B[k] = E[m]; m++; k++; } }//----------------------------归并算法结束 clock_t end = clock();//----------------计时结束点 cost = (double)(end - begin); cout << “并行时间“<< cost << endl; //串行开始 begin = clock(); quicksort(C,0,len - 1); end = clock(); cost = (double)(end - begin); cout << “串行时间“<< cost << endl; system(“pause“); 实验结果: 封面设计: 贾丽 地 址:中国河北省秦皇岛市河北大街438号 邮 编:066004 电 话:0335-8057068 传 真:0335-8057068 网 址:http://jwc.ysu.edu.cn - 10 -