文章
13
粉丝
328
获赞
13
访问
138.7k
//直接选择排序,可以通过
#include<stdio.h>
int main(){
void sort(int s[],int l);
int n,a[1000],i,j,k,t;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++){
k=i;
for(j=i+1;j<n;j++)
if(a[j]<a[k])
k=j; //找到余下数中的最小数
t=a[k];a[k]=a[i];a[i]=t; //与第i个交换
}
for(i=0;i<n;i++){
if(a[i]%2==1)
printf("%d ",a[i]);
}
for(i=0;i<n;i++){
if(a[i]%2==0)
printf("%d ",a[i]);
}
return 0;
}
//冒泡选择排序,编译器是对的,但不知道为啥通过不了
#include<stdio.h>
int main(){
int a[1000],n,i,p,q,min,j=0,k=0;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
for(i=n;i>1;i--){
q=0;
for(p=0;p<i;p++){
q++;
if(a[p]>a[q]){
min=a[q];
a[q]=a[p];
a[p]=min; //冒泡排序,相邻两两比较,每趟将最大的放置后面
}
}
}
for(i=0;i<n;i++){
if(a[i]%2==1)
printf("%d ",a[i]);
}
f...
登录后发布评论
暂无评论,来抢沙发