1,字符加法
#include <stdio.h> #include <string.h> void reverse(char s[]) //反向遍历 { int i; int len = strlen(s); for (i = 0; i < len / 2; i++) { s[i] ^= s[len - i - 1]; s[len - i - 1] ^= s[i]; s[i] ^= s[len - i - 1]; } } void add_str(char sum[], char s1[], char s2[])//字符串数字相加 { int len1 = strlen(s1); int len2 = strlen(s2); int len_max = len1 > len2 ? len1 : len2;//选取最大的作为循环长度 reverse(s1);//切换高位和地位的位置 reverse(s2);//切换高位和地位的位置 int i; int digit, carry;//digit是存储当前位数相加的值 for (i = 0, digit = 0; i < len_max; i++, digit = 0) { if (s1[i] != '