| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5320 人关注过本帖
标题:程序结果运行正确,,可是弹出一个停止工作的提示框
只看楼主 加入收藏
hz_girl
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2012-10-20
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:4 
程序结果运行正确,,可是弹出一个停止工作的提示框
我在C/C++程序设计学习与实验系统软件上编写下面程序:
程序代码:
/* Note:Your choice is C IDE */
#include "stdio.h"
#define N 10
void main()
{
   double a[N],temp,number;
   int i,j,k=0;
   printf("Input %d numbers:\n",N);
   for(i=0;i<N;i++)
   scanf("%lf",&a[i]);
   for(i=0;i<N-1;i++)
   for(j=0;j<N-i-1;j++)
   if(a[j]>a[j+1]){
   temp=a[j];
   a[j]=a[j+1];
   a[j+1]=temp;
   }
   for(i=0;i<N;i++)
   printf("%6.2f",a[i]);
   printf("\n Insert a number:");
   scanf("%lf",&number);
    if(number>=a[N-1])
    a[N]=number;
    else {
   for(i=0;i<N;i++){
   if(a[i]>=number ){
      temp=a[i];
      a[i]=number;
   for(j=N;j>i;j--)
       a[j]=a[j-1];
       a[i+1]=temp; 
   break;
   }
   }
    }
    printf("The new array:\n");
   for(i=0;i<=N;i++)
   printf("%6.2f",a[i]);
   printf("\n");
}
发现,,程序结果是运行正确的,可是运行后弹出了下面框:

请问是什么原因啊!

不知道哪段写得有问题
图片附件: 游客没有浏览图片的权限,请 登录注册


 

[ 本帖最后由 hz_girl 于 2013-3-23 14:52 编辑 ]
搜索更多相关主题的帖子: 程序设计 number 
2013-03-23 14:35
梅可伟梅可伟
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:69
专家分:180
注 册:2013-3-11
收藏
得分:5 
能够运行,没有出现你所说的情况,你用的什么软件?
2013-03-27 21:49
lsnaimei
Rank: 2
等 级:论坛游民
帖 子:25
专家分:47
注 册:2012-3-30
收藏
得分:5 
似乎好像是溢出了
2013-03-27 22:09
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:5 
for(i=0;i<=N;i++)   printf("%6.2f",a[i]);

总有那身价贱的人给作业贴回复完整的代码
2013-03-27 22:18
锋了
Rank: 7Rank: 7Rank: 7
来 自:向日葵幼儿园
等 级:黑侠
威 望:2
帖 子:306
专家分:586
注 册:2012-10-27
收藏
得分:5 
鼓励经过自己思考后再提问,经过自己思考才能有收获,不怕错,错了以后就不会错了
看在这份上,我就帮你看了下你那坑长的代码
我这linux下好没装得编译器,就不帮你编译了
你要应该说清楚你的意图,程序要做什么
/* Note:Your choice is C IDE */
#include "stdio.h"
#define N 10
void main()
{
   double a[N],temp,number;
   int i,j,k=0;
   printf("Input %d numbers:\n",N);
   for(i=0;i<N;i++)
   scanf("%lf",&a[i]);  
   for(i=0;i<N-1;i++)
   for(j=0;j<N-i-1;j++)  //这里你是想要用冒泡法从小到大排序吧,如果是的话这里应该是for(j=i;j<N-2;j++),
   if(a[j]>a[j+1]){       //因为i这里已经是排列好的了,就不用再遍历比较了。还有你这j<N-i-1是意欲何为呢???我也记不清了
   temp=a[j];
   a[j]=a[j+1];
   a[j+1]=temp;
   }
   for(i=0;i<N;i++)             //后面的就没看到了
   printf("%6.2f",a[i]);
   printf("\n Insert a number:");
   scanf("%lf",&number);
    if(number>=a[N-1])
    a[N]=number;
    else {
   for(i=0;i<N;i++){
   if(a[i]>=number ){
      temp=a[i];
      a[i]=number;
   for(j=N;j>i;j--)
       a[j]=a[j-1];
       a[i+1]=temp;
   break;
   }
   }
    }
    printf("The new array:\n");
   for(i=0;i<=N;i++)
   printf("%6.2f",a[i]);
   printf("\n");
}


[ 本帖最后由 锋了 于 2013-3-27 22:27 编辑 ]
2013-03-27 22:26
快速回复:程序结果运行正确,,可是弹出一个停止工作的提示框
数据加载中...
 
   



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

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