Receber subtring e string por linha de comando e imprimir as posicões das ocorrências

1. Receber subtring e string por linha de comando e imprimir as posicões das ocorrências

Elize Yakamura
zeyaka

(usa Ubuntu)

Enviado em 09/07/2021 - 09:30h

Um programa recebe por linha de comando um termo e uma frase (nessa ordem), e o programa deve detectar e imprimir as posições do termo.

Ex: ./programa --termo ro --frase "O rato roeu a roupa do rei de roma" (nesse padrão) -> posições do termo: 7, 14 e 30.

O programa funciona bem com scanf, os problemas aparecem quando a string e substring são recebidas via linha de comando onde não implementa o padrão e nem imprime as posições.

O que fiz até agora:


#include<stdio.h>
#include <string.h>

int posicao (char *f, char *t){
int j = 0, i = 0, n = 0;

for(i = 0; i < strlen(f); i++){
if(f[i] == t[j]){
n++;
printf("%d",i);
printf(" ");
}
}
if(n == 0)
printf("O termo não existe\n");
else{
printf("\n");
printf("O termo %s aparece %d vezes\n",t ,n);
}
}

int main(int argc, char *argv[]){
char *frase, *termo;

termo = argv[1];
frase = argv[2];

printf("O termo %s aparece em: \n", x);

posicao(frase, termo);

return 0;
}



  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts