欢迎来到天天文库
浏览记录
ID:35955838
大小:421.58 KB
页数:13页
时间:2019-04-28
《北航计软实验报告一》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、--WORD格式--可编辑------北航计算机软件基础实验报告计算机软件基础上机实验报告(一)XXXXXX班XXX100211891.实验目的掌握线性表在顺序分配下的插入与删除运算;掌握线性表的链式存储结构;掌握插入排序的方法;并掌握一种产生随机数的方法。2.实验内容1.产生1000个0至999间的随机整数,并以产生的次序存入一个数据文件中。2.编制一个程序,依次实现以下功能:(1)定义一个有序(非递减)线性表,其最大容量为1000,初始时为空。(2)从由1产生的数据文件中依次取前N个随机整数,陆续插入到此线性表中,并要求在每次插入后保
2、持线性表的有序性。最后将此有序线性表打印输出。(3)在由(2)产生的线性表中,依在1中产生的次序逐个将元素删除,直至表空为止。3.以N=100及N=400分别运行2的程序,并比较它们的运行时间。4.编写一个程序,用插入排序依次将1中产生的1000个随机整数链接成有序链表(不改变原随机数在存储空间中的顺序)。3.源代码与运行结果#include#include#include/**1_1产生1000个0至999间的随机整数,并以产生的次序存入一个数据文件(1_1.txt)中。**/mai
3、n(){FILE*fo=fopen("1_1.txt","w");inti,j;--专业资料分享----WORD格式--可编辑------srand((unsigned)time(0));for(i=0;i<=999;i++)fprintf(fo,"%d",rand()%1000);fclose(fo);printf("1000个随机数已输出至目录下1_1.txt文件");--专业资料分享----WORD格式--可编辑------北航计算机软件基础实验报告system("pause");}输出文件1_1.txt如下:(因输出文本长
4、度缘故,此处只截了一幅图)#include#include#include/**1_2从数据文件(1_1.txt)中读取数据,进行插入排序,然后屏幕输出。再依序删除。1_3以N=100及N=400分别运行2的程序,并比较它们的运行时间。**/#defineN1000main(){inta[N]={0};--专业资料分享----WORD格式--可编辑------inti,j,m,w,num=0;FILE*fi=fopen("1_1.txt","r");clock_tstart,finis
5、h;doubleduration;--专业资料分享----WORD格式--可编辑------北航计算机软件基础实验报告//Part1:start=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++;}finish=clock();duration=(double)
6、(finish-start)/CLOCKS_PER_SEC;printf("执行%d个数据插入操作完成!用时:%f秒,得到线性表如下:",m+1,duration);for(i=0;i7、;a[m]=0;m--;}finish=clock();duration=(double)(finish-start)/CLOCKS_PER_SEC;printf("删除操作完成!用时:%f秒,得到线性表如下:",duration);for(i=0;i8、行输出结果如下:(因输出文本长度缘故,此处只截了两幅图)#include#include--专业资料分享----WORD格式--可编辑--------专业
7、;a[m]=0;m--;}finish=clock();duration=(double)(finish-start)/CLOCKS_PER_SEC;printf("删除操作完成!用时:%f秒,得到线性表如下:",duration);for(i=0;i8、行输出结果如下:(因输出文本长度缘故,此处只截了两幅图)#include#include--专业资料分享----WORD格式--可编辑--------专业
8、行输出结果如下:(因输出文本长度缘故,此处只截了两幅图)#include#include--专业资料分享----WORD格式--可编辑--------专业
此文档下载收益归作者所有