Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
Solved

# how to covert a numeric to a character string

Posted on 2002-06-08
Medium Priority
288 Views
i wonder how to convert a numeric to a character string
er...sorry about that, wat i really want to ask is for example if i key in a numeric number 3 then the
output will be a character "three" anf if i key in 4 it will return a character string "four". i wondder
what string library should used..
0
Question by:ChristopherNoel
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 2
• 2
• 2
• +3

LVL 12

Expert Comment

ID: 7064550
Not sure entirely what you mean. If you're asking how you can convert a number stored in an integer (e.g. 25343) to a printable string, then you're looking at sprintf() or _ltoa (the latter might possibly be compiler-specific, I'm not sure). If this ISN'T what you're asking I think you need to clarify the question.
0

Author Comment

ID: 7066919
er...sorry about that, wat i really want to ask is for example if i key in a numeric number 3 then the output will be a character "three" anf if i key in 4 it will return a character string "four". i wondder what string library should used..
0

LVL 4

Expert Comment

ID: 7067406
What is the range of numbers?
0

LVL 16

Expert Comment

ID: 7067702
2 ChristopherNoel
What is the big problem. Let's create an arrays with text description and parse the number in the correct range.
{"zero","one","two",..,"nine"};
{"eleven", "twelve", "thirteen",..., "nineteen"}
{"ten","twenty",..."ninety"}
{"hundred", "thousand", "million"}
I think it is standard task for students.
0

LVL 16

Expert Comment

ID: 7067793
0

LVL 12

Expert Comment

ID: 7069214
Well, there isn't a standard library function to do what you want, so you'll have to write your own. AlexNek has pointed you along the right path, I suspect.
0

Accepted Solution

Vasudeesha earned 200 total points
ID: 7090727
Hi ChristopherNoel Here is C Progarm which will convert Number to Text.

**********************************************************
# include <ctype.h>
# include <stdio.h>

char *ot[3][9] = {
{ " One", " Two", " Three", " Four", " Five",
" Six", " Seven", " Eight", " Nine" },
{ " Ten", " Twenty", " Thirty", " Forty", " Fifty",
" Sixty", " Seventy", " Eighty", " Ninety" },
{ " Eleven", " Twelve", " Thirteen", " Fourteen",
" Fifteen"," Sixteen"," Seventeen"," Eighteen", " Nineteen"}
};

char *a[5] = { " Hundred", " Thousand", " Lakhs", " Crore", " Arab" } ;
char result[250] = "" ;
char *t[50] ;

main( )
{
int i, j, ind = 0, c, r, pr = -1, e = 0 ;
unsigned long n ;
unsigned long q ;

clrscr( ) ;
printf ( "\nEnter a long unsigned number : " ) ;
scanf ( "%ld", &n ) ;
printf ( "%ld\n", n ) ;
q = n ;
if ( n == 0 )
strcpy ( result, "Zero" ) ;
else
{
for( i = 0 ; q > 0 ; i++ )
{
if( ( i % 2 ) && i > 2 )
e++ ;
r = q % 10 ;
q /= 10 ;
if ( r != 0 )
{
if ( i == 0 )
t[++ind] = ot[i][r-1];
else if ( i == 1 )
{
if ( r == 1 && pr == 0 )
t[++ind] = ot[i][r-1] ;
else if ( r == 1 && pr > 0 )
t[--ind] = ot[2][r-1] ;
else
t[++ind] = ot[i][r-1] ;
}
else if ( i >= 2 )
{
if ( i == 2 )
{
t[++ind] = a[e] ;
t[++ind] = ot[0][r-1] ;
}
else
{
if ( i % 2 )
{
t[++ind] = a[e] ;
t[++ind] = ot[0][r-1] ;
}
else
{
if ( pr == 0 )
{
t[++ind] = a[e] ;
t[++ind] = ot[1][r-1] ;
}
else if ( r == 1)
t[ind] = ot[2][pr-1] ;
else
t[++ind] = ot[1][r-1] ;
}
}
}
}
pr = r ;
}
}/* End for */

for ( i = ind ; i >= 0 ; i-- )
strcat ( result, t[i] ) ;

printf( "\n%s", result ) ;

} /* End main */
0

Expert Comment

ID: 7090765
Hi ChristopherNoel

....
....
....
char *a[5] = { " Hundred", " Thousand", " Lakhs", " Crore", " Arab" } ;

----------To---------

char *a[5] = { " Hundred", " Thousand", " Million", " Million", " Trillion" } ;

The above Numbering system we use in India... You can change to your country's format ..

Bye
Vasudeesha
0

LVL 46

Expert Comment

ID: 9480224
No comment has been added lately, so it's time to clean up this TA.

I will leave a recommendation in the Cleanup topic area that this question is:

Kent (Kdo)
EE Cleanup Volunteer
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This tutorial is posted by Aaron Wojnowski, administrator at SDKExpert.net.  To view more iPhone tutorials, visit www.sdkexpert.net. This is a very simple tutorial on finding the user's current location easily. In this tutorial, you will learn hoâ€¦
This is a short and sweet, but (hopefully) to the point article. There seems to be some fundamental misunderstanding about the function prototype for the "main" function in C and C++, more specifically what type this function should return. I see soâ€¦
The goal of this video is to provide viewers with basic examples to understand how to use strings and some functions related to them in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use switch statements in the C programming language.
###### Suggested Courses
Course of the Month8 days, 9 hours left to enroll