| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 768 人关注过本帖
标题:新手求助,关于无效内存引用
只看楼主 加入收藏
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
结帖率:83.33%
收藏
已结贴  问题点数:20 回复次数:11 
新手求助,关于无效内存引用
#include"stdio.h"
#include"math.h"
int main()
{
 int N,i,n,x,f[10];
 scanf("%d",&N);
 for(n=1;n<=N;n++)
 scanf("%d",&f[n]);
 n=1;
 while(n<=N)
{
 x=f[n];
 i=2;
 printf("%d =",f[n]);
 while(i<=sqrt(x))
 {
  while(x%i==0)
  {
   printf(" %d",i);
   x/=i;
   printf(" *");
   if(x==1)
   {printf(" %d",i);
   goto k;}
   else if(i>sqrt(x))
   {printf(" %d\n",x);
   goto k;}
  }
  i++;
 }
 if(i>sqrt(x))
 printf(" %d\n",x);
 k:n++;
}
},我想问你一下,上面面这个程序是分解质因数的,但是当输入一个很大的数时,输出就有问题,并且部分测试用例通不过,老说是无效内存引用,能帮我看一下哪出问题了吗?谢谢
搜索更多相关主题的帖子: include 
2014-04-04 11:50
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:5 
你关注一下INT类型的最大值  和cpU也有关

DO IT YOURSELF !
2014-04-04 12:55
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:5 
当输入的N很大时,你的数组“int N,i,n,x,f[10];”就不够用了。
2014-04-04 13:46
ying8501
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:6
帖 子:1092
专家分:1446
注 册:2008-11-24
收藏
得分:0 
尽量不用goto。


[ 本帖最后由 ying8501 于 2014-4-4 20:38 编辑 ]
2014-04-04 17:52
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
收藏
得分:0 
回复 2楼 wp231957
试了,long,unsigned long,还有long long,甚至double,都不行
2014-04-04 20:32
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
收藏
得分:0 
回复 4楼 ying8501
楼主,首先谢谢你的程序,但是当分解一个大数时,程序有问题,比如这个大数是10^12
2014-04-04 21:01
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
收藏
得分:0 
回复 3楼 ying8501
那该怎么办,实在弄不明白
2014-04-04 21:02
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
超大数本来就不能用INT一类的来计算

DO IT YOURSELF !
2014-04-04 21:12
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
收藏
得分:0 
回复 8楼 wp231957
用long?
2014-04-04 21:20
fl8962
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
注 册:2012-10-17
收藏
得分:5 
回复 9楼 香菱
long也不够大。。。大数用数组模拟是一种方法。

想抽苏烟了。
2014-04-04 22:06
快速回复:新手求助,关于无效内存引用
数据加载中...
 
   



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

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