求助,为什么输出错误
将有10个元素的int型数列输入10个数,将其按大小排序后输出;再输入一个数将其插入数列的正确位置后在次输出这个有11个元素的数列。我是这样做的
程序代码:
#include<stdio.h> main() { int a[10],b[11],i,j,n,temp; printf("enter ten numbers\n"); for(i=0;i<10;scanf("%d",&a[i++])); for(i=0;i<10;printf("%d\t",a[i++])); for(i=0;i<10;i++) for(j=0;j<9;j++) { if(a[j]<a[j+1]) temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } printf("enter a number to 'n'"); scanf("%d",&n); for(i=0;i<=10;i++) { if(n>a[i]) b[i]=a[i]; if(n<a[i]) b[i]=a[i-1]; if(n>a[i-1]&&n<a[i]) b[i]=n; } for(i=0;i<=10;i++)printf("%d\t",b[i]); return 0; }但是在插入n后输出的数列的最后一个元素也就是b[10]不能正常输出,输出的b[10]是b[0]的值,求指点错在哪里了。
谢谢。。