Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    29

    [C] Valore assoluto con puntatori

    Nuovo problema con i puntatori, c'è sempre un errore a livello concettuale.

    codice:
    /*Valore assoluto
    
    
    Scrivete una funzione con prototipo
    void abs( int *a)
    che trasformi il valore dell'intero puntato da a in valore assoluto. 
    Quindi se la variabile puntata da a vale -5, dopo aver chiamato la funzione, la variabile puntata da a diventerebbe 5. */
    
    
    #include<stdio.h>
    
    
    int abs (int *a) {
    int tmp;
    tmp=*a;
    if (tmp<0) {
    *a=-(tmp);
    printf("nuovo risultato %d",*a);
    }
    else {
    printf("nuovo risultato %d",*a);
    }
    }
    
    
    
    
    int main (){
    int val;
    printf("inserisci numero da trasformare \n");
    scanf("%d",&val);
    abs(&val);
    
    
    return 0;
    }

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    1) ti è stato scritto che deve essere void abs( int *a)

    Quindi la funzione non deve restituire valori. L'esercizio è fatto per comprendere come i valori passati come argomento possano essere modificati. E' una funzione di una sola linea

    codice:
    void abs(int *a)
    {
        if((*a)<0) *a=-(*a);
    }

    2) la visualizzazione del dato con le printf non va nella funzione ma all'uscita nel main
    Ultima modifica di oregon; 03-05-2014 a 09:59
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    29
    Grazie!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.