在数字上附加一个数字?

时间:2011-03-05 23:33:17

标签: c++

我做以下事情有多冷:

说我有10号,并希望将数字317附加到它上面。得到的整数将是10317.如何做到这一点。此外,一旦我有这个号码,我怎么能例如删除17的结尾。没有使用字符串,也没有明显的解决和添加。

由于

4 个答案:

答案 0 :(得分:8)

这将附加两个数字

int append_a_and_b_as_int(int a, int b)
{
    for(int tmp = b; tmp > 0; tmp % 10)
    {
        a *= 10;
    }
    return a + b;
}

这将摆脱最后的n个数字

int remove_n_numbers_from_a(int n, int a)
{
    for(int i = 0; i < n; i++)
    {
        a /= 10;
    }
    return a;
}

答案 1 :(得分:6)

追加:

int foo(int a, int b)
{
    return a*pow(10, floor(log10(b))+1)+b;
}

删除:

int bar(int a, int b)
{
    return a/pow(10, floor(log10(b))+1);
}

答案 2 :(得分:1)

第一个:

int a = 10;
int b = 317;
int result = a * 1000 + b;

第二个:

int result2 = result / 100;

答案 3 :(得分:1)

如果您需要在工作场所做这件事,我建议戒烟。

您可以将两个数字视为数字数据并解决问题,或者您可以将它们视为字符串并使用追加。