1 #include<stdio.h>
2
3 void itoa(int , char[]);
4 void reverse(char[]);
5 int main(void)
6 {
7 char s[1024];
8 int a = -123;
9 itoa(a, s);
10 printf("%s\n", s);
11 return 0;
12 }
13
14 void itoa(int n, char s[])
15 {
16 int i, sign;
17 if((sign = n) < 0)
18 n = -n;
19 i = 0;
20 do
21 {
22 s[i++] = n % 10 +'0';
23 }while((n / 10) > 0);
24 if(sign < 0)
25 s[i++] = '-';
26 s[i] = '\0';
27 reverse(s);
28 }
29
30 void reverse(char s[])
31 {
32 int i, j, temp;
33 j = 0;
34 while(s[j])
35 j++;
36 j--;
37 for(i = 0; i < j; i++, j--)
38 {
39 temp = s[j];
40 s[j] = s[i];
41 s[i] = temp;
42 }
43 }
~
2
3 void itoa(int , char[]);
4 void reverse(char[]);
5 int main(void)
6 {
7 char s[1024];
8 int a = -123;
9 itoa(a, s);
10 printf("%s\n", s);
11 return 0;
12 }
13
14 void itoa(int n, char s[])
15 {
16 int i, sign;
17 if((sign = n) < 0)
18 n = -n;
19 i = 0;
20 do
21 {
22 s[i++] = n % 10 +'0';
23 }while((n / 10) > 0);
24 if(sign < 0)
25 s[i++] = '-';
26 s[i] = '\0';
27 reverse(s);
28 }
29
30 void reverse(char s[])
31 {
32 int i, j, temp;
33 j = 0;
34 while(s[j])
35 j++;
36 j--;
37 for(i = 0; i < j; i++, j--)
38 {
39 temp = s[j];
40 s[j] = s[i];
41 s[i] = temp;
42 }
43 }
~