社区讨论
求救求救,为啥编译都不通过???求大佬指点!!!(C语言)
P1601高精度加法参与者 5已保存回复 8
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 8 条
- 当前快照
- 1 份
- 快照标识符
- @lo935e4h
- 此快照首次捕获于
- 2023/10/28 04:48 2 年前
- 此快照最后确认于
- 2023/10/28 04:48 2 年前
CPP
#include <stdio.h>
char a[50];
char b[50];
char c[50];
int strlen(char d[])
{
int l=0;
for(int i=0;a[i]!='\0';i++)
{
l++;
}
return l;
}
int max(int a,int b)
{
if(a>b)
{
return a;
}
else
{
return b;
}
}
int main()
{
scanf("%s%s",a,b);
int la=strlen(a);
int lb=strlen(b);
char tmp;
for(int i=0;i<la/2;i++);
{
tmp=a[i];
a[i]=a[la-1-i];
a[la-a-i]=tmp;
}
for(int i=0;i<lb/2;i++);
{
tmp=b[i];
b[i]=b[lb-1-i];
b[lb-b-i]=tmp;
}
for(int i=la;i<50;i++)
{
a[i]='0';
}
for(int i=lb;i<50;i++)
{
b[i]='0';
}
int v=0;
for(int i=0;i<=max(la,lb);i++)
{
c[i]=(a[i]-'0'+b[i]-'0'+v)%10+'0';
v=(a[i]-'0'+b[i]-'0'+v)/10;
}
if(c[max(la,lb)]=='0')
{
for(int i=max(la,lb)-1;i>=0;i--)
{
printf("%c",c[i]);
}
}
else
{
for(int i=max(la,lb);i>=0;i--)
{
printf("%c",c[i]);
}
}
return 0;
}
谢谢谢谢!!!
回复
共 8 条回复,欢迎继续交流。
正在加载回复...