标签:
1 #include "stdio.h" 2 void main() 3 {void read_data(int a[],int n); 4 void write_data(int a[],int n); 5 void comp(int a[],int n); 6 void insert(int a[],int n); 7 void bubble(int a[],int n); 8 int i,n=0,a[200]; 9 printf("请输入元素个数:"); 10 scanf("%d",&n); 11 printf("请选择排序方法(输入1选择法,输入2为插入法,输入3位为冒泡法):"); 12 scanf("%d",&i); 13 read_data(a,n); 14 if(i==1) 15 comp(a,n); 16 if(i==2) 17 insert(a,n); 18 if(i==3) 19 bubble(a,n); 20 write_data(a,n); 21 } 22 23 void read_data(int a[],int n) 24 {int i=0; 25 26 printf("请输入元素:"); 27 for(;i<n;i++) 28 scanf("%d",&a[i]); 29 } 30 31 void comp(int a[],int n) 32 { int i,j,t; 33 for(i=0;i<(n-1);i++) 34 for(j=i+1;j<n;j++) 35 if(a[i]>a[j]) 36 {t=a[i]; 37 a[i]=a[j]; 38 a[j]=t; 39 } 40 } 41 42 void insert(int a[],int n) 43 {int i=1,j=0,k,t; 44 for(;i<n;i++) 45 {for(j=0;j<i;j++) 46 if(a[i]<a[j]) 47 { 48 t=a[i]; 49 for(k=i;k>j;k--) 50 a[k]=a[k-1]; 51 a[j]=t; 52 } 53 } 54 } 55 56 void bubble(int a[],int n) 57 {int i,j,t; 58 for(i=0;i<n;i++) 59 for(j=0;j<(n-1);j++) 60 if(a[j]>a[j+1]) 61 {t=a[j+1]; 62 a[j+1]=a[j]; 63 a[j]=t; 64 } 65 } 66 67 void write_data(int a[],int n) 68 {int i=0; 69 for(;i<n;i++) 70 printf("%d\n",a[i]); 71 }
标签:
原文地址:http://www.cnblogs.com/cjxy1993/p/4339007.html