| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1916 人关注过本帖
标题:HDOJ 1002 杭电 OJ1002 题
只看楼主 加入收藏
iBreathebsb
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2014-7-20
结帖率:100%
收藏
 问题点数:0 回复次数:2 
HDOJ 1002 杭电 OJ1002 题
图片附件: 游客没有浏览图片的权限,请 登录注册

题目网址也就是大数加法 一直CE  可是我本地运行就可以 不知道哪里错了  求指导
思路这样 首先把两个 作为字符串保存到数组
cti函数 对于每个数组的元素都减去‘0’ 这样就可以当做int用了
sum函数求和并输出;
http://acm.hdu.

程序代码:
#include<stdio.h>
#include<string.h>
void cti(char A[], char B[]);
void sum(char A[], char B[], int C[]);
int main()
{
    int t,i;
    scanf("%d", &t);
    char A[1000], B[1000];//9
    int C[1002]= {0};
    for(i=0;;i<t; i++)
    {
       scanf("%s",A);
       scanf("%s",B);
       printf("%s + %s = ",A,B);
       cti(A,B);
       sum(A,B,C);
       printf("\n\n");
    }
}
void cti(char A[] ,char B[])
{
    int s1, s2;
    s1 = strlen(A);
    s2 = strlen(B);
    int i;
    for (i=0;i<s1;i++)
    A[i]=A[i]-'0';
    for (i = 0; i < s2; i++)
        B[i]=B[i]-'0';
}

void sum(char A[], char B[], int C[])
{    int s, s1, s2;
        s1 = strlen(A);
        s2 = strlen(B);
        s=s1>s2?s1:s2;
    int i;
    for (i = 0; i < s1&&i<s2; i++)
          {C[i] = A[s1-1-i] + B[s2-1-i];}
    if(i==s1)  for(;i<s;i++) C[i]+=B[s2-1-i];
    for (i = s-1 ; i >= 0; i--)
        if(C[i]>=10)
        {printf("%d",C[i]-10); C[i+1]+=1; }
        else printf("%d",C[i]);
}
搜索更多相关主题的帖子: 字符串 元素 
2014-07-24 13:45
iBreathebsb
Rank: 2
等 级:论坛游民
帖 子:11
专家分:10
注 册:2014-7-20
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
运行结果正确啊、、、
2014-07-24 13:47
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
收藏
得分:0 
回复 2 楼 iBreathebsb
为什么不试一下9+9?
2014-07-24 17:01
快速回复:HDOJ 1002 杭电 OJ1002 题
数据加载中...
 
   



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

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