黑马程序员技术交流社区
标题:
面试题:求大神在线接待
[打印本页]
作者:
gh112233
时间:
2014-6-8 11:15
标题:
面试题:求大神在线接待
各位朋友看面试题目中有一个题目:不用库函数,用c语言实现将一个整型数字转换为字符串。要求用两种方法完成。
作者:
qddnovo
时间:
2014-6-8 11:30
你好我已经帮你做了这个题目了,两个思路是不一样的,也比较容易看懂
int getlen(char *s)
{
int n;
for(n=0;*s!='\0';s++)
n++;
return n;
}
void reverse(char s[])
{
int c,i,j;
for(i=0;j=getlen(s)-1;i<j;j--)
{
c=s[i];
s[i]=s[j];
s[j]=c;
}
}
void itoa(int n,char[])
{
int i,sign;
if((sign=n)<0)
n=-n;
i=0;
do{//反序以生成数字
s[i++]=n%10+'0';//get next num
}while((n/=10)>0);//delete the num
if(sign<0)
s[i++]='-';
s[i]='\0';
reverse(s);
}
复制代码
这是方法二,用了c++的cout,换成printf即可啦
void itochar(int num);
void itochar(int num)
{
int i=0;
int j;
char stra[10];
char strb[10];
while(num)
{
stra[i++]=num%10+48;
num=num/10;
}
stra[i]='\0';
for(j=0;j<i;j++)
{
strb[j]=stra[i-j-1];
}
strb[j]='\0';
cout<<strb<<endl;//换成printf就行了
}
int main()
{
int num;
cin>>num;
itochar(num);
return 0;
}
复制代码
作者:
但愿''专注..
时间:
2014-6-8 11:53
和楼上的思路差不多
作者:
永远不会贬值
时间:
2014-6-8 12:54
学习了学习了
作者:
54hxd52lj
时间:
2014-6-10 09:55
哇塞,达人
作者:
Sniper_YJ
时间:
2014-6-10 10:47
这是什么地方的面试题??
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2