| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1199 人关注过本帖
标题:高精度算法,求指点为啥运行不了
只看楼主 加入收藏
萍萍阿涛
Rank: 1
等 级:新手上路
帖 子:6
专家分:9
注 册:2016-5-30
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:8 
高精度算法,求指点为啥运行不了
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<malloc.h>
int an,bn,fa=1,fb=1;         /* 把an,bn,k设为全局变量,an纪录第一个高精度数组的位数,bn纪录第二个高精度数组的位数,k纪录输出结果的位数*/
char b1[250], b2[250]; /*纪录需要计算的两个高精度数据 */  
void input(int a1[],int a2[])    /*函数input为输入函数,用来纪录两个待计算的高精度数据,以数组首地址为参数.以实现返回两个高精度数据*/
{
    int i,ai=1,bi=1;
    scanf ( "%s%s", b1, b2 );                      /*输入两个高精度数据 */
    an = strlen( b1 );                             /*an纪录b1的位数 */
    bn = strlen( b2 );                            /*bn纪录b2的位数 */
    if(b1[0]==45) { an--; fa=-1;ai=0;}           /*判断数组的符号 */
    if(b2[0]==45) { bn--; fb=-1;bi=0;}
    for (i=0; i<an; i++,ai++)
    {a1[i]=b1[an-ai]-'0'; printf("%d",a1[i]);}     /*把字符形数据b1转为整数形数据,同样用数组纪录 */
    for (i=0; i<bn; i++,bi++) a2[i]=b2[bn-bi]-'0';    /* 同上  */
    return;
}
void addition(int a[],int b[],int q)              /*高精度加法运算*/
{
    int i,c[251]={0},k;
    if(fa*fb>0||q)
    {
        if(an>bn) k=an;
        else k=bn;                                            /*用k纪录结果的最小位数*/
        for(i=0;i<k;i++)
        {
            c[i]=a[i]+b[i]+c[i];
            c[i+1]=(int)c[i]/10;
            c[i]=(int)c[i]%10;
         }                                                 /*高精度加法运算过程*/
        if(c[k]) k++;                                     /*判断最后结果的位数*/
        if(fa<0&&q||fa<0) printf("-");
        for(i=k-1;i>=0;i--)  printf("%d",c[i]);         /*输出结果*/
        return;
    }
   
    return;
}
搜索更多相关主题的帖子: include 
2016-05-30 20:54
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:0 
最好能给个完整的可运行代码。
2016-05-31 09:23
萍萍阿涛
Rank: 1
等 级:新手上路
帖 子:6
专家分:9
注 册:2016-5-30
收藏
得分:0 
我得到的就是这个,就是不能完整,怎么让它跑起来呢??
2016-05-31 13:38
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:2 
用main函数引用。但是怎么用只看代码太费事,还是要搞清楚原理和目的。
2016-05-31 13:43
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:10 
回复 楼主 萍萍阿涛
说说是什么数的高精度算法?
看似是很大的整数加法运算?

[此贴子已经被作者于2016-5-31 15:40编辑过]

2016-05-31 15:39
wanglianyi1
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:647
专家分:2067
注 册:2015-6-18
收藏
得分:8 
没有main函数,没有入口如何运行呢,你要补全代码才行吧
2016-05-31 15:49
萍萍阿涛
Rank: 1
等 级:新手上路
帖 子:6
专家分:9
注 册:2016-5-30
收藏
得分:0 
回复 5楼 吹水佬
嗯嗯 谢谢
2016-05-31 20:18
萍萍阿涛
Rank: 1
等 级:新手上路
帖 子:6
专家分:9
注 册:2016-5-30
收藏
得分:0 
谢谢大家,已找到入口
2016-05-31 20:19
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用萍萍阿涛在2016-5-31 20:19:22的发言:

谢谢大家,已找到入口

你的代码运行的结果正确吗?

2016-06-01 16:49
快速回复:高精度算法,求指点为啥运行不了
数据加载中...
 
   



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

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