1.将一个十进制数字串转换成为对应的整数的函数
#include <stdio.h>
long long int Atoi(char a[])
{
long long int sum=0;
int b,i=0;
while(a[i]!='\0')
{
b=a[i]-'0';
sum=sum*10+b;
i++;
}
return sum;
}
int main(int argc, const char * argv[]) {
char a[100];
long long int b;
printf("请输入一个数字字符串:");
scanf("%s",a);
b=Atoi(a);
printf("%lld\n",b);
return 0;
}
2.将一个整数转换成为基数为BASE的数字串的函数
#include <stdio.h>
#include "string.h"
void reverse(char s[])
{
int j;
unsigned long k;
char c;
for(j=0,k=strlen(s)-1;j<k;j++,k--)
c=s[j],s[j]=s[k],s[k]=c;
}
void itoa(long long int a,char b[])
{
char c[100]="-",*p=b;
int temp=0;
if(a<0)
{
a=-a;
temp=1;
}
while(a%10!=0)
{
*p='0'+a%10;
p++;
a/=10;
}
*p='\0';
reverse(b);
if(temp==1)
{
strcat(c,b);
strcpy(b,c);
}
}
int main(int argc, const char * argv[]) {
// insert code here...
long long int a;
char b[100];
printf("请输入一个整数:");
scanf("%lld",&a);
itoa(a,b);
printf("%s\n",b);
return 0;
}