机考题一
• 20 分, LeetCode easy 档次
• 从控制台输入一个合法数字,打印其立方
• 例如
• 输入123456789
• 输出1881676371789154860897069
• 基本编码能力、消耗时间
--------------------------------------------------------------------------------
思路
C++ 高精度。竖式实现乘法和加法(乘法的竖式实现要利用到加法)。
注意:memcpy(char * Dst, char * Src, int size_t),其中size_t是number of bytes(字符的个数),用strlen(Src),不能用sizeof(Src),sizeof(Src)计算的是开辟Src占用的总的byte数。
--------------------------------------------------------------------------------
代码
#include<cstdio>
#include<cstring>
#include<algorithm>
void add(char *res, char *m1, char *m2)
{
int len1 = strlen(m1), len2 = strlen(m2), i1, i2, j, n1, n2, s = 0, si = 0;
if (len1 == 0)
{
memcpy(res, m2, strlen(m2));
}
else if (m2 == 0)
{
memcpy(res, m1, str