孟了里格甜 2014-01-06 13:31
浏览 1495

C语言问题,A+Bproblems,求帮助

题目描述
给你两个正的小数A和B,你的任务是计算出A+B的值。
输入
本题目包含多组测试数据,请处理到文件结束。
每一组测试数据在一行里面包含两个长度不大于400的正小数A和B。
输出
请在一行里面输出输出A+B的值,请输出最简形式。详细要求请见Sample Output。
样例输入
1.1 2.9
1.1111111111 2.3444323343
1 1.1
样例输出
4
3.4555434454
2.1

#include
#include
int main()
{
int i,j,k,l,len1,len2,flag,sum[1100],p,zb;
char a[400],b[400];
while(scanf("%s%s",a,b)!=EOF)
{
len1=strlen(a);len2=strlen(b);
memset(sum,0,sizeof(sum));/////
flag=0;
for(i=0;a[i];i++)
if(a[i]=='.')
break;
k=i+1; //////0~~~i-1wei zhengshu
if(a[i])
flag=1; ///1 zhengshu 0 xiaoshu
for(j=0;b[j];j++)
if(b[j]=='.')
break;
l=j+1; /////0~~~~j-1 wei zhengshu
if(b[j])
flag=1;
if(i>j)
zb=i+1; ///zui da you zb wei zhengshu
else
zb=j+1;

    p=zb;      //// p wei zheng shu
    i--;
    j--;
    for(;;i--,j--)
    {
        if(i>=0&&j>=0)
            sum[p--]=a[i]-'0'+b[j]-'0';       ////sum[0] liu gei jinwei
        else if(i>=0&&j<0)
            sum[p--]=a[i]-'0';
        else if(i<0&&j>=0)
            sum[p--]=b[j]-'0';
        else if(i<0&&j<0)
            break;      
    }       
    p=zb+1;        //// p liu gei xiaoshudian
    for(;;k++,l++)
    {
        if(k<len1&&l<len2)
            sum[p++]=a[k]-'0'+b[l]-'0';    ///xiaoshu bufen jisuan
        else if(k<len1&&l>=len2)
            sum[p++]=a[k]-'0';
        else if(k>=len1&&l<len2)
            sum[p++]=b[l]-'0';
        else if(k>=len1&&l>=len2)
            break;      
    }
    for(i=p-1;i>=0;i--)
        if(sum[i]>=10)
        {
            sum[i]=sum[i]-10;
            sum[i-1]++;
        }
    i=0;
    while(sum[i]==0)
        i++;
    for(;i<=zb;i++)
        printf("%d",sum[i]);        
    p--;
    while(sum[p]==0&&p>=0)
        p--;
    if(p<=zb)
        flag=0;
    if(flag)
    {
        printf(".");
        for(i=zb+1;i<=p;i++)
            printf("%d",sum[i]);        
    }   
    printf("\n");
}
return 0;

}

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥50 树莓派安卓APK系统签名
    • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
    • ¥65 汇编语言除法溢出问题
    • ¥15 Visual Studio问题
    • ¥20 求一个html代码,有偿
    • ¥100 关于使用MATLAB中copularnd函数的问题
    • ¥20 在虚拟机的pycharm上
    • ¥15 jupyterthemes 设置完毕后没有效果
    • ¥15 matlab图像高斯低通滤波
    • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗