#include<stdio.h>
void Sort1(int a[],int n);
void Sort2(int a[],int n,char style);
void Sort3(int a[],int n,char style);
int main()
{
int fen[10],i,j,n;
int count;
char word;
for(i=0;i<10;i++)
{
scanf("%d",&fen[i]);
}
Sort1(fen,10);
for(i=9;i>=0;i--)
{
printf("%d ",fen[i]);
}
printf("ÇëÊäÈë¸öÊý:");
scanf("%d",&count);
getchar();
printf("ÇëÊäÈëÑ¡Ôñ:");
scanf("%c",&word);
if(word=='d')
{
Sort2(fen,count,word);
for(i=0;i<count;i++)
{
printf("%d ",fen[i]);
}
}
else
{
Sort3(fen,count,word);
for(i=0;i<count;i++)
{
printf("%d ",fen[i]);
}
}
return 0;
}
void Sort1(int a[10],int n)
{
int i,j,t;
for(i=0;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
}
void Sort2(int a[10],int n,char style)
{
int i,j,t;
for(i=0;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]>a[j+1])
{
t=a[j];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
}
void Sort3(int a[10],int n,char style)
{
int i,j,t;
for(i=0;i<n;i++)
{
for(j=0;j<n-i;j++)
{
if(a[j]<a[j+1])
{
t=a[j];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
}
为啥升序没问题降序却有问题?这个我问了2次了,改了2次了,请各位认真看看!
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 叶落花枯 2022-11-29 19:38关注
冒泡排序写错了,以下面为例,其他的都是这个问题
void Sort1(int a[10],int n) { int i,j,t; for(i=0;i<n;i++) { for(j=0;j<n-i-1;j++) //第一处修改 { if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; //第二处修改 a[j+1]=t; //第三处修改 } } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
- ¥60 用visual studio编写程序,利用间接平差求解水准网
- ¥15 Llama如何调用shell或者Python
- ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
- ¥15 win10权限管理,限制普通用户使用删除功能
- ¥15 minnio内存占用过大,内存没被回收(Windows环境)
- ¥65 抖音咸鱼付款链接转码支付宝
- ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
- ¥15 blast算法(相关搜索:数据库)
- ¥15 请问有人会紧聚焦相关的matlab知识嘛?