c新手吧 关注:8,602贴子:48,099
  • 5回复贴,共1

各位大神能说一下吗,谢谢了!

只看楼主收藏回复

15个数的排序,不规定数的大小为什么还要i,j<15?别喷,我是个小白。还请大神来解答一下。
#include <stdio.h>
void main()
{int i,j,a[15],t;
printf("input 15 numbers:\n");
for(i=0;i<15;i++)
scanf("%d",&a[i]);
for(j=0;j<14;j++)
for(i=0;i<14-j;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
for(i=0;i<15;i++)
printf("%5d",a[i]);
printf("\n");
}
里面的for循环好迷,我看不懂,可以解释一下吗,非常感谢!


IP属地:安徽1楼2016-11-29 17:59回复
    这里的i,j不是指你输入的数据,而是指循环的次数。


    IP属地:四川来自Android客户端2楼2016-11-30 08:17
    收起回复
      scanf前面的那个for,i=0;i<15;i--是指这个for循环要进行15次,而其中的scanf也要进行15次,所以就相当于输入15个数。


      IP属地:四川来自Android客户端3楼2016-11-30 08:22
      收起回复
        之后的是用的冒泡排序法,两个for循环嵌套,外层循环是循环的次数,内层循环是真正的排序。


        IP属地:四川来自Android客户端4楼2016-11-30 08:24
        回复