编写函数删除数组参数指定的元素,函数的原型为:
void deldata (int a[], int *num, int n) ;
其中a为数组,num为数组元素个数的指针,n为要删除的数。
最后编写主函数来输入和输出数组a。
例如:数组中有10个元素,输入为1,2,4,2,7,9,0,2,5, n的值为2,删除后输出数组元素应该为1,3,4,7,9,0,5。
编写函数删除数组参数指定的元素,函数的原型为:
void deldata (int a[], int *num, int n) ;
其中a为数组,num为数组元素个数的指针,n为要删除的数。
最后编写主函数来输入和输出数组a。
例如:数组中有10个元素,输入为1,2,4,2,7,9,0,2,5, n的值为2,删除后输出数组元素应该为1,3,4,7,9,0,5。
// ConsoleApplication9.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include <iostream>
#include <malloc.h>
void deldata(int a[], int* num, int n) {
int* tmp = (int*)malloc(sizeof(int) * (*num - 1));
int count = 0;
*num=*num-1;
for (int i = 0; i < *num+1; i++)
{
if (a[i]!=n)
{
*(tmp + count) = a[i];
count++;
//printf("%d", i);
}
}
a = tmp;
}
int main()
{
int k = 10;
int a[] = { 1,2,3,4,2,7,9,0,2,5 };
deldata(a, &k, 2);
for (int i = 0; i < k; i++)
{
printf("%d", a[i]);
}
}