Ir ao conteúdo
  • Cadastre-se
diogo moura

C Como encontrar o índice de um número em uma string

Recommended Posts

Estou fazendo uma questão que pede para eu retirar apenas os números da frase, o meu código só consegue pegar os números com frases pequenas, Exemplo de frase que o meu código falha, esse caso de teste por ser muito grande o código não vai conseguir retirar o número 100, teria uma função para isso ?

#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main(int argc, char** argv)
{
	char nome[] = {"esse vai passar 900"}, aux[101];
	int cont = 0, tam = strlen(nome);
	int indice = 0;
	for(int i = 0; i < tam; i++)
	{
		if(isdigit(nome[i]))
		{
			indice = i;
			break;
		}
	}
	for(int i = indice; i < tam; i++)
	{
		aux[cont] = nome[i];
		cont++;
	}
	aux[cont] = '\0';
	puts(aux);
	return 0;
}

 

  • Amei 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@diogo moura      você pode criar uma variável char com muitas posições , por exemplo 1000, e ali no seu código você procuraria as letras isalpha  e encontrado uma letra você colocaria ele naquela variável char de 1000 posições e ignoraria os números ,  assim  no final você coloca o " \0 "  sinalizando o final da string e  você teria uma string com apenas as letras da frase   .

  • Obrigado 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×