LucaST79
02-05-2013, 12:15
[C] IDE : Code::Blocks (un grazie di cuore a chi mi ha suggerito di lasciare Dev-C++!!)
S.O. : Windows 7
Ciao ragazzi, eccomi di nuovo qui con una nuova richiesta d'aiuto :D
Ho il seguente esercizio da fare :
" Creare due funzioni a e b
La funzione a restituisce il valore passato come parametro aumentato di 10
La funzione b restituisce il valore passato come parametro aumentato di 15
Creare un puntatore a funzione con il nome f
Chiedere all'utente di digitare il numero 1 o 2
Se l'utente digita il numero 1 eseguire la funzione a altrimenti eseguire la funzione b richiamate dal puntatore."
Ora, io ho fatto una versione funzionante senza puntatore. Ho provato ad inserire il puntatore ma mi crasha...
int incr10 (int x){
return (x + 10);}
int incr15 (int x){
return (x +15);
}
int main(int argc, char *argv[])
{
int x,scelta;
printf ("Inserisci un valore intero per x : ");
scanf("%d",&x);
printf("Scegli se incrementare il valore x di 10 o di 15.\nDigita 1 per la prima opzione, 2 per la seconda : ");
scanf("%d",&scelta);
if (scelta == 1){
printf("%d\n",incr10(x));
}
else if (scelta == 2){
printf("%d\n",incr15(x));
}
S.O. : Windows 7
Ciao ragazzi, eccomi di nuovo qui con una nuova richiesta d'aiuto :D
Ho il seguente esercizio da fare :
" Creare due funzioni a e b
La funzione a restituisce il valore passato come parametro aumentato di 10
La funzione b restituisce il valore passato come parametro aumentato di 15
Creare un puntatore a funzione con il nome f
Chiedere all'utente di digitare il numero 1 o 2
Se l'utente digita il numero 1 eseguire la funzione a altrimenti eseguire la funzione b richiamate dal puntatore."
Ora, io ho fatto una versione funzionante senza puntatore. Ho provato ad inserire il puntatore ma mi crasha...
int incr10 (int x){
return (x + 10);}
int incr15 (int x){
return (x +15);
}
int main(int argc, char *argv[])
{
int x,scelta;
printf ("Inserisci un valore intero per x : ");
scanf("%d",&x);
printf("Scegli se incrementare il valore x di 10 o di 15.\nDigita 1 per la prima opzione, 2 per la seconda : ");
scanf("%d",&scelta);
if (scelta == 1){
printf("%d\n",incr10(x));
}
else if (scelta == 2){
printf("%d\n",incr15(x));
}