write a c program to print the values in words
eg:- 143 written it has (one hundred and forty three)&
104, 114 are also written words

Answer Posted / vadivel t

Hi,

I have written code for only 3 digit numbers(u may not get
exact result for 100, 200, 113 etc ). This is just for an
idea from which u can build ur logic.
I accept... This code can be optimised.

Dont think that code is too lengthy... cos we hav to hav
limited if, else if or switch for this requirement.

Apply ur logic for 123455677 kind of nos.

#include <stdio.h>
/*Convert no to word... only for 3 digit nos*/
void ConvertToWord(int length);
char* Tens(int *a);
int Temp[10], Length = 0;

int main()
{
int No = 999, DupNo, i, j;
printf("ENTER THE THREE DIGIT NO: ");
scanf("%d", &No);
DupNo = No;
while(DupNo != 0)
{
Temp[Length] = DupNo % 10;
DupNo = DupNo / 10;
Length++;
}
printf("%d - ", No);
ConvertToWord(Length);
_getch();
}


void ConvertToWord(int Length)
{
while(Length != 0)
{
switch(Length)
{
case 0:
break;
case 1:
switch(Temp[Length - 1])
{
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;
}
Length--;
break;

case 2:
switch(Temp[Length -1])
{
case 0:
break;
case 1:
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;
}
Length--;
break;

case 3:
printf("%s HUNDRED AND ", Tens(&Temp[--
Length]));
break;
}
}

}

char* Tens(int *a)
{
char *ch;
switch(*a)
{
case 0:
ch = "ZERO";
break;
case 1:
ch = "ONE";
break;
case 2:
ch = "TWO";
break;
case 3:
ch = "THREE";
break;
case 4:
ch = "FOUR";
break;
case 5:
ch = "FIVE";
break;
case 6:
ch = "SIX";
break;
case 7:
ch = "SEVEN";
break;
case 8:
ch = "EIGHT";
break;
case 9:
ch = "NINE";
break;
}
return ch;
}

Is This Answer Correct ?    3 Yes 7 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Write the syntax and purpose of a switch statement in C.

618


What is a header file?

634


How can variables be characterized?

1645


Is fortran still used today?

599


What is the size of enum in c?

614






How do you construct an increment statement or decrement statement in C?

737


What is equivalent to ++i+++j?

641


In c programming, explain how do you insert quote characters (? And ?) Into the output screen?

758


What is the modulus operator?

731


a formula,a series of steps,or well defined set of rules for solving a problem a) algorithem b) program c) erdiagram d) compiler

609


Why do we use main function?

630


Explain enumerated types in c language?

602


Can the curly brackets { } be used to enclose a single line of code?

709


How variables are declared in c?

569


What are pointers in C? Give an example where to illustrate their significance.

746