预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2020年北航计软实验报告一--计算机软件基础上机实验报告(一)XXXXXX班XXX实验目的掌握线性表在顺序分配下的插入与删除运算;掌握线性表的链式存储结构;掌握插入排序的方法;并掌握一种产生随机数的方法。实验内容1.产生1000个0至999间的随机整数并以产生的次序存入一个数据文件中。2.编制一个程序依次实现以下功能(1)定义一个有序(非递减)线性表其最大容量为1000初始时为空。(2)从由1产生的数据文件中依次取前N个随机整数陆续插入到此线性表中并要求在每次插入后保持线性表的有序性。最后将此有序线性表打印输出。(3)在由(2)产生的线性表中依在1中产生的次序逐个将元素删除直至表空为止。3.以N=100及N=400分别运行2的程序并比较它们的运行时间。4.编写一个程序用插入排序依次将1中产生的1000个随机整数链接成有序链表(不改变原随机数在存储空间中的顺序)。源代码与运行结果#include<stdio.h>#include<stdlib.h>#include<time.h>main(){FILE*fo=fopen("1_txt""w");intij;srand((unsigned)time(0));for(i=0;i<=999;i++)fprintf(fo"%d\n"rand()%1000);fclose(fo);printf("1000个随机数已输出至目录下1_txt文件\n");system("pause");}输出文件1_txt如下(因输出文本长度缘故此处只截了一幅图)#include<stdio.h>#include<stdlib.h>#include<time.h>2020年北航计软实验报告一--2020年北航计软实验报告一--#defineN1000main(){inta[N]={0};intijmwnum=0;FILE*fi=fopen("1_txt""r");clock_tstartfinish;doubleduration;//Part1start=clock();m=0;fscanf(fi"%d"&num);a[0]=num;w=m;for(j=1;j<=N-1;j++){w=m;fscanf(fi"%d"&num);while((a[w]>num)&&(w>=0))w--;w++;for(i=m;i>=w;i--)a[i+1]=a[i];a[w]=num;m++;2020年北航计软实验报告一--2020年北航计软实验报告一--}finish=clock();duration=(double)(finish-start)/CLOCKS_PER_SEC;printf("执行%d个数据插入操作完成!用时%f秒得到线性表如下\n"m+1duration);for(i=0;i<N;i++)printf("%d"a[i]);f