身处在瞬息万变的社会中,应该求创新,加强能力,居安思危,无论你发展得多好,时刻都要做好预备.钱
实验七 数组做为函数参数
[实验目的] 掌握用数组做为参数函数的定义与使用
[实验内容]
1. 编写一个函数
删除数组中的第i个元素
i的值由用户给定
实验步骤与要求:
(1) 编写一个函数Delarray(int a[]
int n
int i)
返回删除元素i后的数组
(2) 编写一个主函数
输入一个数组及要删除的元素位置i
调用函数Delarray后
打印输出结果
2. 编写一个函数
删除数组中的重复元素
实验步骤与要求:
(1) 编写一个函数Deldup(int a[]
int n)
返回删除重复元素后的数组
(2) 编写一个主函数
输入一个数组
调用函数Deldup后
打印输出结果
选做题:
在数组中查找值为X的元素是否存在
实验步骤与要求:
(1) 编写一个函数search(int a[]
int n
int x)
(2) 编写一主函数
输入一个数组及待查找的元素X
调用函数search后打印输出结果
如果存在
打印它在数据中的位置
否则提示该数据不存在
源程序:
#include
void Delarray(int a[]
int n
int i)
{
int j;
for(j=i;j
}
main()
{int i
a[5]={1
2
3
4
5};
scanf("%d"
&i);
Delarray(a
5
i);
for(i=0;i<4;i++)
printf(" %5d "
a[i]);
printf("\n");
}
源程序1:
#include
int deldup(int a[]
int n)
{
int i
j
k;
for(i=0;i
{
for(k=j;k
n--;
j--;
}
return n;
}
void main()
{
int a[10];
int i
n;
for(i=0;i<10;i++)
scanf("%d"
&a[i]);
n=deldup(a
10);
for(i=0;i
a[i]);
printf("\n");
}
源程序2
#include
int search(int a[]
int n
int x)
{
int i;
for(i=0;i
return -1;
}
void main()
{
int a[10];
int i
x
n;
for(i=0;i<10;i++)
scanf("%d"
&a[i]);
scanf("%d"
&x);
n=search(a
10
x);
if (n==-1) printf("not found!\n");
else printf(" %d is NO.%d element of array a!\n"
x
n);
}