软件技术基础实验指导书()研究报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件技术基础 实验指导书 2014年9月1日 目 录 实验一实验一Long Fib-rec(int n) { if(n==0||n==1)return(1); else return(Fib-rec(n-1) + Fib-rec(n-2) ); } long Fib-ite(int n) { long fib1,fib2,fib; int i; fib1=1; fib2=1; for (i=3;i=n,i + + ) {fib=fib1+fib2; fib1=fib2; fib2=fib; } return fib; } void main ( ) { clock-t us1, us2; int n; printf(“请输入n:\n”); scanf(“%d,n); us1=clock( ); printf(“递归函数计算结果:%1d\n”,Fib-rec(n) ); us2=clock( ); printf(“递归函数执行时间%1d毫秒\n”,us2-us1); us1=clock( ); printf(“非递归函数计算结果:%1d\n”,Fib-ite(n) ); us2=clock( ); printf(非递归函数执行时间%1d毫秒\n”,us2-us1); } 实验二 顺序表的实现与应用 实验目的: 掌握线性表的概念。 熟练掌握线性表的顺序存储结构。 熟练掌握线性表在顺序存储结构上的运算。 了解测试的思想。 实验环境(硬/软件要求): Windows 2000,Visual C++6.0 实验内容: 编写算法实现顺序表中元素的逆置。要求按用户输入的数据建立一个顺序表。在逆置的过程中使用最少的辅助存储单元。 测试数据为:10,9,8,7,6,5,4,3,2,1。 编写算法,在非递减有序的顺序表中,插入一个给定的元素,插入后该顺序表仍然递增有序。 有序表中的数据为:12,16,24,33,45,66,68,89;需要进行测试的插入数据分别是:9,13,25,33,88,91 实验要求: 完成顺序表的结构定义。 完成顺序表的就地逆置函数和主函数。 完成在非递减有序表中的插入数据的函数和主函数。 【C语言源程序】 #include stdio.h #define maxsize 1024 typedef int datatype;/*datatype可为任何类型,这里假设为int*/ /*线性表可能的最大长度,这里假设为1024*/ typedef struct { datatype data[maxsize]; Int length; } sequenlist; void setNull(sequenlist *L) /*顺序表的就地逆置*/ { L-length=0; } void reverse(sequenlist *L) { int i,j; datatype t; for(i=0,j=L-length-1;ij;i++,j--) { t=L-data[i];L-data[i]=L-data[j];L-data[j]=t; } } void insert(sequenlist *L,int x) /*x插入到递增有序的顺序表L中*/ { int i,k; i=0; while((i=L-length-1)(x=L-data[i])) i++;/*找正确的插入位置*/ for(k=L-length-1;k=i;k- -) L-data[k+1]=L-data[k]; /*元素从后往前依次后移*/ L-data[i]=x;/*x插入到正确的位置*/ L-length ++; } void main( ) { sequenlist L1,L2; int i,x; datatype data; /*测试顺序表的逆置函数*/

文档评论(0)

阿里山的姑娘 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档