fork(1) download
  1. #include <stdio.h>
  2.  
  3. int digitCount (int);
  4. int reverseNumber (int);
  5.  
  6. int main(void)
  7. {
  8. //Chapter 6 Problem 6
  9. int x, numberValue,itemp=0;
  10.  
  11. printf("Enter the number you'd like converted to words\n");
  12. scanf("%d", &x);
  13.  
  14. x = reverseNumber (x);
  15.  
  16.  
  17. do {
  18. itemp = x % 10;
  19. //printf("itemp is %d\n", itemp);
  20.  
  21. switch (itemp) {
  22. case 0:
  23. printf("zero\t");
  24. break;
  25.  
  26. case 1:
  27. printf("one\t");
  28. break;
  29.  
  30. case 2:
  31. printf("two\t");
  32. break;
  33.  
  34. case 3:
  35. printf("three\t");
  36. break;
  37.  
  38. case 4:
  39. printf("four\t");
  40. break;
  41. case 5:
  42. printf("five\t");
  43. break;
  44.  
  45. case 6:
  46. printf("six\t");
  47. break;
  48.  
  49. case 7:
  50. printf("seven\t");
  51. break;
  52.  
  53. case 8:
  54. printf("eight\t");
  55. break;
  56.  
  57. case 9:
  58. printf("nine\t");
  59. break;
  60.  
  61. default:
  62. break;
  63. }
  64.  
  65. x = x / 10;
  66.  
  67. } while (x > 0);
  68.  
  69. return 0;
  70. }
  71. int reverseNumber (int y)
  72. {
  73. int cnt, Rev=0;
  74. cnt = digitCount(y); //returns number of digits
  75.  
  76. printf("Digit count %d\n", cnt);
  77. while (cnt != 0) {
  78. Rev = Rev * 10 + y % 10;
  79. y = y / 10;
  80. cnt--;
  81. }
  82.  
  83. return Rev;
  84. }
  85. int digitCount (int u)
  86. {
  87. int cnt = 0;
  88.  
  89. do {
  90. u = u / 10;
  91. cnt++;
  92.  
  93. } while (u != 0);
  94.  
  95. return cnt;
  96. }
  97.  
Success #stdin #stdout 0s 2252KB
stdin
234
stdout
Enter the number you'd like converted to words
Digit count 3
two	three	four