PAT (Basic Level) Practice (中文)1022 D进制的A+B

时间:2022-07-24
本文章向大家介绍PAT (Basic Level) Practice (中文)1022 D进制的A+B,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1022 D进制的A+B

输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1<D≤10)进制数。

输入格式:

输入在一行中依次给出 3 个整数 A、B 和 D。

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8

输出样例:

1103

代码:

#include<stdio.h>
int fun(int *arr,long long n,int D)

{
    int t=0;
    while(n)
    {
        arr[t++]=n%D;
        n=n/D;
    }
    return t;
}
int main()
{
    long long A,B;
    int D;
    int i;
    int arr[10000];
    scanf("%lld %lld %d",&A,&B,&D);
    if(A+B==0) printf("0n");
    else{
      int temp=fun(&arr,A+B,D);
      for(i=temp-1;i>=0;i--)
      {
         printf("%d",arr[i]);
      }
      printf("n");
    }
    return 0;
}