zoukankan      html  css  js  c++  java
  • 整数转换字符串

    思路:首先确定整数的长度,这样做有两个好处。

    • 一个是用于节省内存,因为要事先申请字符串地址空间;
    • 一个是长度后,可以直接取整数的高位,不需要从个位取,从个位取构成的字符串后面还需要一个逆序

    具体代码如下:

    /*
     *整数转化成字符串
    */
    
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    
    char *IntToString(int a)
    {
        int temp=a;//保存a的值
        int len;//缓存用地
        int b=a%10; 
        int count=0;//计算整数的长度
        char *string;
        while(b!=0)
        {
            count++;
            a=a/10;
            b=a%10;
            if(b==a)
                break;
        }
        count++;
        string=(char *)malloc(count+1);
        b=temp%10;
        len=count;
        printf("count=%d
    ",count);
        while(temp)
        {
            a=temp/Mypow10(--count);
            (*string++)=a+'0';
            temp=temp-a*Mypow10(count);
        }
        *string=0;
        string=string-len;
        return string;
    }
    
    
    int Mypow10(int a)
    {
        if(a<0)
            return 0;
        int i=1;
        int sum=1;
        for(i=1;i<=a;i++)
        {
            sum=sum*10;
        }
        return sum;
    }
    int main(void)
    {
        int a=123;
        printf("请输入一个整数:
    ");
        scanf("%d",&a);
        char *b=IntToString(a);
        printf("%s
    ",b);
        return 0;
    }

     程序猿必读

  • 相关阅读:
    C#高级特性_Attribute
    C#高级特性_Lambda
    委托(delegate)
    C# 属性、索引
    C#中的interface
    枚举型Enum和结构型Stuct
    javascript学习笔记
    github page 和 hexo 搭建在线博客
    2015/9/22 开通博客园
    phoenix 入门
  • 原文地址:https://www.cnblogs.com/longzhongren/p/4422383.html
Copyright © 2011-2022 走看看