開発環境
- OS X Lion - Apple(OS)
- TextWrangler(Text Editor) (BBEditの無料、light版)
- 言語: C
- コンパイラ: UNIX ccコンパイラ (汎用UNIX)
『実践プログラミング 第3版』 (Steve Oualline (著)、 望月 康司 (監修) (翻訳)、 谷口 功 (翻訳)、 オライリー・ジャパン、1998年、ISBN978-4900900646) の8章(他の制御文)8.5(プログラミング実習)実習8-6を解いてみる。
実習8-6.
コード(TextWrangler)
#include <stdio.h> int main(){ char line[4]; int num; int hund; int ten; int one; printf("1~100の整数を入力: "); fgets(line,sizeof(line),stdin); sscanf(line,"%d",&num); hund = num / 100; ten = (num % 100) / 10; one = num % 10; if(hund == 1){ printf("one hundred "); } if(ten == 1 && one != 0){ switch(one){ case 1:printf("eleven");break; case 2:printf("twelve");break; case 3:printf("thirteen");break; case 4:printf("fourteen");break; case 5:printf("fifteen");break; case 6:printf("sixteen");break; case 7:printf("seventeen");break; case 8:printf("eighteen");break; case 9:printf("nineteen");break; } } else { switch(ten){ case 0:break; 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; } if(ten != 0 && one != 0){ printf("-"); } switch(one){ 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; } } if(hund == 0 && ten == 0 && one == 0){ printf("zero"); } printf("\n"); return (0); }
入出力結果(Terminal)
$ cc -g -o sample sample.c $ ./sample 1~100の整数を入力: 1 one $ ./sample 1~100の整数を入力: 2 two $ ./sample 1~100の整数を入力: 10 ten $ ./sample 1~100の整数を入力: 11 eleven $ ./sample 1~100の整数を入力: 12 twelve $ ./sample 1~100の整数を入力: 12 twelve $ ./sample 1~100の整数を入力: 21 twenty-one $ ./sample 1~100の整数を入力: 59 fifty-nine $ ./sample 1~100の整数を入力: 100 one hundred $ ./sample 1~100の整数を入力: 101 one hundred one $ ./sample 1~100の整数を入力: 111 one hundred eleven $ ./sample 1~100の整数を入力: 123 one hundred twenty-three $ ./sample 1~100の整数を入力: 0 zero $
0 コメント:
コメントを投稿