史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   詢問~~將一串數字的 排序&偏移量的程式~~ (http://forum.slime.com.tw/thread223090.html)

rang0419 2008-01-04 05:39 PM

詢問~~將一串數字的 排序&偏移量的程式~~
 
要怎麼用C寫 排序的程式阿??:on_80:




那容如下:


1.reads 4 options: -a ascending sorting, -d descending sorting, and -m calculating the mean deviation of array elements and an integer array from the command line;

2. sorts the array and prints the result;

3. calculates the mean deviation of the array elements and prints the result. The mean deviation is defined as Σ |xi - x|/n where x = Σxi/n.
Ex:
x1 = 124, x2 = 234, x3 = 562, x4 = 12 → x = (124 + 234 + 562 + 12)/4 = 233
mean deviation = (|124 - 233| + |234 - 233| + |562 - 233| + |12 - 233|)/4 = 165


Supposed the exectuable code is sort, a possible run may look as follows:



> sort -a 10 28 98 12 47 37 26 58

10 12 26 28 37 47 58 98

> sort -d 10 28 98 12 47 37 26 58

98 58 47 37 28 26 12 10

> sort -m 10 28 98 12 47 37 26 58

The mean deviation is 21.125.

Hint: Refer to the following code:



void selection_sort(int numbers[], int array_size) {

int i, j;

int min, temp;



for (i = 0; i < array_size-1; i++) {

min = i;

for (j = i + 1; j < array_size; j++)

if (numbers[j] < numbers[min]) min = j;

temp = numbers[i];

numbers[i] = numbers[min];

numbers[min] = temp;

}

}

/*

* To run the code, run "sort 10" if the compiled code is "sort".

*/

main(int argc, char *argv[]) {



int a[30];



int a[0] = atoi(argv[1]);

printf("a[0] = %d\n", a[0]);

selection_sort(a, 1);

}


大致上是這樣@@


有哪裡不清楚的地方請和我說一下 拜託一下 各位大了:on_68:


所有時間均為台北時間。現在的時間是 02:56 PM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1