ZZULIOJ:1151: 大整数加法
生活随笔
收集整理的這篇文章主要介紹了
ZZULIOJ:1151: 大整数加法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1151: 大整數加法
時間限制:?1?Sec??內存限制:?128 MB
[狀態] [討論版] [提交] [命題人:admin]
題目描述
比利經常會碰到超大整數的加法運算,而普通的計算器上無法進行。因此他想你幫他寫一個程序來計算結果。
輸入
輸入數據有多組。首先輸入一個整數T,表示有T組輸入。
每組輸入兩個大整數,并用空格隔開。每個整數最多1000位。沒有負數輸入。
輸出
對于每組輸入,輸出兩個整數的和,單獨占一行。
樣例輸入?Copy
2 1 2 112233445566778899 998877665544332211樣例輸出?Copy
3 1111111111111111110參考代碼
#include <stdio.h> #include <stdlib.h> #include <string.h> #include<ctype.h> #define N 1001 int main() {char ch1[N], ch2[N];int num1[N], num2[N];int i, j, max, n, a, b, k;scanf("%d", &n);for(i=1;i<=n;i++){memset(ch1, 0, sizeof(ch1));memset(ch2, 0, sizeof(ch2));memset(num1, 0, sizeof(num1));memset(num2, 0, sizeof(num2));scanf("%s", ch1);scanf("%s", ch2);a=strlen(ch1);b=strlen(ch2);k=0;for(j=a-1;j>=0;j--){num1[k++]=ch1[j]-'0';}k=0;for(j=b-1;j>=0;j--){num2[k++]=ch2[j]-'0';}if(a>b) max=a;else max=b;for(j=0;j<max;j++){num1[j]=num1[j]+num2[j];if(num1[j]>=10){num1[j]=num1[j]-10;num1[j+1]++;}}if(num1[max]!=0)printf("%d", num1[max]);for(j=max-1;j>=0;j--)printf("%d", num1[j]);printf("\n");}return 0; }總結
以上是生活随笔為你收集整理的ZZULIOJ:1151: 大整数加法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用elementUi-table时报:
- 下一篇: ue4描边