Umwandlung von zwei-stellige Anzahl an Wörter, die mit "switch" - Anweisung

Die Frage sagt, ein Programm schreiben, das den Benutzer auffordert, geben Sie 2-stellige Zahl, dann druckt das englische Wort für es. Angenommen, Sie geben '41' die printf-Funktion gibt 'vierzig' one'. Ich habe fast abgeschlossen, das Programm aber stecken zum konvertieren von 11-19 Ziffern in die entsprechenden Worte. Ich verwendet eine switch-Anweisung zum drucken der ersten Ziffer und die zweite switch-Anweisung zum drucken der zweiten Ziffer. Haben einen Blick auf den code:

#include <stdio.h>

int main(void)
{
    int first_digit, second_digit;

    printf("Enter two digits: ");
    scanf("%1d%1d",&first_digit,&second_digit);

    switch(first_digit % 10) {
    case 1: printf("ten"); break;
    case 2: printf("twenty"); break;
    case 3: printf("thirty"); break;
    case 4: printf("forty"); break;
    case 5: printf("fifty"); break;
    case 6: printf("sixty"); break;
    case 7: printf("seventy"); break;
    case 8: printf("eighty"); break;
    case 9: printf("ninety"); break;
    }
    switch(second_digit % 10) {
    case 0: break;
    case 1: printf(" one"); break;
    case 2: printf(" two"); break;
    case 3: printf(" three"); break;
    case 4: printf(" four"); break;
    case 5: printf(" five"); break;
    case 6: printf(" six"); break;
    case 7: printf(" seven"); break;
    case 8: printf(" eight"); break;
    case 9: printf(" nine"); break;
    }
    return 0;
}

InformationsquelleAutor user2409559 | 2013-05-22
Schreibe einen Kommentar