Secondo me faresti prima ad allocarti un vettore di un tot di caratteri salvandoti il k-esimo carattere successivo a quello immesso. Intendo una cosa del genere:
cifr contiene la stringa già cifrata. Occhio perchè manca il controllo sulla lunghezza della chiave: quando arrivi alla 'z' devi tornare indietro, questo va gestito.codice:int main (void) { int c, k, i; char *cifr; printf("Inserisci chiave di cifratura: "); scanf("%d", &k); printf("Inserisci testo da cifrare!!\n"); cifr = (char*) malloc(2048*sizeof(char)); i=0; while ((c = getchar()) != '.'){ cifr[i] = (c+k); i++; } printf("%s\n",cifr); return 0; }

Rispondi quotando