首页 > 解决方案 > 如何将2添加到C中的4位数字中的每个数字

问题描述

我正在尝试解决这个没有答案的教程练习问题,我可以检查我的代码。目标是编写一个程序来显示数字2大于输入数字的相应数字的数字。所以如果输入的数字是,5656那么输出的数字应该是7878。我已经想出了如何分隔每个数字并添加它们,但我似乎无法让它们以四位数的顺序打印。


#include <stdio.h>

int main ()
{
    int n, one, two, three, four, final;
    scanf("%d", &n);

    one   = (n / 1000);
    n     = (n % 1000) + 2;
    two   = (n / 100) + 2;
    n     = (n % 100) + 2;
    three = (n / 10) + 2;
    n     = (n % 10) + 2;
    four  = (n / 1) + 2;
    n     = (n % 1) + 2;

    final = (one * 1000) + (two * 100) + (three * 10) + four;

    printf("%d", final);
    return 0;
}

标签: c

解决方案


#include <stdio.h>
int main()
{
     int n,a[4], final;
    scanf("%d", &n);
    for(int i=3;i>=0;i--)
    {
        a[i]=n%10+2;
        n/=10;
    }
    final = (a[0] * 1000) + (a[1] * 100) + (a[2] * 10) + a[3];
    printf("%d", final);
    return 0;
}

推荐阅读