Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Ίσως ο τίτλος να μην ανταποκρίνεται επακριβώς σε αυτό που ψάχνω αλλά δεν ήξερα πως αλλιώς να το πω. Έχω το παρακάτω πρόγραμμα  

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

 

void main ()

{

    int i,n;

    int *data;

    printf ("Dose to mikos pinaka");

    scanf("%d",&n);

 

    data = (int*) malloc (n*sizeof (int));

    if (data!=NULL)

    {

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

        {

            printf("Dose aseraio");

            scanf("%d",&data);

        }

    //    printf("\n");

     //   for (i=0; i<n; i++)

     //   {

        //    printf(" o %dos akeraios einai o: %d\n", i+1,data);

       // }

        free (data);

    }

    else

        printf("\n O apaitoumenos xwros den mporei na desmeutei..");

}

Είναι ένας τρόπος για να δημιουργήσω ένα δυναμικό πίνακα, αυτά που είναι μετά από τα δύο \\ τα έβαλα σε σχόλιο γιατί για την ώρα δεν θέλω να δουλέψουν. Θέλω να  βρω τρόπο ώστε να αντιστοιχήσω κάθε ένα από τα περιεχόμενα του πίνακα με κάποιον κωδικό αριθμό, και όταν ζητάω τον κωδικό π.χ 140 να μου εμφανίζει το περιεχόμενο του πίνακα με τον κωδικό 140, αυτό μπορεί να βρίσκετε στην 2η θέση του πίνακα δλδ μπορεί να είναι το τρίτο στοιχείο του πίνακα.  :cry: :mad:

Δημοσ.

Το πιο απλό και εντελώς inefficient δυστυχώς είναι να κάνεις ενα struct το οποίο θα κρατάει ένα id και το data σου. Μετά θα κάνεις ένα array of structs και θα αναζητάς σε κάθε θέση του πίνακα να κοιτάξει αν υπάρχει το id που θέλεις. 

Σίγουρα δεν είναι ότι καλύτερο αλλά θέλεις άλλες δομές για να είναι πιο efficient η αναζήτηση. Αν χρειάζεσαι κατι καλύτερο το συζητάμε.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...