Ir ao conteúdo

C++ strings


Sakatsu

Posts recomendados

Postado

boas, preciso fazer um programa que lê uma string, e um caracter posteriormente e analisa quantas vezes o carater digitado aparece na string, nao estou a conseguir finalizar alguem pode ajudar?

#include <iostream>
#include <cstdlib>
#include <string.h>

using namespace std;

char string1[20];
char carater;


//------------------
void resultados(int contador)
{
cout<<"\nNumero de Ocorrencias: "<<contador;
}
//------------------
int contar(char s[20], char ca)
{
int cont=0;

for(int i=0;i<20;i++)
{
if(strcmp(s[i],ca)==0)
cont++;
}


return cont;
}

//------------------
void analisar()
{
cout<<"\nQual o caracter que quer analisar: ";
cin>>carater;

}

//------------------
void obter_dados()
{
cout<<"\nDigite uma string: ";
cin.getline(string1,20);
}

//------------------

int main()
{
int c=0;

obter_dados();
analisar();
c=contar(string1,carater);
resultados(c);

system("pause");
return 0;
}

Postado

não utilizo c++, mas strcmp compara strings, caracteres se comparam na "lata" mesmo usando o operador == em C++ não utilizas as funções do cabeçalho string.h porque ela tem um tipo de dados string orientado a objetos onde se usa operadores que facilitam sua vida, não use vetores de char em C++.

Torque a função pelo operador, assim:


int contar(char s[20], char ca)
{
int cont=0;

for(int i=0;i<20;i++)
{
if(s[i] == ca)
cont++;
}


return cont;

  • Moderador
Postado

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Arquivado

Este tópico foi arquivado e está fechado para 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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!