29课动动手
29课动动手第0题#include <stdio.h>
char *myitoa(int num, char *str);
char *myitoa(int num, char *str)
{
int n = 0,temp;
if (num < 0)
{
num = -num;
str = '-';
}
temp = num;
while (temp != 0)
{
temp /= 10;
n++;
}
str = '\0';
while (num != 0)
{
temp = num%10 + '0';
num = num/10;
str = temp;
}
return str;
}
int main()
{
char str;
printf("%s\n", myitoa(520, str));
printf("%s\n", myitoa(-1234,str));
return 0;
}
大佬们帮忙看看我这个逻辑有啥问题吗,为什么不能达到预期要求啊? 不考虑大数字的情况下,你这个代码有两个问题,第一 对于数值0,你这个是没有显示的,第二个第22行 str,第27行 str[--n]。
问题贴出来 应该是数组的问题,按楼上改试了下能行。
页:
[1]