Aiuto in c

di
Anonimizzato6710
il
5 risposte

Aiuto in c

Ciao volevo sapere come si fa a collegare 2 array, senza che l'indice riparta da 0 ma continui a contare...
ho questi 2 array
char nomi [][24]={"sara","luca","sergio","elena","marco"};
float numeri[]={ 1,2,3,4,5,6,10,12,15,18,19,20,7,9,16};
è necessario che continui a contare quindi che a i =5(che sarebbe l'indice che scorre il vettore) corrisponda 1 del vettore numeri e cosi via...come si fa???
non so proprio come fare...grazie in anticipoooo

5 Risposte

  • Re: Aiuto in c

    Devi usare l'operatore modulo. Esempio:
    
    j=i%5;
    
  • Re: Aiuto in c

    Ma li devi mettere in un vettore nuovo o in uno di quei due?
  • Re: Aiuto in c

    Fatto sta k l'indice è un numero generato casualmente da 1 a 20 e ciascun numero puo essere preso una sola volta...quindi vorrei fare se i=5 la stampa k mi scrive il numero 1 del vettore numeri, i=6 secondo ect...se i=0 il primo nome, se i=1 il secondo e cosi via....
  • Re: Aiuto in c

    Marta,
    per far questo è sufficiente una if ed una sottrazione, nel caso i sia maggiore della grandezza dell'array dei nomi.
    La visualizzazione, nel caso della printf, deve essere con tipologie di segnaposto differente.
    
        ...
        int n_nomi=sizeof(nomi)/24; // semplicemente 5 nel tuo caso
        ...
        if (i>=n_nomi)
          printf ("i=%d --> %f\n",i ,numeri[i-n_nomi]);
        else
          printf ("i=%d --> %s\n",i ,nomi[i]);
        ...
    
    Saluti,
    Max
  • Re: Aiuto in c

    Grazie mille Max sono riuscitaaaaa!!:))
Devi accedere o registrarti per scrivere nel forum
5 risposte