【题目描述】
编写函数void split(int *a,int n,int *odd,int *cnto,int *even,int *cnte),功能是将a数组中的奇数存入odd数组,数量存入cnto,偶数存入even,数量存入cnte。其中n是a数组的元素个数。在主函数中调用函数。
【输入说明】
输入包含2行,第一行1个数字,分别表示n(n小于100)。第二行有n个数字,是数组a的元素值。
【输出说明】
输出包含两行数据,第一行cnto个奇数。第二行cnte个偶数。每个数字之间用一个半角空格间隔。若没有则不用输出。
【输入样例】
5
1 2 3 4 5
【输出样例】
1 3 5
2 4
代码实现
#include <stdio.h>
void split(int *a,int n,int *odd,int *cnto,int *even,int *cnte)
{
int i;
for(i=0;i<n;i++)
{
if(a[i]==0||a[i]%2==0)
{
even[*cnte]=a[i];
(*cnte)++;
}
else
{
odd[*cnto]=a[i];
(*cnto)++;
}
}
}
int main()
{
int n,i,odd[200],cnto=0,a[200],even[200],cnte=0;
scanf("%d",&n);
for(i=0;i<n;i++)scanf("%d",&a[i]);
split(a,n,odd,&cnto,even,&cnte);
for(i=0;i<cnto;i++)printf("%d ",odd[i]);
printf("\n");
for(i=0;i<cnte;i++)printf("%d ",even[i]);
return(0);
}