我必须执行以下操作:
给定一个带有随机数的向量,将其分成 2 个其他向量,奇数和偶数。但在函数中,所有向量都必须通过参数传递(不能使用全局)。这是我的代码:
#include <stdio.h>
#include <stdlib.h>
void vetores(int *vetor, int *A, int *B)
{
int i = 0,aux;
for(i = 0;i < 100; i++)
{
if(vetor[i] % 2 == 0)
{
aux = vetor[i];
A[i] = aux;
}else{
aux = vetor[i];
B[i] = aux;
}
}
}
int main()
{
int vetor[101], a[51], b[51],i;
/*a = (int)malloc(sizeof(int)*51);
b = (int)malloc(sizeof(int)*51);*/
for(i = 0; i < 100; i++)
{
vetor[i] = i;
}
vetores(vetor,a,b);
for(i = 0; i < 50; i++)
{
if(vetor[i] % 2 == 0)
{
printf("%d",a[i]);
}else
{
printf("%d",b[i]);
}
}
return 0;
}
如果您测试该代码,则向量正在被更改(它不应该)并且 A 向量没有收到偶数!