Beh o utilizzi strcmp(), visto che da linea di comando passi comunque delle stringhe, oppure puoi fare in questo modo...
Come esempio, eccoti questo.. Praticamente devi passare 3 argomenti da riga di comando, 2 numeri e un carattere.. se è a stampa la somma e così via...

codice:
#include <stdio.h>
#include <stdlib.h>

int main( int argc, char *argv[] )
{
int r;
int val1;
int val2;
char ch;
if(argc!=4)
        {
    	printf("Errore, numero parametri errato\n");
    	exit(1);
    	}
r=sscanf(argv[1],"%d",&val1 );
if (r!=1)
    	{
    	printf("Errore: primo parametro non valido\n");
    	exit(1);
    	}
r=sscanf(argv[2],"%d",&val2 );
if (r!=1)
    	{
    	printf("Errore: secondo parametro non valido\n");
    	exit(1);
        }
r=sscanf(argv[3],"%c",&ch);
if(r!=1)
        {
        printf("Errore: terzo parametro non valido\n");
        exit(1);
        }
switch(ch)
        {
        case 'a':
                printf("Hai scelto la somma: %d\n",val1+val2);
                break;
        case 'b':
                printf("Hai scelto la sottrazione: %d\n",val1-val2);
                break;
        case 'c':
                printf("Hai scelto la moltiplicazione: %d\n",val1*val2);
                break;
        case 'd':
                if(val2!=0)
                        printf("Hai scelto la divisione: %d\n",val1/val2);
                else
                        printf("Errore, impossibile dividere per zero:\n");
                break;
        default:
                printf("Errore, terzo parametro non valido!\n");
	}

return 0;
}