Desculpem, eu depois nao consegui vir aqui, mas eu ja tinha resolvido o problema. Obrigado por toda a ajuda e o modulo foi mesmo necessário .
Deixo aqui um código mais "simples":
#include <stdio.h>
int maiscula (char c) {
if (c>='A' && c<='Z')
return 1;
else
return 0;
}
int minuscula (char c) {
if (c>='a' && c<='z')
return 1;
else
return 0;
}
int main () {
char c, nova;
int k;
scanf ("%d\n", &k);
while (c!='\n') {
scanf ("%c", &c);
if (maiscula(c)) {
nova=(c-'A'+k)%26+'A';
printf ("%c", nova);
}
else if (minuscula(c)) {
nova=(c-'a'+k)%26+'a';
printf ("%c", nova);
}
else
printf ("%c", c);
}
printf ("\n");
return 0;
}
↧