回覆列表
  • 1 # 使用者9147460208505

    這種題不是普通的A+B,沒有定義A,B的範圍,那麼A,B可以無限大,應該算是一道經典大數題,一般運用char型陣列接收A,B的每一位數然後轉化為int型模擬加法運算。下面這個程式碼是我的,可以參考一下

    #include<stdio.h>

    #include<string.h>

    const int maxn = 10000;

    char s1[10000],s2[10000];

    int num1[maxn],num2[maxn],sum[maxn];

    int main()

    {

    int t,i,j,k;

    while(~scanf("%d",&t))

    {

    while(t--)

    {

    memset(num1,0,sizeof(num1));

    memset(num2,0,sizeof(num1));

    memset(sum,0,sizeof(sum));

    memset(s1,"0",sizeof(s1));

    memset(s2,"0",sizeof(s2));

    scanf("%s %s",s1,s2);

    if(s1[0]=="0"&&s2[0]=="0")

    {

    printf("0\n");

    continue;

    }

    int len1 ,len2 ;

    len1 = strlen(s1);

    len2 = strlen(s2);

    for( i = len1 - 1,j = 0; i >= 0; i --,j++)

    num1[j] = s1[i]-"0";

    for( i = len2 - 1, j = 0; i >= 0; i --,j++)

    num2[j] = s2[i] - "0";

    int len = len1 > len2 ? len1:len2;

    for( i = 0; i<len; i++)

    {

    sum[i] += num1[i] + num2[i];

    sum[i+1] += sum[i]/10;

    sum[i] %= 10;

    }

    while(sum[i] == 0) i --;

    for(;i>=0; i--)

    printf("%d",sum[i]);

    puts("");

    }

    }

    return 0;

    }

    第一行先輸入測試資料組數

    下面幾行 再輸入測試資料

  • 中秋節和大豐收的關聯?
  • 魚的篆體字怎麼寫?