还剩1页未读,继续阅读
文本内容:
数组练习
1.编写程序,让用户输入N个数N常量,值为5,存储到数组中,并求这些数的最大值,最后输出数组各元素的值及最大值#include stdio.h#define N5void mainint a[N],i,max;fori=0;i=N-1;i++printf H\nplease inputa[%d]:H J;scanf H%d H,a[i];}max=a
[0];fori=1;i=N-1;i++ifa[i]max max=a[i];fori=0;i=N-1;i++printf”\na[%d]:%cT,i,a[i];printf H\nmax is:%d H,max;}
2.修改以上程序,实现让用户输入N个数N常量,值为5,存储到数组中,并查找数组元素的最大值,将其删除,输出删除操作前数组元素的值及删除操作之后数组元素的值注意删除某一个数组元素,要将后面的数组元素往前移,以保持数组存储数据的连续性include stdio.h#define N5void mainint a[N],i,max,k;/*K记录最大值的位置*/fori=0;i=N-1;i++/*输入数组*/printf\nplease inputa[%d]:H,i;scanf H%d H5a[i];max=a[O];k=0;fori=1;i=N-1;i++/*找最大值及其位置*/ifa[i]maxmax=a[i];k=i;printf H\nmax is:%d n,max;printf H\n删除前数组:;fori=0;iv=N-1;i++/*删除前输出数组*/printf H\na[%d]:%d n5i,a[i];fori=k+1;iv=N-1;i++/*将删除位置后面的元素往前移*/a[i-1]=a[i];printf n\n删除后数组:;fori=0;iv=N-2;i++/*删除后输出数组*/printf H\na[%d]:%d nJ,a[i];
3.修改以上程序,实现让用户输入N;个数(N常量,值为5),存储到数组中,在第二个数组元素之前插入一个值为99的数,输出插入操作前数组元素的值及插入操作之后数组元素的值注意插入某一个数组元素,要将后面的数组元素往后移#include stdio.h#define N5void mainint a[N],i;/*K记录最大值的位置*/fori=0;i=N-2;i++/*输入数组,只输入4个数*/printf\nplease inputa[%d]:,i;scanf%d,a[i];printf\n插入前数组:;fori=0;i=N-l;i++/*插入前输出数组*/printf\na[%d]:%d,i,a[i];fori=N-2;i=l;i-/*将插入位置及后面的元素往后移,注意,后移数据从后往前进行*/a[i+l]=a[i];}a[l]=99;/*插入99*/printf\n插入后数组fori=0;i=N-l;i++/*插入后输出数组*/printf\na[%d]:%dJ,a[i];。