问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char a[9999]={0},b[9999]={0};
int i=0;///a长度
int j=0;///b长度
int l=0;///c长度
int c[9999]={0};
int main(void)
{
int f,flage=0;
for(i=0;;i++)
{
f=getchar();
if(f==' ')
{
break;
}
a[i]=f;
}
for(j=0;;j++)
{
f=getchar();
if(f==10)
{
break;
}
b[j]=f;
}
//// i>j ? flage=1:flage=0;///判断ij大小,方便求c
if(i>j)
{
flage=1;
}
else
{
flage=0;
}
if(flage==1)
{
for(;j>=0;j--)
{
c[l]=a[i]-48+b[j]-48;
l++;
i--;
}
for(;i>=0;i--)
{
c[l]=a[i]-48;
l++;
}
}
if(flage==0)
{
for(;i>=0;i--)
{
c[l]=a[i]+b[j]-48-48;
if(c[l]<0)
{
c[l]=0;
}
l++;
j--;
}
for(;j>=0;j--)
{
c[l]=b[j]-48;
l++;
}
}
int p=l;///p为等等c的输出次数
for(int o=0;o<l;o++)///判断是否大于10
{
if(c[o]>=10)
{
c[o]=c[o]%10;
c[o+1]=c[o+1]+1;
}
}
if(c[p]==0)
{
p=p-1;
}
for(;p>=1;p--)
{
printf("%d",c[p]);
}
}
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果