/* Programm: Grundlagen 1 Kapitel 6 - Prg 2 Funktion: Umgang mit Zeichenketten Update: 16.12.99 */ #include // Eine Konstante für die Anzahl der Zeichen #define ANZAHL 20 int str_len( char *string ) { int r; for( r = 0; r < ANZAHL; r++ ) { // Binäre Null gefunden, dann r zurückgeben if( string[r] == 0 ) return r; } // Auf jeden Fall r zurückgeben, auch wenn // die NULL nicht gefunden return r; } int main( void ) { char String[ANZAHL]; int Laenge, index; printf("Geben Sie eine Zeichenkette ein (max %d Zeichen): \n", ANZAHL ); // Der Name des Feldes repräsentiert die Adresse // deshalb kann das & wegfallen scanf("%s", String ); Laenge = str_len( String ); printf("Sie haben %s eingegeben.\n", String ); printf("Eingegebene Zeichen: %d\n", Laenge ); do { printf("Welche Stelle Ausgeben ( 1 = erste Stelle, 0 zum beenden)? "); scanf("%d", &index ); /* Prüfe, ob der 0 < Index <= Laenge */ if( (index <= Laenge) && (index > 0) ) // Ja, dann den Buchstaben an der Stelle index-1 ausgeben // index-1 weil der User ja mit 1 anfängt!! printf("%c\n", String[index-1] ); }while( index != 0 ); // 0 = Abbruch return 0; }