| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 609 人关注过本帖
标题:[求助] 编译成功,但运行不了????
只看楼主 加入收藏
52wd
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2005-7-16
收藏
 问题点数:0 回复次数:1 
[求助] 编译成功,但运行不了????
关于从数组中找出素数和个数:
#include<math.h>
main()
{int j=1,i,m,n,a[5],b[5];
 printf("please input the number:");
 for(i=1;i<=5;i++)
 scanf("%d,",&a[i]);
 for(i=1;i<=5;i++)
 {for(m=2;m<5;m++)
  if(a[i]%m==0)
   {b[j]=a[i];j++;}
 }
 n=j-1;
 printf("the total of prime number is:%d\n",n);
 printf("the prime number is:");
 for(j=1;j<=n;j++)
 printf("%d,",b[j]);
 }
运行后,出现:


16位MS-DOS子系统

NTVDM CPU 遇到无效的指令。
CS:055c IP:022a OP:ff e8 3f 01 c4 选择“关闭”终止应用程序。


这是为什么?
搜索更多相关主题的帖子: 编译 运行 
2005-07-17 00:34
yuki
Rank: 2
等 级:新手上路
威 望:5
帖 子:508
专家分:0
注 册:2005-2-4
收藏
得分:0 
以下是引用52wd在2005-7-17 0:34:29的发言: 关于从数组中找出素数和个数: #include<math.h> main() {int j=1,i,m,n,a[5],b[5]; printf("please input the number:"); for(i=1;i<=5;i++) scanf("%d,",&a[i]); for(i=1;i<=5;i++) {for(m=2;m<5;m++) if(a[i]%m==0) {b[j]=a[i];j++;} } n=j-1; printf("the total of prime number is:%d\n",n); printf("the prime number is:"); for(j=1;j<=n;j++) printf("%d,",b[j]); } 运行后,出现: 16位MS-DOS子系统 NTVDM CPU 遇到无效的指令。 CS:055c IP:022a OP:ff e8 3f 01 c4 选择“关闭”终止应用程序。 这是为什么?
我帮你指出的地方数组越界,当i=5时a[5]无此元素,你声明的int a[5];a包含五个元素,下标从0~4

我们都在命运湖上荡舟划桨,波浪起伏使我们无法逃离孤行;如果我们迷失方向,波浪将指引我们穿过另一天曙光
2005-07-17 11:49
快速回复:[求助] 编译成功,但运行不了????
数据加载中...
 
   



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

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