一道c语言的简单题目 求帮忙

写一个排序函数sort功能是对n个数进行降序排列main函数中输入十个数调用sort函数后输出排序结果... 写一个排序函数sort 功能是对n个数进行降序排列 main函数中输入十个数 调用sort函数后 输出排序结果 展开
 我来答
test_pop
2013-06-28 · TA获得超过376个赞
知道小有建树答主
回答量:332
采纳率:100%
帮助的人:238万
展开全部
#include <stdio.h>



#define NUMSIZE 5
int a[NUMSIZE];


void PopSort()
{
 int i, j, temp;
 
 temp = 0;
 
 for(i=1; i<NUMSIZE; i++)
 {
  for(j=0; j<NUMSIZE-i; j++)
  {
   if(a[j]<a[j+1])
   {
    temp = a[j];
    a[j] = a[j+1];
    a[j+1] = temp;
   }
  }
 }
 return;
}
int main()
{
 int i;
 for(i=0; i<NUMSIZE; i++)
 {
  printf("a[%d]: ", i);
  scanf("%d", &a[i]);
  getchar();
 }
 PopSort();
 printf("After sort: \n");
 for(i=0; i<NUMSIZE; i++)
 {
  printf("%d ", a[i]);
 }
 printf("\n");
 return 0;
}

n个数这里宏定义设置为5个。

#define NUMSIZE 5

ksgno1
2013-06-28 · TA获得超过120个赞
知道小有建树答主
回答量:128
采纳率:0%
帮助的人:120万
展开全部
想用什么排序算法实现?数是整型?
追问
整形
追答
/*直接冒泡了*/
#include<stdio.h>
typedef enum {size = 10} _const;
void bubbleSort(int arr[],int n) {
int i,j,temp;
for(i = 0;i < n;i++) {
for(j = 0;j < n-i-1;j++) {
if(arr[j] < arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
void show(int arr[],int n) {
int i;
--n;
for(i = 0;i < n;i++) printf("%d ",arr[i]);
printf("%d\n",arr[n]);
}
int main()
{
int arr[size],i;
for(i = 0;i < size;i++) scanf("%d",&arr[i]);
bubbleSort(arr,size);
show(arr,size);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式