Visualizzazione dei risultati da 1 a 8 su 8

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2014
    residenza
    Parma
    Messaggi
    7

    FUNZIONI E PASSAGGIO array di struct COME PARAMETRI C++!!

    salve a tutti.. devo creare una funzione "restringi()" che prenda come parametri:
    - un array R di struct P (dove definisco struct P con due campi, c1=int e c2=array di char)
    - un array A di tipo int
    - un array S di tipo struct P, contenente le struct di R, dove sono contenuti elementi in comune fra R[].c1 A[]
    e poi stampi S ed il numero di elementi di S..
    esempio stupido
    R={19, "aaa", 20, "bbb", 21, "ccc"}
    A={19, 21}
    stampa S= 19 aaa
    21 ccc

    la funzione devo poi inserirla in un "main di prova" dove i dati vengono definiti dall'utente..
    come devo fare? NON RIESCO A PASSARE I PARAMETRI ALLA FUNZIONE..
    ho azzardato questo.. ma non funziona.. qualcuno puo dirmi cosa sbaglio? (per favore no puntatori)

    codice:
    #include <iostream>
    #include <cstring>
    using namespace std;
    
    
    struct P        //dichiaro il tipo P
        {
      int c1;
      char c2[80];
    }; 
    
        struct P R[4];        
        struct P S[4]; 
        int m, n, x;// dim R, dim A, dim elementi S (Condivisi)
        int r, a, s;// indici di R, A ed S
        int A[4];
    
    int restringi(struct P, P R[], int A[], int n, int m, P S[])
    {
       for(r=0; r<=m; r++)
       {        
          for(a=0; a<=n; a++)
           {
               if (A[a]==R[r].c1)
               {
                  S[s].c1=A[a];
                  stricmp(S[s].c2, R[r].c2);
                  x++;                
               }
                
            }
            
         }
       
       return x;
    }
        
    int main()
    {
      int m, n, x;// dim R, dim A, dim elementi S (Condivisi)
      int r, a, s;
      struct P        //dichiaro il tipo P
      {
        int c1;
        char c2[80];
      };
      struct P R1[m]; 
      struct P S1[x];
      int A1[n];
        
      cout<<"programma di prova.."<<endl;
      cout<<"inserisci il numero di elementi R:"<<endl;
      cin>>m;
      r=0;
      for (r=0; r<m; r++)
      {                                      
          cout<<"Inserisci il "<<r+1<<" elemento numerico "<<endl;
          cin>>R1[r].c1;                                            
      }                                                                
      r=0;                                                
      for (r=0; r<m; r++)
      {                                        
         cout<<"Inserisci il "<<r+1<<" elemento alfanumerico "<<endl;
         cin>>R1[r].c2;                                    
      }                                                                 
        
        cout<<"inserisci il numero di elementi A:"<<endl;
        cin>>n;
        a=0;
        for (a=0; a<n; a++)
      {
         cout<<"Inserisci il "<<r+1<<" elemento di A "<<endl; 
         cin>>A1[a]; 
       } 
        
     x = restringi (P R1[ ] , int A1 [ ], int n, int m, P S1 [ ]);
    
           cout<<"il numero di elementi di S è: " <<x;
           cout<<"gli elementi di S sono: "; // nn posso continuare la funzione non va!!
    
    return 0;
    }
    Ultima modifica di LeleFT; 13-05-2015 a 16:28 Motivo: Aggiunti i tag CODE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.