Zdravím vás,
mám menší problém u pole. Potřebuju napsat program, kde funkce vyhledá první sudé číslo v dynamickém 10prvkovém poli, následně ho odstraní, prvky přepíše a pole zmenší na 9 prvků.
Mám tohle:
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#define N 10
int _tmain(int argc, _TCHAR* argv[])
{
unsigned int *a;
unsigned int *za;
int i;
int prvek;
a = (unsigned int *)malloc(sizeof(unsigned int)*N);
printf("Nacti deset cisel:\n", i);
for(i=0; i<N; i++){
scanf("%d", &a[i]);
}
for(i=0; i<N; i++) printf("%d", a[i]);
for(i=0; i<N; i++){
if (a[i]%2 == 0){
prvek = a[i];
for (i=prvek; prvek<N-1; i++){
a[i] = a[i+1];
}
}
za = (unsigned int *)malloc(sizeof(unsigned int)*9);
za = a;
printf ("%d", za[i]);
free(a);
a = NULL;
}
system("PAUSE");
return 0;
}
Program mi vyhodí nějakou šílenou chybu u if (a[i]%2 == 0).
Díky předem za jakékoliv rady.