Página Principal

MC521-1s2014

MC621-2s2014

MC521-1s2015

MC621-2s2015

MC521-1s2016

Conteúdo

Área Reservada

edit sidebar

CF 118 A

Para esse problema bastava criar uma segunda string (str_out) para guardar a saída ou então imprimir direto na saída padrão (o que não foi feito nessa resolução). Se encontrarmos uma vogal na string da entrada então não copiamos nada para str_out, caso contrário copiamos um ponto para str_out e analisamos se a consoante é maiúscula tornando-a minúscula apenas removendo um char 'A' da consoante.

Complexidade: n apenas para percorrer a string.

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

char str_in[210], str_out[210];

int main(){
  int n, i, j;

  scanf("%s", str_in);
  n = strlen(str_in);

  for(i = 0, j = 0; i < n; i++){
    if(str_in[i] == 'a' || str_in[i] == 'o'|| str_in[i] == 'y'||
       str_in[i] == 'e'|| str_in[i] == 'u'|| str_in[i] == 'i'||
       str_in[i] == 'A'|| str_in[i] == 'O'|| str_in[i] == 'Y' ||
       str_in[i] == 'E' || str_in[i] == 'U'|| str_in[i] == 'I'){
    } else {
      str_out[j++] = '.';
      if(str_in[i] < 'a')
       str_out[j++] = str_in[i] + 'a' - 'A';
      else
       str_out[j++] = str_in[i];
    }
  }
  str_out[j] = '\0';
  printf("%s\n", str_out);


  return 0;
}