PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ausgabefehler



Enomis
06.03.2011, 11:06
Hallo und schönen Sonntag an alle.

Ich will ein kleines Programm schreiben mit dem man einen Text ver- bzw- entschlüsseln kann.



#include <stdio.h>
#include <stdlib.h>

int main (void)
{

char a, textv[21], texte[21], schluessel[21], beenden;



printf("Dies ist ein Programm zur Ver- und Entschlüsselung eines Textes.");

printf ("Wollen Sie verschlüsseln(v) oder entschlüsseln(e)?");

scanf ("%c", &a);

switch (a)
{
case 'v':
printf ("Sie möchten verschlüsseln.");
printf ("Bitte geben Sie Ihren Text ein:");
getchar();
gets (textv);
printf ("Text:%s\n",textv);
printf ("Bitte geben Sie das Schlüsselwort ein (nicht mehr als 20 Zeichen):\n");
getchar();
gets (schluessel);
printf ("Ihr Schlüsselwort:%s\n",schluessel

getchar();
break;



So weit so gut.

Beim zweiten gets (Schlüssel) wird meine Eingabe eingelesen und danach auch wieder ausgegeben, mit einem Fehler: Es fehlt immer der 1. Buchstabe.
Dadrüber wird genau dasselbe gemacht, einlesen, ausgeben, und da funktioniert das Ganze wunderbar. Habt ihr eine Idee warum es ein paar Zeilen weiter nicht mehr klappt?

Vielen Dank im Voraus,
Enomis

radbruch
06.03.2011, 13:59
printf ("Bitte geben Sie Ihren Text ein:");
getchar();
gets (textv);


Wird nicht das erste Zeichen vom getchar() "verschluckt"?