#include<stdio.h>
int main()
{
int a[10]={ 3,6,1,7,8,4,9,5,10,2}, i, j, k, t;
printf("数组中的初值是:\n");
for(i=0;i<10;i++)
{
printf("%-4d",a[i]);
}
for(i=1;i<7;i++)
{
for(j=1;j<7-i;j++)
{
if(a[j]>a[j-1])
{
t=a[j];
a[j]=a[j-1];
a[j-1]=t;
}
}
}
printf("\n排序后的数组元素是:\n");
for(i=1;i<8;i++)
{
printf("%-4d",a[i]);
}
printf("\n");
return 0;
}

来个人看看我哪错了:定义一个大小为10的整型一维数组,初始化所有数组元素,编程对中间的8个元素进行降序排序,即第一个和最后一个元素不参与排序
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- a5156520 2021-11-01 17:25关注
稍微改了下,你看看:
int main() { int a[10]={ 3,6,1,7,8,4,9,5,10,2}, i, j, k, t; printf("数组中的初值是:\n"); for(i=0;i<10;i++) { printf("%-4d",a[i]); } for(i=1;i<9;i++) { for(j=i+1;j<9;j++) { if(a[j]>a[i]) { t=a[i]; a[i]=a[j]; a[j]=t; } } } printf("\n排序后的数组元素是:\n"); for(i=0;i<10;i++) { printf("%-4d",a[i]); } printf("\n"); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报