fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <ctype.h>
  5.  
  6.  
  7. char* CodificarCesar(char texto_nao_codificado[256], int chave)
  8. {
  9.  
  10. char alf[]= {'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','\n','\0'};
  11. char mensagem_original[256];
  12. char* mensagem_codificada = malloc(256*sizeof(char));
  13.  
  14. memset(mensagem_codificada,'\0',sizeof(mensagem_codificada));
  15. memset(mensagem_original,'\0',sizeof(mensagem_original));
  16. strcpy(mensagem_original,texto_nao_codificado);
  17.  
  18. int i,j, tam = strlen(mensagem_original);
  19.  
  20. for(i=0; i<tam; i++){
  21. for(j=0; j<strlen(alf); j++)
  22. {
  23. if(mensagem_original[i]==alf[j])
  24. {
  25. mensagem_codificada[i]=alf[(j+chave)%26];
  26. break;
  27. }
  28. else if(mensagem_original[i]==toupper(alf[j]))
  29. {
  30. mensagem_codificada[i]=toupper(alf[(j+chave)%26]);
  31. break;
  32. }
  33. else if(isspace(mensagem_original[i]))
  34. {
  35. mensagem_codificada[i]=' ';
  36. break;
  37. }//else space
  38.  
  39. }//for j
  40. }
  41.  
  42.  
  43. mensagem_codificada[i] = '\0';
  44.  
  45. strcat(mensagem_codificada,"\n");
  46. memset(mensagem_original,'\0',sizeof(mensagem_original));
  47.  
  48. return mensagem_codificada;
  49. }
  50.  
  51. int main(){
  52. char msg_orig[] = "Zorro";
  53. printf("%s", msg_orig);
  54. char *codificada = CodificarCesar(msg_orig, 1);
  55. printf("\n%s",codificada);
  56.  
  57. return 0;
  58. }
  59.  
Success #stdin #stdout 0s 9432KB
stdin
Standard input is empty
stdout
Zorro
Apssp