#include
#include
#include
using namespace std;
void sub(const char *big, const char *small, char *result);
void reverse_str(char * str);
void two_positive_add(const char *num1, const char *num2, char *result)
else
carry = 0;
result[count++] = sum | 0x30;
--end1;
--end2;
}//num1的位數大於num2的位數
while (end1>=0)
else
carry = 0;
result[count++] = sum | 0x30;
--end1;
}//num2的位數大於num1的位數
if (end2>=0)
else
carry = 0;
result[count++] = sum | 0x30;
--end2;
}//最後一步需要判斷進製是否為0
if (carry!=0)
result[count++] = '1';
//主要新增是字串結束符''
result[count] = '\0';
}void positive_negactive_add(const char *positive, const char *negactive, char *result)
//去掉結果前面無效的0
while (result[count-1] == '0' && count!=1)
--count;
result[count] = '\0';
}void add (const char *num1, const char *num2, char *result)
//乙個正數與乙個負數求和
if ((minus1 == false && minus2 ==true) || (minus1 == true && minus2 == false))
//兩個負數求和
if (minus1 == true && minus2 ==true)
//將result逆序過來
reverse_str(result);
}void reverse_str(char * str)
}int main()
鍊錶的十進位制加法
題目 給定兩個用鍊錶表示的整數,每個結點包含乙個數字。這些數字是反向存放的,也就是個位排在鍊錶首部。編寫函式對這兩個整數求和,並用鍊錶形式返回結果。示例 輸入 7 1 6 5 9 2 即617 295 輸出 2 1 9,即912。高階 假設這些數字是正向存放的,請再做一遍。示例 輸入 6 1 7 2...
二十進位制的加法
題目描述 在二十進位制中,我們除了使用數字0 9以外,還使用字母a j 表示10 19 給定兩個二十進位制整數,求它們的和。輸入是兩個二十進位制整數,且都大於0,不超過100位 輸出是它們的和 二十進位制 且不包含首0。我們用字串來表示二十進位制整數。分析 在第一眼看到這道題的時候,我相信你也會有乙...
二十進位制數的加法
題目詳情 在二十進位制中,我們除了使用數字0 9以外,還使用字母a j 表示10 19 給定兩個二十進位制整數,求它們的和。輸入是兩個二十進位制整數,且都大於0,不超過100位 輸出是它們的和 二十進位制 且不包含首0。我們用字串來表示二十進位制整數。class program 二十進位制相加 字串...