6-17 绝对值排序 (10分)
输入n个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。
输入格式:
每行输入一个n,然后下一行输入n个整形数字,(所有数据范围<=100)
输出格式:
输出n个绝对值从大到小排序的整型数字,每两个数字之间有一个空格。
函数接口定义:
在这里描述函数接口。例如:
void cn(int a[],int n);
在这里解释接口参数。例如:其中 a 和 n 都是用户传入的参数,a接收数组起始地址,n接收数据个数;在cn函数内部完成n个数的输入、排序和输出。
裁判测试程序样例:
在这里给出函数被调用进行测试的例子。例如:
#include#includevoid cn(int a[],int n);
int main()
{
int n;
while(~scanf("%d",&n)&&n!=0)
{
int a[100];
cn(a,n);
printf("\n");
}
return 0;
}
/* 请在这里填写答案 */
输入样例:
在这里给出一组输入。例如:
5
1 8 4 3 2
输出样例:
在这里给出相应的输出。例如:
8 4 3 2 1
#include#includevoid cn(int a[],int n)
{
int i,j,t;
for(i=0;iscanf("%d",&a[i]);//因为题目要求,所以就在函数里面输入了//
for(i=0;i{
for(j=i+1;j{
if(abs(a[i]){
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
}
for(i=0;iprintf("%d “,a[i]);
printf(”%d",a[n-1]);//格式要求,两个数之间要有一个空格//
return ;//结束运算//
}
int main()
{
int n;
while(~scanf("%d",&n)&&n!=0)
{
int a[100];
cn(a,n);
printf("\n");
}
return 0;
}