(HW OJ)提取不重复的整数,输入9876673,输出37689

/*
功能:

输入:需要统计的长整型

输出:
     
返回:没有重复数字的整型
*/

long GetConvertInt( long iInput ) //long : long int
{
    long result = 0;
    int fuhao = 1;//1表示整数,-1表示负数
    int ary[50] = {0};
    int len_iIn = 0,i = 0;
    int j = 0;

    if(0 == iInput)
        return 0;

    if(iInput >= 0)
        fuhao = 1;
    else
    {
        fuhao = -1;
        iInput = fuhao * iInput;
    }

    while(iInput != 0)
    {
      ary[len_iIn] =  iInput % 10;
      iInput = iInput/10;
      len_iIn++;
    }//注意:此时iInput = 0
    
    //p = (int*)malloc(len_iIn * sizeof(int));

    for(i = 0;i<len_iIn-1;i++)
    {
        for(j = i+1;j<len_iIn;j++)
        {
            if (ary[i] == ary[j])
            {
                ary[j] = 0x55;
            }
        }
    }
    
    for(i = 0; i<len_iIn ;i++)
    { 
        if(ary[i] != 0x55)
        {
           result = result*10 + ary[i];
        }
    }

    if(fuhao == 1)
        return result;
    else if(fuhao == -1)
            return result*(-1);
    
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值