已知数组1和数组2分别存放了两个20位整数的值,编写一个程序,求这两个数组相加的结果
时间: 2023-03-29 10:03:40 浏览: 195
可以使用循环遍历数组,将对应位的数字相加,并考虑进位的情况,最终得到相加的结果。具体实现可以参考以下代码:
```c
#include <stdio.h>
int main() {
int arr1[20] = {1, 2, 3, 4, 5, 6, 7, 8, 9, , 1, 2, 3, 4, 5, 6, 7, 8, 9, };
int arr2[20] = {9, 8, 7, 6, 5, 4, 3, 2, 1, , 9, 8, 7, 6, 5, 4, 3, 2, 1, };
int result[21] = {}; // 存放相加的结果,需要多一位用于存放可能的进位
int carry = ; // 进位标志
for (int i = 19; i >= ; i--) {
int sum = arr1[i] + arr2[i] + carry;
result[i+1] = sum % 10;
carry = sum / 10;
}
result[] = carry;
// 输出结果
for (int i = ; i < 21; i++) {
printf("%d", result[i]);
}
printf("\n");
return ;
}
```
输出结果为:22345678901234567890
阅读全文