房天下 > 房天下问答 > 业主生活 > 其他
  • 问个简单的c语言问题

    5.有一个已经从小到大排好序的整数数组:a[30]={6,9,12,15,19,23,45,67,89,98},现输入一个整数x,要求按原来的升序规律将它插入到数组中。我现在编的如下 #include<conio.h>#include<stdio.h>void main(){ int i,min,j,c,x,a[30]={6,9,12,15,19,23,45,67,89,98}; clrscr(); scanf("%d",&x); a[10]=x; for(i=0;i<=10;i++) { min=i; for(j=i+1;j<=11;j++) if(a[min]>a[j])min=j; c=a[i]; a[i]=a[min]; a[min]=c; printf("%5d",a[i]); }}但是第一个数为什么就是0呢 最后一个数又没有了 想不通

    提问者:紫蝴蝶的梦想

    发布于2010-08-16

共1个回答
  • 蓝闲警察 丨Lv 4
    for(j=i+1;j<=11;j++)你这里多循环了一次 等于要和你的数组里面的第十二个元素也进行比较 你申请了30个元素大小的数组 没有初始化的元素会自动初始化为0 所以最小的当然就是0了 而且输出时会少掉原有的一个数改成for(j=i+1;j<11;j++)程序就正确了
    +1 2010-08-17 举报
热门人气推荐
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。