一.冒泡排序
1.代码实现:
#include<stdio.h>
int main(int argc, const char *argv[])
{
int n[64]={0};
int i=0,j=0,s,t,s1;
while(1){
scanf("%d",&n[i]);
i++;
if(getchar()=='\n')
break;
}
printf("输入的数组为:");
s=i;
for(i=0;i<s;i++){
printf("%d ",n[i]);
}
putchar(10);
for(i=0;i<s-1;i++){
for(j=0;j<s-1-i;j++){
if(n[j]>n[j+1]){
t=n[j];
n[j]=n[j+1];
n[j+1]=t;
}
}
}
printf("排序后的数组为:");
for(i=0;i<s;i++){
printf("%d ",n[i]);
}
putchar(10);
return 0;
}
2.运行结果:
二.选择排序
1.代码实现:
#include<stdio.h>
int main(int argc, const char *argv[])
{
int n[64]={0};
int i=0,j=0,s,t,s1,min;
while(1){
scanf("%d",&n[i]);
i++;
if(getchar()=='\n')
break;
}
s=i;
printf("输入的数组为:");
for(i=0;i<s;i++){
printf("%d ",n[i]);
}
putchar(10);
for(i=1;i<s;i++){
min=i-1;
for(j=i;j<s;j++){
if(n[min]>n[j]){
min=j;
}
}
t=n[i-1];
n[i-1]=n[min];
n[min]=t;
}
printf("排序后的数组为:");
for(i=0;i<s;i++){
printf("%d ",n[i]);
}
putchar(10);
return 0;
}
2.运行结果: