main()
{
int i,j,t,n=0;
int a[10],b[10]={0}; //定义一个一维数组用以存放输入的10个整数
for(i=0;i<10;i++)
{printf("input the %d num:",i+1);
scanf("%d",&a[i]);} //输入数据
for(i=0;i<10;i++)
{
if(a[i]%3==0) {b[n]=a[i];n++;} //将能被3整除的数赋予数组b
}
for(i=0;i<n;i++)
{
for(j=n;j>i;j--)
{
if(b[j]>b[j-1])
{t=b[j-1];b[j-1]=b[j];b[j]=t;}
}
printf("%d,",b[i]);
}
}
程序经过编译调试可以正常运行,数据将以从大到小的顺序输出。本人也是新手,所以源码有些繁琐,算法也比较简单,循环次数多,还望各位高手多多指点!!