Tengo un problema con el codigo en C de un programa de cifrado cesar, la parte de introducir una frase, que el programa cuente las letras que tenemos y que a cada letra nos adjudique un número al azar, lo tenemos, lo que nos falta es que nos enlaze los numeros con las letras, y el cifrado con diferentes carácteres(tanto letras como signos) aver si me podeis ayudar, os dejo el código que tenemos (tengo que añadir,que también tengo el fallo de que escriba la palabra que escribo, siempre me sale en el cifrado por números, un 4, probadlo si podeis) :
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <time.h>
int i, n, n1, aleatorio, P=1, U=10;
char txt[50];
int main()
{
/*Petición y contador de caracteres de frase a codificar*/
printf("Introduzca una frase:\n");
for(n=0;(txt[n]=getchar()) != '\n';++n);
txt[n]='\0';
printf("La palabra %s tiene %d letras.\n",txt,n);
printf("La generacion aleatoria es: ");
/*Generación de número al azar por letra introducida*/
srand(time(NULL));
for (i = 0; i < n; i ++)
{
aleatorio = P+(int)(((U-P+1.0)*rand())/(RAND_MAX+1.0));
printf("%d ", aleatorio);
}
printf("\n");
system("PAUSE");
return 0;
}