为了账号安全,请及时绑定邮箱和手机立即绑定

一道数组排序类型的题目,按照以下程序输入为什么无法运行?

一道数组排序类型的题目,按照以下程序输入为什么无法运行?

C
Rebellious_2016 2016-12-07 19:58:45
原题:有一个已经排好序的数组,要求输入一个数后,按原来的排序规律将它插入数组中。 编写的程序如下: #include <stdio.h> int main() { int a[10]={3,12,17,24,35,46,57,68,78,85}; int i,j,m,t; printf("Please input a new number:m=\n"); a[11]={3,12,17,24,35,46,57,68,78,85,m}; for(i=0;i<11;i++) scanf("%d",&m); printf("\n"); for(j=0;j<10;j++) for(i=0;i<10-j;i++) if(a[i]>a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } printf("The sorted numbers are:\n"); for(i=0;i<11;i++); printf("%d",a[i]); printf("\n"); return 0; }整体的思想是想要先将新输入的数当成a[11]输入到数组中,构成一个新的11个数的数组,然后按照正常的冒泡排序的方法对数组中的11个数进行排序。但是在VC++6.0中显示有错误。求大神解答!
查看完整描述

2 回答

?
Yexiaomo

TA贡献152条经验 获得超157个赞

因为在开头定义时, 你已经指定了数组 a 的长度, 为 10

但是下面你又 说 数组 a 的长度为 11, 所以编译器 会出错, 因为数组的长度在 定义时就确定了, 不能改变了

查看完整回答
1 反对 回复 2016-12-07
  • Yexiaomo
    Yexiaomo
    .... 其实我更建议你重新看看书, 或者视频
?
qq_浓嬷嬷_0

TA贡献6条经验 获得超1个赞

你的写法太强悍了
查看完整回答
反对 回复 2016-12-08
  • 2 回答
  • 1 关注
  • 1383 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信