#include <stdio.h>
#include <string.h>
int add(const char *sr1,const char *sr2)
{
char *data1 = sr1;
char *data2 = sr2;
int num1 = strlen(sr1);
int num2 = strlen(sr2);
int max = 0;
int a[100] = {0},b[100] = {0};
int i,tmp;
max = ((num1 >= num2) ? num1 : num2);
tmp = max;
printf("sr1 = %s\n",sr1);
printf("sr2 = %s\n",sr2);
for(i = 0; i < num1; tmp--,i++)
{
a[tmp] = data1[num1 - 1 -i] - '0';
}
for(i = 1; i <= num1;i++)
{
printf("%d",a[i]);
}
printf("\n");
tmp = max;
for(i = 0; i < num2; tmp--,i++)
{
b[tmp] = data2[num2-1-i] - '0';
}
for(i = 1; i <= num2;i++)
{
printf("%d",b[i]);
}
printf("\n");
printf("\n");
for(i = max; i >= 0; i--)
{
a[i]+=b[i];
if(a[i] >= 10)
{
a[i]-=10;
a[i-1]++;
}
}
printf("result: ");
if(a[0] != 0)
{
for(i = 0; i <= max;i++)
{
printf("%d",a[i]);
}
}else{
for(i = 1; i <= max;i++)
{
printf("%d",a[i]);
}
}
printf("\n");
return 0;
}
int main()
{
add("1111111111111111111111111","22222222222222222222");
#include <string.h>
int add(const char *sr1,const char *sr2)
{
char *data1 = sr1;
char *data2 = sr2;
int num1 = strlen(sr1);
int num2 = strlen(sr2);
int max = 0;
int a[100] = {0},b[100] = {0};
int i,tmp;
max = ((num1 >= num2) ? num1 : num2);
tmp = max;
printf("sr1 = %s\n",sr1);
printf("sr2 = %s\n",sr2);
for(i = 0; i < num1; tmp--,i++)
{
a[tmp] = data1[num1 - 1 -i] - '0';
}
for(i = 1; i <= num1;i++)
{
printf("%d",a[i]);
}
printf("\n");
tmp = max;
for(i = 0; i < num2; tmp--,i++)
{
b[tmp] = data2[num2-1-i] - '0';
}
for(i = 1; i <= num2;i++)
{
printf("%d",b[i]);
}
printf("\n");
printf("\n");
for(i = max; i >= 0; i--)
{
a[i]+=b[i];
if(a[i] >= 10)
{
a[i]-=10;
a[i-1]++;
}
}
printf("result: ");
if(a[0] != 0)
{
for(i = 0; i <= max;i++)
{
printf("%d",a[i]);
}
}else{
for(i = 1; i <= max;i++)
{
printf("%d",a[i]);
}
}
printf("\n");
return 0;
}
int main()
{
add("1111111111111111111111111","22222222222222222222");
return 0;
}
1246

被折叠的 条评论
为什么被折叠?



