| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1051 人关注过本帖
标题:用数组表示的int数 乘法得出的结果怎么这么变态。。。。求高手指点菜鸟(第 ...
取消只看楼主 加入收藏
sd791002
Rank: 2
等 级:论坛游民
帖 子:88
专家分:87
注 册:2010-4-3
结帖率:85.71%
收藏
已结贴  问题点数:10 回复次数:4 
用数组表示的int数 乘法得出的结果怎么这么变态。。。。求高手指点菜鸟(第一次发帖)
#include <stdio.h>
#define MAX 10
void main()
{

    int a[MAX]={7},b[MAX]={7},c[2*MAX];
    int i,j,x,y,z,w;
        for(i=0;i<MAX;i++)
    {
        for(j=0;j<MAX;j++)
        {
            x=a[i]*b[j];
            y=x/10;
            z=x%10;
            w=i+j;
            c[w]=c[w]+z;                         //w=15.   i=5,j=10 or  i=10,j=5  or i=7,j=8.......
            c[w+1]=c[w+1]+y+c[w]/10;
            c[w]=c[w]%10;
        }
    }






    for(i=MAX-1;i>=0;i--)
    {   
        printf("%d",a[i]);
        
    }
    printf("\n");
        for(i=MAX-1;i>=0;i--)
    {   
        printf("%d",b[i]);
        
    }
    printf("\n");
        for(i=2*MAX-1;i>=0;i--)
    {   
        printf("%d",c[i]);
        
    }
    printf("\n");
}
搜索更多相关主题的帖子: int 乘法 点菜 发帖 
2010-04-06 20:11
sd791002
Rank: 2
等 级:论坛游民
帖 子:88
专家分:87
注 册:2010-4-3
收藏
得分:0 
a[]和b[]  随便输入一些数字  用于 测试

结果 最简单的7*7居然是个负数   我哭了
2010-04-06 20:41
sd791002
Rank: 2
等 级:论坛游民
帖 子:88
专家分:87
注 册:2010-4-3
收藏
得分:0 
1024位的大数相乘   所以用数组来表示大数      然后  自己写大数的加减乘除法

乘法思路明显是对的嘛  但是结果总是出问题
2010-04-06 20:54
sd791002
Rank: 2
等 级:论坛游民
帖 子:88
专家分:87
注 册:2010-4-3
收藏
得分:0 
回复 5楼 Devil_W
这个。。。贴子我看过  不过是用的C++写的啊   我不仅要大数的加减乘除 我还要做其他很多运算的  就想用标准C写出来  已经有思路了 但是具体实施的过程中出了问题  所以来请教
2010-04-06 21:06
sd791002
Rank: 2
等 级:论坛游民
帖 子:88
专家分:87
注 册:2010-4-3
收藏
得分:0 
回复 7楼 zghnxzdcx
真心膜拜!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2010-04-06 22:07
快速回复:用数组表示的int数 乘法得出的结果怎么这么变态。。。。求高手指点菜鸟 ...
数据加载中...
 
   



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

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