int 數值翻轉 ,例如將 123 轉化成321
本來以為可以用 itoa這個函式,可是在oj平臺上不支援這個函式
這個程式只是把輸入的一個int資料,倒序存放在 石str陣列中
本來還有部分是將 數值倒序輸出例如將 5210 倒序後的 0125
輸出為125;可是時間關係,就沒有做。
大家可以自己改
另外沒有對輸如資料進行檢查校驗
現在只支援int 正數
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void my_itoa(int x,char *s,char radix);
int atoi_my( char *str);
void main()
{
int n,i,j,m,sum;
char str[10],ch;
scanf("%d",&m);
my_itoa(m,str,10);
j=strlen(str)-1;
printf("%s\n",str);
}
void my_itoa(int x,char *s,char radix)
{
char zm[37]="0123456789abcdefghijklmnopqrstuvwxyz";
int i=0;
int sum=x;
while(sum>0)
{
s[i++]=zm[sum%radix];
sum/=radix;
}
}
int atoi_my( char *str)
{
int s=0;
while(*str>='0'&&*str<='9')
{
s=s*10+*str-'0';
str++;
if(s<0)
{
s=2147483647;
break;
}
}
return s; //
}