crj


私信TA

用户名:dotcpp0715696

访问量:972

签 名:

菜菜

等  级
排  名 503
经  验 4457
参赛次数 0
文章发表 28
年  龄 0
在职情况 学生
学  校 商洛学院
专  业 外卖科学与技术

  自我简介:

美团外卖

解题思路:求出最长字符串的长度,相加时只需让相加之后的答案位数多一位

因为相同长度的数字相加最大只会向前进一位,如9+9=18,99+99=198.

最后只需判断第一位是否为,零为0不打印,反之,打印。
注意事项:

参考代码:

#include<stdio.h>

#include<string.h>

int main()

{

char arr[201] = { 0 }, ar[201] = { 0 };

int a[201] = { 0 }, b[201] = { 0 };

scanf("%s", arr);

scanf("%s", ar);

int len = strlen(arr) > strlen(ar) ? strlen(arr) : strlen(ar);

for (int i = strlen(arr) - 1, j = len; i >= 0; i--, j--)

a[j] = arr[i] - 48;

for (int i = strlen(ar) - 1, j = len; i >= 0; i--, j--)

b[j] = ar[i] - 48;

for (int i = len; i >= 0; i--)

a[i] += b[i];

for (int i = len-1; i >= 0; i--)

{

a[i] += a[i + 1] / 10;

a[i + 1] %= 10;

}

if (a[0])

printf("%d", a[0]);

for (int i = 1; i <= len; i++)

printf("%d", a[i]);

return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区