C++编程问题,代码如下,用的是VC++6.0,编译没错,结果也出来。但是结果出来的瞬间程序错误。请高手帮助

#include<iostream.h>intmain(){inta[2],temp;int*p,*q,i,j,n,m;cout<<"";for(i=0;i<3;i++)... #include<iostream.h>
int main()
{
int a[2],temp;
int *p,*q,i,j,n,m;
cout<<"";
for(i=0;i<3;i++)
{
cin>>a[i];
}
for(j=0;j<2;j++)
{
for(n=j+1;n<3;n++)
{
if(a[n]>a[j])
{
p=&a[n];
q=&a[j];
temp=*p;
*p=*q;
*q=temp;
}
}
}
for(m=0;m<3;m++)
{
cout<<""<<a[m]<<endl;
}
return 0;
}
展开
 我来答
kaixingui2012
2014-09-17 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6435万
展开全部
int a[2],temp; 你定义两个空间,却要输入三个数,撑爆了(数组越界访问,溢出)!改大数组就好了
int a[20],temp;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式