Ho provato il codice e non mi sembra che funz per la moltiplicazione, e se invece voglio usare per il modulo "&" al posto di "%" non funziona. Il problema è che * e & vengono interpretati dalla shell e quindi nel caso di "*", viene passato l'elenco dei files presenti nella directory non il carattere '*'.Originariamente inviato da byaur
prova con questa...
cosi funzica...codice:#include <math.h> #include <stdio.h> #include <stdlib.h> #include <string.h> int main (int argc, char **argv) { int num1, num2, num3; float ris; char *op; op =(char *)malloc(sizeof(char)); if (argc = 3) { num1 = atoi(argv[1]); num2 = atoi(argv[3]); strcpy(op, argv[2]); printf("\n\n L'operazione che hai richiesto e %d %s %d \n\n\n", num1, op, num2); if (strcmp(op,"+") == 0){ ris = num1 + num2; } if (strcmp(op,"-") == 0){ ris = num1 - num2; } if (strcmp(op,"*") == 0){ ris = num1 * num2; } if ((strcmp(op,"/") == 0) && num2!=0){ ris = num1 / num2; } if (strcmp(op,"%") == 0){ ris = num1 % num2; } } printf("Il risultato dell'operazione e %.2f\n\n", ris); return(0); }
ciao ciao
![]()
![]()