龟速学习visualc++3

刚刚看到书上一个折半插入排序的程序,看来看去不是很明白,上网搜索了下,基本连抄带改把程序运行出来了,感觉没有什么问题了,可是看起来还是有点问题,显示的是:
Debug Error!
Program:...
Module:...cuments/....
File:

Run-Time Check Failure #2 - Stack around the variable ' a' was corruptred.
(Press Retry to debug the application)

郁闷ing...先贴程序

// array_4.cpp : Defines the entry point for the console application.
//binaryInsertSort
#include "stdafx.h"
#include <iostream>
using namespace std;
const int num=16;

int main(int argc, _TCHAR* argv[])
{
int a[num]={9,8,7,6,5,4,3,2,11,12,13,16,15,14,19,1};
    int left,right,middle,tempRecord;
    for(int i=1;i<num;i++)
{
  tempRecord=a[i];//将当前待插入记录保存在临时变量中
  left=0;
  right=num-1;//记录已排好序序列的左右位置
  while(left<=right)//开始查找待插入记录的正确位置
  {
   middle=(left+right)/2;//记录中间位置
   if(tempRecord<a[middle])//如果待插入记录比中间记录小,就在左一半中查找,否则,在右一半中查找
    right=middle-1;
   else
    left=middle+1;
  }
  //将前面所有大于当前待插入记录的记录后移
  for(int j=i-1;j>=left;j--)
   a[j+1]=a[j];
  a[left]=tempRecord;//将待插入记录回填到正确位置.
}
for(int i=0;i<=num-1;i++)
  cout<<a[i]<<" ";
cout<<endl;
return 0;
}

懒了,先找会bug...找不到就睡觉,明天接着看...
刚才自己看了会郁闷地不得了了...死活看不出来啊,就把这个链接发到群里了去了,拉着整群的人看...本来他们都讨论着聚餐那...hoho~~~先是请教了传说中的程序猿H同学...H同学显然是对vc有点距离...他指示我要转交河马...果然那句有困难找组织没说错,光荣而伟大的党组织的公务猿河马同志告知改为变量的声明,然后问题迎刃而解...虽然还是不能正确排序...但是debug error没了...修改方法如下:
int a[num]={9,8,7,6,5,4,3,2,11,12,13,16,15,14,19,1};
---->
static int a[num]={9,8,7,6,5,4,3,2,11,12,13,16,15,14,19,1};
over...排序的问题明天继续...
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值