 题目要求是将一个整数N转换成字符串,例如,输入483..应该输出"483", N的位数不确定,可以是任意位数的整数....仅希望大家指出我这个程序中的错误...不需要其它的实现方法....谢谢...程序中的注释是我的思路
题目要求是将一个整数N转换成字符串,例如,输入483..应该输出"483", N的位数不确定,可以是任意位数的整数....仅希望大家指出我这个程序中的错误...不需要其它的实现方法....谢谢...程序中的注释是我的思路
void fun(long a , char *p)  /*将整数转换成字符串的函数,转换后反序存入字符数组p*/
     {
      if(a<10)                     /*判断a是否为一位数,要是直接送到*p中*/
         *p=a+'0';                 /*把数字转换成字符*/
      else                          /*不是一位数的情况*/
          {
          *(p++)=a%10+'0';  /*把a个位数字转换成字符存入*p,并使p指向字符数组下一个*/
          fun(a/10,p);          /*递归调用,a/10就可以把刚才已经存过的个位去掉*/
          }
          *p='\0';                /*给字符数组最后加上一个结束标志*/
      }
void main()
     {long a;
      char p[10],temp;
      int i;
      scanf("%ld",&a);    /*输入整数*/
      fun(a,p);                /*函数调用*/
      for(i=0;i<=strlen(p)/2;i++)  /*由于函数是反序存储,这里进行倒序*/
      {temp=p[i];
       p[i]=p[strlen(p)-i];
       p[strlen(p)-i]=temp;
       }
       puts(p);                     /*输出转换过的字符数组*/
       getch();
       }

 
											






 
	    


