冒泡排序编程连续,二维数组

img

代码如下:

img

1.

#include <stdio.h>
int main()
{
    int a[10]={3,6,1,7,8,4,9,5,10,2};
    int i,j,temp;
    for(i=1;i<9;i++)
    {
        for(j=1;j<9-i;j++)
        {
            if(a[j]<a[j+1]){
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }    
    }
    for(i=0;i<10;i++)
        printf("%d ",a[i]);
    return 0;
}

第2题:

img

代码:

#include <stdio.h>
int main()
{
    int a[20]={20,5,9,1,12,    1,3,5,9,15,3,20,15,3,9,10,12,15,19,23},b[20];
    int i,j,temp;

    printf("数组初值:\n");
    for(i=0;i<20;i++)
        printf("%d " ,a[i]);
    


    for(i=0;i<19;i++)
    {
        for(j=0;j<19-i;j++)
        {
            if(a[j]> a[j+1]){
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }    
    }
    printf("\n升序排序后的数组:\n");
    for(i=0;i<20;i++)
        printf("%d ",a[i]);

    printf("\n选出数组中不重复的数:\n");
    b[0] = a[0];
    j = 1;
    for (i=1;i<20;i++)
    {
        if(a[i] != a[i-1])
            b[j++] = a[i];
    }
    for(i=0;i<j;i++)
        printf("%d ",b[i]);
    return 0;
}



#include "stdio.h"
void main()
{
    int a[10]={8,100,9,30,-10,32,89,76,91,12};
    int i,j,temp,k;
    printf("初始数组:\n");
    for(i=0;i<10;i++)
        printf("%d\t",a[i]);
    for(i=2;i<9;i++)
    {
        for(j=8;j>=i;j--)
        {
            if(a[j]<a[j-1]){
                temp=a[j];
                a[j]=a[j-1];
                a[j-1]=temp;
            }
            
        }    
    }
    printf("排序后数组:\n");
    for(i=0;i<10;i++)
        printf("%d\t",a[i]);
}
 
#include "stdio.h"
int main()
{
    int a[10]={3,6,1,7,8,4,9,5,10,2};
    int i,j,temp,k;
    for(i=2;i<9;i++)
    {
        for(j=2;j<9-i;j++)
        {
            if(a[j]<a[j+1]){
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }    
    }
    for(k=0;k<10;k++)
        printf("%d ",a[k]);
    return 0;
}

#include <stdio.h>
int main()
{
      int a[20],b[20];
      int i,j,t,n=0;
      for(i=0;i<20;i++)
          scanf("%d",&a[i]);
      for(i=0;i<19;i++)
          for(j=0;j<19-i;j++)
          {
              if(a[j] > a[j+1])
              {
                  t = a[j];
                  a[j] = a[j+1];
                  a[j+1] = t;
              }
          }
      for(i=0;i<20;i++)
      {
          if(i==0)
          {
                j = a[0];
                b[n++] = j;
          }
          else if(j!=a[i])
          {
              b[n++] = a[i];
              j=a[i];
          }
          printf("%d ",a[i]);
      }
      printf("\n");
      for(i=0;i<j;i++)
          printf("%d ",b[i]);
      return 0;
}