自己写函数:字符串和整型的相互转换的代码————新人文

整型转换为字符串

#include<stdio.h>

void int_to_string( char s[],int m )
{

      int i=0,j,k,n;
      char temp;
      if( m<0 ){
            s[i]='-';
            m=-m;
            i++;
      }

      while( m>0 ){
            n=m%10;
            m/=10;
            s[i]=n+'0';  //或者  n+48  0的码值是48 
            i++;
      }
      s[i]='\0';

      //因为上面的整型数是逆序转换的,所以我们需要倒序
      //如果是负数就从第二个开始逆序,如果不是从第一个开始 
      if( s[0]=='-' ) k=1;
      else k=0;

      for( j=k;j<i/2;j++ ){ 
            temp=s[j];
            s[j]=s[i-j-1+k]; //负数k=j=1,k和-1抵消      正数k=j=0,i-1
            s[i-j-1+k]=temp;
      }
}

int main()

{
      int num;
      char str[10];
      scanf("%d",&num);
      int_to_string( str,num );
      printf("%s",str);
      
      return 0;   
}

字符串转换为整型


#include<stdio.h>

int string_to_int( char s[])
{
      int flag=1,i=0,n=0; //flag 1 +
      char temp;
      if( s[i]=='-' ){
            flag=0;  //flag  0    -
            i++;
      }
      while( s[i]!='\0' ){
            n=n*10+s[i]-48;    //0的码值为48    
            i++;
      }

      if( flag==1 ){
            return n;
      }else{
            return -n;
      }      
}

int main()
{
      int n;
      char str[10];
      scanf("%s",str);
      n=string_to_int( str );
      printf("%d\n",n);

      return 0;
}

如有错误,大家一定要在评论区指出!感谢!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值