冒泡程序
***********************************************************************************
#include <stdio.h>
#define N 10
int main()
{
static int a[N] ;
int i,j,t;
for(i=0;i<N;i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(i=0;i<N;i++)
{
printf("%-4d",a[i]);
}
printf("\n");
for(i=0;i<N-1;i++) // 需要排序的次数,有N个数,需要排序N-1次
{
for(j=0;j<N-1-i;j++) // 每一次排序需要比较的次数 N个数需要比较N-1次
{
if(a[j] > a[j+1])
{
t = a[j] ;
a[j] = a[j+1];
a[j+1] = t;
}
}
}
printf("冒泡排序(从小到大):");
for(i=0;i<N;i++)
{
printf("%-4d",a[i]);
}
printf("\n");
for(i=0;i<N-1;i++) // 需要排序的次数,有N个数,需要排序N-1次
{
for(j=0;j<N-1-i;j++) // 每一次排序需要比较的次数 N个数需要比较N-1次
{
if(a[j] < a[j+1])
{
t = a[j] ;
a[j] = a[j+1];
a[j+1] = t;
}
}
}
printf("冒泡排序(从大到小):");
for(i=0;i<N;i++)
{
printf("%-4d",a[i]);
}
printf("\n");
return 0;
}
*************************************************************************************
逆序
#include <stdio.h>
int main()
{
static int a[10] ;
int i,t;
int SIZE=sizeof(a)/sizeof(int) ;
for(i=0;i<sizeof(a)/sizeof(int);i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(i=0;i<sizeof(a)/sizeof(int);i++)
{
printf("%-4d",a[i]);
}
printf("\n");
for(i=0;i<sizeof(a)/sizeof(int)/2;i++)
{
t = a[i] ;
a[i] = a[SIZE - 1 -i];
a[SIZE -1-i] = t;
}
for(i=0;i<sizeof(a)/sizeof(int);i++)
{
printf("%-4d",a[i]);
}
printf("\n");
return 0;
}
领卓教育