Determinando a posicão de ocorrencia de uma string em outra

Publicado por Kleber de Andrade Reis 28/01/2005

[ Hits: 5.203 ]

Download exe4.1.c




Esse programinha determina a posicão de ocorrencia de uma string em outra sendo ambas fornecidas pelo usuario.
o retorno da funcão rindex sera a posicão + a direita da ocorrencia!!!

  



Esconder código-fonte

#include<stdio.h>

#define MAX 1000



int rindex(char s[],char t[])

{


    int i=0,j=0,k=0,aux=0,dir;

    

    while(t[j]!='{FONTE}')

        j++; 
    j=j-1;  

    while(s[i+k]!='{FONTE}')

    {  

        if(t[k]==s[i+k])

            k=k+1;

        else

        {

            i++; 

            k=0;

        }               

        if(k==j)

        {

            k=0;

            dir=i+1;

            i++;

            aux=1;

        }

    }

    if(aux==1)

        return (dir);

    else

        return -1;

};     



main()

{

    int pos,i=0;

    char str[MAX],c;

    char teste[MAX];

    system("clear");
    printf("Esse programa nos retorna a posicao da ocorrencia mais a direita\nde t em s que sao duas strings fornecidas pelo usuario\n");
    
    printf("\n\nDigite a string t\n"); /*le str*/

    c=getchar();

    while(c!='\n'&&i<MAX)

    {

        str[i++]=c;

        c=getchar();

    }

    str[i]='{FONTE}';

    printf("\n\nDigite a string s\n");
    fgets(teste, MAX, stdin);


    pos=rindex(str,teste);

    if(pos>=0)

        printf("\nA ocorrencia + a direita de t em s e na posicao: %i\n",pos);

    else

        printf("\nNao ha ocorrencia de t em s\n");

        

};

Scripts recomendados

Distribuição Eletronica de Elementos Químicos em C++

Locadora

Desenhando uma curva de Bézier

Contagem de elementos de um array

Manipulação de letras maiusculas e minusculas


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts