首页 > 代码库 > 大数相加
大数相加
2017-07-172017-07-172017-07-17
#include<stdio.h> #include<string.h> int main() { char ch1[1000], ch2[1000]; int num1[1000], num2[1000]; int i, j, max, n, k, flag = 0; scanf("%d", &n); for (k = 0; k<n; k++) { scanf("%s", ch1); scanf("%s", ch2); max = strlen(ch1); if (max<strlen(ch2)) max = strlen(ch2); for (i = 0; i <= max; i++) { num1[i] = 0; num2[i] = 0; } for (i = strlen(ch1) - 1, j = 0; i >= 0; i--) { num1[j++] = ch1[i] - ‘0‘; } for (i = strlen(ch2) - 1, j = 0; i >= 0; i--) { num2[j++] = ch2[i] - ‘0‘; } for (i = 0; i <= max; i++) { num1[i] += num2[i]; if (num1[i]>9) { num1[i] -= 10; num1[i + 1]++; } } printf("Case %d:\n%s + %s = ", k + 1, ch1, ch2); for (i = max - 1; i >= 0; i--) { if (num1[i] == 0 && flag == 0) continue; flag = 1; printf("%d", num1[i]); } if (k != n - 1) printf("\n\n"); else printf("\n"); } return 0; }
大数相加
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。