| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1272 人关注过本帖
标题:求任意两个正数之和的程序中的问题
取消只看楼主 加入收藏
sainimu78
Rank: 2
等 级:论坛游民
帖 子:57
专家分:26
注 册:2010-1-27
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
求任意两个正数之和的程序中的问题
int ctoi(char c)    /*字符转整型的自定义函数*/
{
int d;
if(c==48)
  d=0;
  else if(c==49)
    d=1;
    else if(c==50)
      d=2;
      else if(c==51)
        d=3;
        else if(c==52)
          d=4;
          else if(c==53)
            d=5;
            else if(c==54)
              d=6;
              else if(c==55)
                d=7;
                else if(c==56)
                  d=8;
                  else if(c==57)
                    d=9;
return d;
}


main()
{
static int i,j,k,a=1,z[1000];
static char x[1000],y[1000];
printf("please input 567 <CR> 99445 to test");
/*输入567回车99445来测试 这两数的和为100012*/
scanf("%s%s",x,y);
for(i=0;i<=1000;i++)
  {
  if(x[i]=='\0')
    {
    for(j=0;j<=1000;j++)
      {
      if(y[j]=='\0')
        {
        break;
        }
      }
    break;
    }
  }

for(k=0;k<=1000;k++)
z[k]=0;
i=i-1;
j=j-1;/*找到输入的两个数的最后一位*/

for(k=0;a;k=k+1,i--,j--)
  {
  if(i<=-1)
    x[i]=0;
  if(j<=-1)
    y[j]=0;/*问题在这块↓ 为什么除了x[2]的值是对的 其它都不对 而y[j]都是对的?*/
  z[k]=z[k]+(ctoi(x[i])+ctoi(y[j]));
  printf("x[%d]=%d ,y[%d]=%d\n",i,ctoi(x[i]),j,ctoi(y[j]));
  if(z[k]>=10) /*如何改能让x[1]=6,x[0]=5 ?~*/
    {
    z[k]=z[k]-10;
    z[k+1]=1;
    }

  if(i<=0&&j<=0)
    break;
  }

for(k=0;k<=1000;k++)
  {
  if(z[k]=='\0'&&z[k]!=48)
    {
    k=k-1; /*找 和 的最后一位*/
    break;
    }
  }

/*for(k;k>0;k--)
  printf("%d",z[k]);*/


getch();
}
                                                                           


 /*该程序是算任意两正数之和*/

[ 本帖最后由 sainimu78 于 2010-2-11 17:41 编辑 ]
搜索更多相关主题的帖子: 正数 之和 
2010-02-11 15:41
sainimu78
Rank: 2
等 级:论坛游民
帖 子:57
专家分:26
注 册:2010-1-27
收藏
得分:0 
先感谢你回帖啊..

那要我怎么修改呢

你说的最关键的地方 那句 我是想把z[1000]里的每一个都赋值0
 
2010-02-11 21:18
sainimu78
Rank: 2
等 级:论坛游民
帖 子:57
专家分:26
注 册:2010-1-27
收藏
得分:0 
回复 4楼 wxx121wxx
辛苦你啦 谢谢你给的算法啊

我现在还是想知道 我那个到底怎么回事
2010-02-13 10:50
sainimu78
Rank: 2
等 级:论坛游民
帖 子:57
专家分:26
注 册:2010-1-27
收藏
得分:0 
回复 5楼 heartnheart
我又犯低级错误啦

哦没看清楚你改好的  .  
现在按你的意思改好了
不过不行呢. 输出结果不对
2010-02-13 10:52
sainimu78
Rank: 2
等 级:论坛游民
帖 子:57
专家分:26
注 册:2010-1-27
收藏
得分:0 
原来就是概念性错误啊.
我还以为 数组下标小于0没关系呢...

现在问题解决了哦  谢谢你们
2010-02-13 13:01
快速回复:求任意两个正数之和的程序中的问题
数据加载中...
 
   



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

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