社区讨论
我感觉没问题啊?为什么全通过不了
P1601高精度加法参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @lpmfdab5
- 此快照首次捕获于
- 2023/12/01 17:31 2 年前
- 此快照最后确认于
- 2023/12/01 20:10 2 年前
C
#include<stdio.h>
#include<string.h>
int max(int a,int b){
int max;
if(a > b) max = a;
else max = b;
return max;
}
int High_precision_addition(char a[], char b[]) {
int size_a = strlen(a), size_b = strlen(b);
int la = size_a, lb = size_b;
char a1[505], b1[505], c[505] = {0};
for (int i = 0; i < la; i++) {
a1[la - i] = a[i] - '0';
}
for (int i = 0; i < lb; i++) {
b1[lb - i] = b[i] - '0';
}
int lc = max(la, lb) + 1;
for (int i = 0; i < lc; i++) {
c[i] += a1[i] + b1[i];
c[i + 1] = c[i] / 10;
c[i] = c[i] % 10;
}
if (c[lc] == 0 && lc > 0) lc--;
for (int i = lc; i > 0; i--) {
printf("%d",c[i]);
}
return 0;
}
int main(){
char a[505],b[505];
gets(a);
gets(b);
High_precision_addition(a,b);
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...