- 主题
- 9
- 帖子
- 210
- 精华
- 0
- 积分
- 340
- C币
- 225 枚
- 在线时间
- 115 小时
- 注册时间
- 2011-1-26
- 最后登录
- 2011-5-8
- 性别
- 男
 
- 主题
- 9
- 帖子
- 210
- C币
- 225 枚
- 在线时间
- 115 小时
|
发表于 2011-2-11 23:50:14
|显示全部楼层
作为一个练习,还望大家指点。- #include <stdio.h>
- int i,len;
- int main (void) {
-
- void sort (int a[],int n,int m);
- void disp (int a[]);
- printf ("Enter length of array:\n");
- scanf ("%i",&len);
- int a[len];
- printf ("Enter element in array:\n");
- for(i=0;i<len;i++) {
- scanf ("%i",&a[i]);
- }
- printf ("The array before the sort:\n");
- disp(a);
- printf ("\nAfter sorted...\n");
- printf ("Ascending sort\n");
- sort(a,len,1);
- disp(a);
- printf ("\nDescending sort\n");
- sort(a,len,0);
- disp(a);
- return 0;
- }
-
- //
- void sort (int a[],int n,int d) {
-
- int i,j,temp;
- if (d==1) {
- for(i=0;i<len;i++) {
- for(j=i+1;j<len;j++) {
- if(a[i]>a[j]) {
- temp=a[i];
- a[i]=a[j];
- a[j]=temp;
- }
- }
- }
- }
- if (d==0) {
-
- for(i=0;i<len;i++) {
- for(j=i+1;j<len;j++) {
- if(a[i]<a[j]) {
- temp=a[j];
- a[j]=a[i];
- a[i]=temp;
- }
- }
- }
- }
-
- }
- //
- void disp (int a[]) {
- int i;
- for(i=0;i<len;i++) {
-
- printf ("%i ",a[i]);
-
- }
- }
复制代码 测试:
root@yeah ~
$ gcc _sort.c -o _sort
root@yeah ~
$ ./_sort
Enter length of array:
10
Enter element in array:
2
32
123
-9
234
21
9
0
7
8
The array before the sort:
2 32 123 -9 234 21 9 0 7 8
After sorted...
Ascending sort
-9 0 2 7 8 9 21 32 123 234
Descending sort
234 123 32 21 9 8 7 2 0 -9
root@yeah ~
$ ./_sort
Enter length of array:
5
Enter element in array:
32
1
-98
0
-89
The array before the sort:
32 1 -98 0 -89
After sorted...
Ascending sort
-98 -89 0 1 32
Descending sort
32 1 0 -89 -98
root@yeah ~
$ |
|