二维数组的实验报告.docVIP

  • 544
  • 0
  • 约4.24千字
  • 约 9页
  • 2018-01-04 发布于河南
  • 举报
二维数组的实验报告

高级语言程序设计实验报告 班级: 0900 姓名: 学号: 09006 课程名称 高级语言程序设计 实验项目 一级指针与一维数组变成及函数编程练习 实验项目类型 验证 演示 综合 设计 指导教师 李养群 成 绩 一、实验目的 (1) 掌握一级指针的定义与使用。 (2)掌握一维数组的定义与使用,理解数组的长度与下标的范围。 (3)正确使用流程控制语句,掌握指针法与下标法访问数组元素的方法。 (4)掌握正确的函数定义,调用,会正确设置形式参数,理解传值与传地址的不同,运用函数实现模块化程序设计。 (5)理解各种不同存储类别的作用域。 (6)进一步熟悉调试器的使用,会利用调试器进行查错改错,会跟踪程序运行的每一步,观察变量的变化情况。 二、实验指导 1.在主函数中定义double array[10],并完成下面操作。从键盘读入10个实数,保存到array数组中,用array[i]或array+i来表示元素地址。打印这10个元素及其对应的地址,通过下标法访问所有的元素,分别找出这组数的最大值,最小值,计算平均值并输出,对这10个数自选某种方法进行由小到大的排序,并输出排序后的结果。 2.在main()中定义一个一维数组,从键盘读入数组元素,定义下列函数并在主函数中对各函数进行调用和测试。各自定义函数原型及功能分别如下: A.打印函数,输出整个数组,数组名array,数组长度length,无返回值。 B.求数组的平均值,数组名array,数组长度length,返回数组的平均值。 C.寻找数组中的最大元素,数组名array,数组长度length,返回数组的最大长度。 D.查找函数,数组名array,数组长度length,待查找的数x,返回数组元素值等于x的元素下标,查找不到则返回-1. E.排序函数,将数组中的元素按从大到小的顺序排列,,数组名array,数组长度length,无返回值。 在实际环境下编写程序的时候,没有必要输完了所有的代码再进行测试,较好的做法是:每编一个函数,就在main()函数中调用该函数进行测试,确认无误后再对另一个函数定义的调用。这样一方面可以保持比较清晰的思路,另一方面也可以在定位错误时缩小查找的范围,从而发挥结构化程序设计的长处。 三、实验过程原始记录(数据、图表、计算等) 1,实验1 (1)使用数组 #includestdio.h int main() { int i,j; double array[10],max,min,sum,average,temp; printf(输入10个实数:\n); for(i=0;i10;i++) scanf(%5lf,array[i]); printf(数组每个实数的值与地址如下:\n); for(i=0;i10;i++) { printf(%5f%15x\n,array[i],array[i]); } max=min=array[0]; sum=array[0]; for(i=1;i10;i++) { sum+=array[i]; if(maxarray[i]) max=array[i]; if(minarray[i]) min=array[i]; } average=sum*1.0/10; printf(数组的最大值与最小值,平均值如下\n); printf(%5f%15f%15f\n,max,min,average); for(i=0;i9;i++) { for(j=i+1;j10;j++) if(array[j]array[i]) { temp=array[i]; array[i]=array[j]; array[j]=temp;} } printf(数组从小到大的排列顺序为:\n); for(i=0;i10;i++) printf(%5g,array[i]); printf(\n); return 0;} 实验结果: (2)使用自定义指针 #includestdio.h int main() { int i,j; double array[10],max,min,sum,average,temp,*p=array; printf(输入10个实数:\n); for(i=0;i10;i++) scanf(%5lf,p[i]); printf(数组每个实数的值与地址如下:\n); for(i=0;i10;i++) { printf(%5f%15x\n,p[i],p[

文档评论(0)

1亿VIP精品文档

相关文档