Ciao a tutti, sto impazzendo con questo programma semplicissimo...dovete eseguirlo per capire...penso...

vorrei che la calcolatrice si iterasse all'infinito dopo la prima iterazione...la prima operazione funziona, poi quando vado a mettere il secondo operatore e relativo numero è come se prendesse l'operatore come carattere vuoto (anzi è così...perchè mi stampa un carattere vuoto se gli chiedo di stamparmi l'operatore)...mi sapete aiutare???

GRAZIE

ecco il codice...
codice:
#include <stdio.h>
#include <math.h> 
#include <conio.h>

using namespace std;

float a,b;
float result=0.0;
char o;
bool go=true;

int main()
{
    printf("...Calculator is ON...\n\n");
    while(1){
    printf("\nresult= %f",result);
    printf("\ninsert the operator((+ - * /):");
    char o = getchar();
    while (getchar() != '\n');
    printf("\nInserire numero da sommare:");
    scanf("%f",&a);
    printf("operator is : %c",o);
    if (o=='+')
    result=result+a;
    else if(o=='-')
    result=result-a;
    else if(o=='*')
    result=a*result;
    else if(o=='/')
    result=result/a;
    else
    printf("\nIMPOSSIBLE!");
    //printf("\nrisultato: %f",c);
              }
    getch();
    return(0);
}