实验6 数组一
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验6 数组(一)
【实验目的】
(1) 掌握一维数组和二维数组的定义、赋值和输入输出的方法。
(2) 掌握与数组有关的算法。
【实验内容】
1. 程序分析
(1) 分析下面的程序,描述程序的功能并给出程序的运行结果。
#include
#define N 7
int main()
{
int arr[N]={0,2,4,6,8,10,12},i,t;
for(i=0;i {t=arr[i];arr[i]=arr[N-i-1];arr[N-i-1]=t;} for(i=0;i return 0; } (2) 分析下面的程序,描述程序的功能并给出程序的运行结果。 #include int main() { int arr[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}}; int i,sum=0; for(i=0;i<4;i++) sum+=arr[i][i]; printf("%d\n",sum); return 0; } 2. 程序改错 (1) 以下程序用于求一个数组中的最大值和最小值。程序中有几处错误,试找出它们后加以修改,并上机验证修改结果。 #include int main() { int i,N=10; double arr[N],max,min; for(i=0;i scanf("%lf",arr[i]); max=min=arr[0]; for(i=1;i if(arr[i]>max) max=arr[i]; else min=arr[i]; printf("max=%f,min=%f\n",max,min); return 0; } 3. 程序设计 (1) 学校举办演讲比赛,n个学生参加比赛,8个评委打分。参赛选手的最终得分计算方法为:去除一个最高分和一个最低分后所得的平均分。 【要求】 - 求每位选手的比赛成绩。 - 对比赛结果进行排序 (2) 在下面的5×5魔方矩阵中,每一行、每一列、每一对角线上的元素之和都是相等的,试编写程序将这些魔方矩阵中的元素读到一个二维整型数组中,然后,检验其是否为魔方矩阵,并将其按如下格式显示到屏幕上。 17241815 23571416 46132022 101219213 11182529