Informatică, întrebare adresată de Andreea14123, 8 ani în urmă

Să se scrie o aplicaţie C în care se generează aleator 20 de numere întregi cu valori mai mici
decât 50 (Folositi srand(), rand() si operatorul %). Să se scrie o funcţie care elimină din tabloul
unidimensional creat numerele impare, returnand noul tablou. Funcţia va utiliza pointeri. Afişati în
main( ) tabloul iniţial şi cel obţinut după eliminarea elementelor impare.

Răspunsuri la întrebare

Răspuns de user85794336
1

Cod:

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

void eliminare_impare(int *tablou, int *lungime)

{

int i, j;

for (i = 0, j = 0; i < *lungime; i++)

{

if (tablou[i] % 2 == 0)

{

tablou[j] = tablou[i];

j++;

}

}

*lungime = j;

}

int main(void)

{

int tablou[20], i, lungime = 20;

srand(time(NULL));

printf("Tabloul initial:\n");

for (i = 0; i < lungime; i++)

{

tablou[i] = rand() % 50;

printf("%d ", tablou[i]);

}

eliminare_impare(tablou, &lungime);

printf("\n\nTabloul dupa eliminarea numerelor impare:\n");

for (i = 0; i < lungime; i++)

printf("%d ", tablou[i]);

return 0;

}

Output :

Tabloul initial:

16 38 47 45 30 46 44 1 24 2 46 37 45 36 14 24 37 32 1 9

Tabloul dupa eliminarea numerelor impare:

16 38 30 46 44 24 2 46 36 14 24 32

Am folosit un compiler online de C


Andreea14123: Mulțumesc mult!
Alte întrebări interesante