Melhorei um pouco mais o código agora
 
#include <iostream>
using namespace std;
 
enum {NENHUM, TRIO, AR, DIRECAO, COMPLETO, SAIR};
 
void menuOpcoes() {
  cout << "0- NENHUM\n";
  cout << "1- Trio eletrico\n";
  cout << "2- Ar Condicionado\n";
  cout << "3- Direcao hidraulica\n";
  cout << "4- Completo (Trio + Ar + Direcao)\n";
  cout << "5- Sair\n";
  cout << ">>";
}
 
float calcularValorTotal(int opcao, float valorFabrica) {
  float valorTotal;
  if (opcao == NENHUM) valorTotal = valorFabrica;
  if (opcao == TRIO || opcao == AR || opcao == DIRECAO) valorTotal = valorFabrica + valorFabrica*1.02F;
  if (opcao == COMPLETO) {
    float valorIpi = valorFabrica * 0.02F;
    float extraAdicional = valorIpi * 0.02F;
    float valorDesconto = extraAdicional/0.35F;
    valorTotal = valorDesconto;
  }
  return valorTotal;
}
 
 
int main (void) {
 
 float valorFabrica, valorTotal;
 int opcao=-1;
 int contNenhum = 0, contTrio = 0, contAr = 0, contDirecao = 0, contCompleto = 0;
 
 while (opcao != SAIR) {
   cout << "Informe o valor de fabrica do carro:";
   cin >> valorFabrica;
 
 
   menuOpcoes();
   cin >> opcao;
 
   if (opcao < NENHUM || opcao > SAIR) {
     cout << "Opco invalida\n";
   } else if (opcao >= NENHUM && opcao < SAIR) {
 
     if (opcao == NENHUM) {contNenhum++;}
     else if (opcao == TRIO) {contTrio++;}
     else if (opcao == AR) {contAr++;}
     else if (opcao == DIRECAO) {contDirecao++;}
     else if (opcao == COMPLETO) {contCompleto++;}
 
     valorTotal = calcularValorTotal(opcao, valorFabrica);
     cout << "Valor total do carro: " << valorTotal << endl;
    }
  };
  
  cout << "Contador das escolhas:" << endl;
  cout << "NENHUM = " << contNenhum << endl;
  cout << "TRIO = " << contTrio << endl;
  cout << "AR = " << contAr << endl;
  cout << "DIRECAO = " << contDirecao << endl;
  cout << "COMPLETO = " << contCompleto << endl;
  return 0;
}