[1] Comentário enviado por
kandrade em 08/11/2004 - 08:32h:
e ai galera não sei pq mas esse código q eu enviei sofreu algumas alterações..........ai vai o código correto..........a função rindex retorna a posição + a direita da ocorrencia de t em s......ou seja a posição da última ocorrencia..........te+........
#include<stdio.h>
int rindex(char s[],char t[])
{
int i=0,j=0,k=0,aux,dir;
while(t[j]!='{COMENTARIO}')
j++;
while(s[i+k]!='{COMENTARIO}')
{
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[1000],c;
printf("Digite uma string para str\n"); /*le str*/
c=getchar();
while(c!='\n'&&i<999)
{
str[i++]=c;
c=getchar();
}
str[i]='{COMENTARIO}';
pos=rindex(str,"kl");
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");
};
[3] Comentário enviado por
jochan em 14/12/2005 - 14:47h:
Muito legal, vai me ajudar bastente no meu projeto de C++ ... =)