| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 768 人关注过本帖
标题:新手求助,关于无效内存引用
取消只看楼主 加入收藏
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
结帖率:83.33%
收藏
已结贴  问题点数:20 回复次数:4 
新手求助,关于无效内存引用
#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
香菱
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
香菱
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2014-4-4
收藏
得分:0 
回复 8楼 wp231957
用long?
2014-04-04 21:20
快速回复:新手求助,关于无效内存引用
数据加载中...
 
   



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

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