Szukanie elementów dodatnich w tablicy.

0

Program wyświetla błędne wartości. Myślę że błąd jest tutaj:

 
				for(j=0; j<rozmiar; j++)
				{
					tabDodatnie[j] = tab[i];
				}

Nie wiem jak to naprawić. W C# użyłbym list i metody Add i nie było by problemu, ale to jest w C i muszą być tablice.

```c
 
		//Szukamy dodatnich
		for(i=0; i<rozmiar; i++)
		{
			if(tab[i] > 0)
			{
				for(j=0; j<rozmiar; j++)
				{
					tabDodatnie[j] = tab[i];
				}
			}
		}

 
#include <stdio.h>
#include <stdlib.h>
#include <time.h>


int main()
{
	int tabDodatnie[100];
	int tabNieDodatnie[100];
	int tab[100];
	
	int rozmiar;
	int i = 0;
	int j = 0;

	printf("Nie wiecej niz 100! Podaj ile elementow ma miec tablica: ");
	scanf("%d", &rozmiar);
	if(rozmiar>0 && rozmiar<100)
	{
		do
		{
			printf("Podaj %d element tablicy: ", i+1);
			scanf("%d", &tab[i]);
			i++;
		}while(i != rozmiar);

		printf("\nLiczby w twojej tablicy to: ");
		//Szukamy dodatnich
		for(i=0; i<rozmiar; i++)
			printf("%d ", tab[i]);
		
		//Szukamy dodatnich
		for(i=0; i<rozmiar; i++)
		{
			if(tab[i] > 0)
			{
				for(j=0; j<rozmiar; j++)
				{
					tabDodatnie[j] = tab[i];
				}
			}
		}
		//Liczby Dodatnie
		printf("\nLiczby dodatnie w twojej tablicy to: ");
		//Szukamy dodatnich
		for(i=0; i<rozmiar; i++)
			printf("%d ", tabDodatnie[i]);

	}
	else
		printf("Nieprawidlowy rozmiar!");


	//************************************************
	printf("\n");

	printf("\n");
	system("PAUSE");
	return 0;
}
1
int j = 0
for(i=0; i<rozmiar; i++)
    if(tab[i] > 0)
         tabDodatnie[j++] = tab[i];
           

1 użytkowników online, w tym zalogowanych: 0, gości: 1