در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش برنامه نویسی C قسمت 25 : qsort

سلام و وقت بخیر. از تابع qsort برای مرتب کردن آرایه استفاده میشود. هر عنصر آرایه یک مقداری دارد که این تابع با مقایسه کردن آنها ، آرایه را مرتب میکند.

void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))

توجه داشته باشید که این تابع مقداری را برنمیگرداند. فقط کافی است آرایه را به داخل تابع پاس بدهیم و بعد از صدا کردن تابع، میبینیم که آرایه مرتب شده است. ابتدا به آرگومان های این تابع دقت کنید.

1- آرگومان اول به خانه اول آرایه ای که قرار است مرتب شود اشاره میکند.

2- آرگومان دوم تعداد عناصر آرایه را مشخص میکند.

3- آرکومان سوم اندازه هر عنصر آرایه را مشخص میکند.

4- این تابع عناصر را با هم مقایسه میکند.

به مثال زیر دقت کنید.

#include <stdio.h>
#include <stdlib.h>

int values[] = {12, 3, 0, 7, 25, 8, 9, 7, 26, 10 };

int cmpfunc (const void * a, const void * b)
{
   return ( *(int*)a - *(int*)b );
}

int main()
{
   int n;

   printf("Before sorting the list is: \n");
   for( n = 0 ; n < 10; n++ ) 
   {
      printf("%d ", values[n]);
   }

   qsort(values, 10, sizeof(int), cmpfunc);

   printf("\nAfter sorting the list is: \n");
   for( n = 0 ; n < 10; n++ ) 
   {   
      printf("%d ", values[n]);
   }
  printf("\n");
   return(0);
}

و خروجی بصورت زیر خواهد بود:

[root@CentOS6 c]# gcc -o qsort qsort.c
[root@CentOS6 c]# ./qsort
Before sorting the list is: 
12 3 0 7 25 8 9 7 26 10 
After sorting the list is: 
0 3 7 7 8 9 10 12 25 26 
[root@CentOS6 c]# 

پایان قسمت بیست و پنجم

نویسنده : سید محمد باقر موسوی

منبع : جزیره برنامه نویسی وب سایت توسینسو

هرگونه نشر و کپی برداری بدون ذکر منبع و نام نویسنده دارای اشکال اخلاقی است

#برنامه_نویسی_به_زبان_c #نوشتن_shell_script_در_لینوکس #sort_کردن #زبان_برنامه_نویسی_c_در_لینوکس #برنامه_نویسی_c_در_محیط_لینوکس #برنامه_نویسی_به_زبان_c_در_لینوکس #آموزش_گام_به_گام_برنامه_نویسی_c #برنامه_نویسی_c_در_linux #آموزش_برنامه_نویسی_c_در_لینوکس
عنوان
1 آموزش برنامه نویسی C قسمت 1 : نصب محیط برنامه نویسی رایگان
2 آموزش برنامه نویسی C قسمت 2 : Hello World رایگان
3 آموزش برنامه نویسی C قسمت 3 : Data Types رایگان
4 آموزش برنامه نویسی C قسمت 4 : Data Types رایگان
5 آموزش برنامه نویسی C قسمت 5 : اشاره گر ها رایگان
6 آموزش برنامه نویسی C قسمت 6 : آرایه ها رایگان
7 آموزش برنامه نویسی C قسمت 7 : ساختار شرط IF رایگان
8 آموزش برنامه نویسی C قسمت 8 : حلقه for رایگان
9 آموزش برنامه نویسی C قسمت 9 : حلقه While رایگان
10 آموزش برنامه نویسی C قسمت 10 : Struct رایگان
11 آموزش برنامه نویسی C قسمت 11 : تابع دریافت ورودی scanf رایگان
12 آموزش برنامه نویسی C قسمت 12 : فایل های متنی و باینری رایگان
13 آموزش برنامه نویسی C قسمت 13 : توابع رایگان
14 آموزش برنامه نویسی C قسمت 14 : توابع اشاره گر رایگان
15 آموزش برنامه نویسی C قسمت 15 : argc argv رایگان
16 آموزش برنامه نویسی C قسمت 16 : Multiple Source Files رایگان
17 آموزش برنامه نویسی C قسمت 17 : String Functions & Operations رایگان
18 آموزش برنامه نویسی C قسمت 18 : Char Pointers VS Array Char رایگان
19 آموزش برنامه نویسی C قسمت 19 : Binary & Unary Operations رایگان
20 آموزش برنامه نویسی C قسمت 20 : Type Casting رایگان
21 آموزش برنامه نویسی C قسمت 21 : readdir & opendir functions رایگان
22 آموزش برنامه نویسی C قسمت 22 : Fork Function رایگان
23 آموزش برنامه نویسی C قسمت 23 : Thread رایگان
24 آموزش برنامه نویسی C قسمت 24 : Switch Case Statement رایگان
25 آموزش برنامه نویسی C قسمت 25 : qsort رایگان
26 آموزش برنامه نویسی C قسمت 26 : Socket Programming رایگان
27 آموزش برنامه نویسی C قسمت 27 : لیست پیوندی (Linked List) رایگان
زمان و قیمت کل 0″ 0
1 نظر
نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره پاییزه می تونی امروز ارزونتر از فردا خرید کنی ....