| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 610 人关注过本帖
标题:请教大神哪个地方错了。。。。。两个大整数相加
只看楼主 加入收藏
xuqingxiang
Rank: 1
等 级:新手上路
帖 子:11
专家分:2
注 册:2012-11-8
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:6 
请教大神哪个地方错了。。。。。两个大整数相加
求两个不超过200 位的非负整数的和。

Input

首先输入一个整数n , 表示测试实例的个数。
每组实例输入两行,每行是一个不超过200 位的非负整数,没有多余的前导0。


Output

每组实例输出一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能
输出为0342。


Sample Input


1
22222222222222222222
33333333333333333333


Sample Output


55555555555555555555



我的代码:
#include<stdio.h>
#include<string.h>
#define MAX_LEN 200
int an1[MAX_LEN+10],an2[MAX_LEN+10];
char szline1[MAX_LEN+10],szline2[MAX_LEN+10];

int main()
{
    int i,j,n,k,sum;
    scanf("%d",&n);
    for(k=0;k<n;k++)
    {
    scanf("%s%s",szline1,szline2);
   
    memset(an1,0,sizeof(an1));
    memset(an2,0,sizeof(an2));
    int nlen1=strlen(szline1);
    j=0;
    for(i=nlen1-1;i>=0;i--)
        an1[j++]=szline1[i]-'0';
    j=0;
    int nlen2=strlen(szline2);
    for(i=nlen2-1;i>=0;i--)
        an2[j++]=szline2[i]-'0';
    for(i=0,sum=0;i<MAX_LEN;i++)
    {
        an1[i]=an1[i]+an2[i];
        if(an1[i]>=10)
        {
            an1[i]=an1[i]-10;
            an1[i+1]++;
        }
        sum=sum+an1[i];
    }

    if(sum!=0)
    {
        bool bStartOutput=false;
        for(i=MAX_LEN;i>=0;i--)
        {
            if(bStartOutput)
                printf("%d",an1[i]);
            else if(an1[i])
            {
                printf("%d",an1[i]);
                bStartOutput=true;
            }
        }
        printf("\n");
    }
   
    else if(sum==0)
        printf("0\n");
    }
    return 0;
}



显示编译错误
搜索更多相关主题的帖子: include 
2012-12-11 14:41
crystall
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:184
专家分:809
注 册:2012-12-1
收藏
得分:7 
回复 楼主 xuqingxiang
我这里编译成功,运行的结果也是正确的。
2012-12-11 16:13
crystall
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:7
帖 子:184
专家分:809
注 册:2012-12-1
收藏
得分:0 
回复 2楼 crystall
显示编译错误,什么错误? 贴出来看看
2012-12-11 16:13
jk_love
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:1
帖 子:196
专家分:965
注 册:2012-10-22
收藏
得分:7 
如果用gcc的话 加上
#define bool int
#define true 1
#define false 0
2012-12-11 16:22
xuqingxiang
Rank: 1
等 级:新手上路
帖 子:11
专家分:2
注 册:2012-11-8
收藏
得分:0 
你试下全000相加。。。
2012-12-11 21:36
xuqingxiang
Rank: 1
等 级:新手上路
帖 子:11
专家分:2
注 册:2012-11-8
收藏
得分:0 
回复 3楼 crystall
全0的时候不对
2012-12-11 21:36
xuqingxiang
Rank: 1
等 级:新手上路
帖 子:11
专家分:2
注 册:2012-11-8
收藏
得分:0 
    求大神帮助。。。。
2012-12-12 16:13
快速回复:请教大神哪个地方错了。。。。。两个大整数相加
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037784 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved