Per ora ho visto il primo.
Innanzitutto ci sono errori nel main. Nei cicli in cui leggi, tu controlli l'elemento, ad es., A[i] ad inizio ciclo, ma il valore di tale elemento è definito solo dopo, all'interno del ciclo. Potresti, ad es. usare un do-while (o volendo pure col for si può fare, ma con i dovuti accorgimenti).
Altra cosa, inutile passare nella funzione le dimensioni. A parte che dim è una costante globale (quindi visibile anche per la funzione), ma a parte questo chi scrive la funzione si aspetta comunque che siano stati passati degli array che terminano con un numero negativo e basarti su questo.
Inoltre, non so se te ne sei accorto, ma all'interno della tua funzione l'array C (che dovrebbe essere il parametro di uscita) non è proprio toccato.VVoVe:
I miei consigli:
- Ragiona pian piano sulle singole cose e non scrivere il codice tutto di un sol colpo. Comincia prima a vedere se sai fare una lettura da tastiera verso array e la stampa dell'array sullo schermo (che sono basilari).
- Pensa bene a quali sono gli input e gli output della tua funzione, prima ancora di pensare all'algoritmo.
- Cerca di capire, anche ragionando con carta e penna, come deve funzionare l'algoritmo (anche se non è necessario, magari puoi aiutarti anche con delle ulteriori sottofunzioni).
Spero che almeno per questo esercizio le cose ti siano più chiare.![]()