Exit the loop as soon as the string name equals 0

1
#include <iostream>
#include <locale.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

using namespace std;

int main()
{
    setlocale(LC_ALL, "portuguese");

   int idade[20];
   string nome[20];
   char sexo[20],expe[20];

    for (int i=0; i <3; i++){

        do{
            cout << "digite o seu " << i+1 <<"º nome, idade, sexo e se tem experiência no serviço: ";
            cin >> nome[i];
            cin >> idade[i];
            cin >> sexo[i];
            cin >> expe[i];

        }while (strcmp(nome, ab)); /* está linha é que está com problema*/

    }

    return 0;
}
    
asked by anonymous 02.11.2015 / 16:35

1 answer

2
#include <iostream>
#include <locale>
#include <string>
using namespace std;

int main() {
    setlocale(LC_ALL, "portuguese");
    int idade[20];
    string nome[20];
    char sexo[20], expe[20];

    for (int i = 0; i < 3; i++) {
        do {
            cout << endl << "digite o seu " << i + 1 << "º nome, idade, sexo e se tem experiência no serviço: ";
            cin >> nome[i];
            cin >> idade[i];
            cin >> sexo[i];
            cin >> expe[i];
        } while (nome[i] == "0");
    }
    return 0;
}

See running on ideone .

Some things can be improved. Ideally it would be better to use C ++ resources and avoid C's.

    
02.11.2015 / 17:01