Ir ao conteúdo
  • Cadastre-se

Ler sobrenome em C++


FABI 2

Posts recomendados

@FABI 2      veja se esse código te ajuda :

#include <stdio.h>
#include <string.h>
#include <conio.h>
#include <ctype.h>
#include <stdlib.h>
char nome[100];
char b,c[20];
int i,j,a,f=0,g=0;
int main(){
    printf("Digite O Nome e dois Sobrenomes De Uma Pessoa  separados por um espaco\n");
    printf("Nome --> ");
    gets(nome);
    a=strlen(nome);
    printf("\n");
    for(i=0;i<a;i++){
        if(nome[i]==' '){
            for(j=i+1;j<a;j++){
                if(nome[j]==' '){
                    g=1;
                    break;
                }
                c[f]=nome[j];
                f++;
            }
            c[0]=toupper(nome[i+1]);
        }
        if(g==1){break;}
    }
    printf("Nome Do Meio --> %s    ",c);
    getch();
    printf("\n\n");
    return 0;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Sem apelar pro "estilo c" você pode usar o find e o substr da classe string para quebrar a string em partes usando como delimitador o espaço entre as palavras. Não sei te dizer se é uma boa pratica ou melhor método mas fica algo +/- assim:

 

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

int main()
{
     cout << "Nome da pessoa:";	 
	 string nome;
	 std::getline (cin,nome);	 
	 int index;	 
	 index = nome.find(' ');
	 nome = nome.substr(index+1, nome.length()-1);	 
	 index = nome.find(' ');
	 cout << "Nome do meio: " << nome.substr(0, index) << endl;
	 return 0;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...