1樓:泡影果果
1、寫一個簡單選擇排序法的函式名,包含引數。int selectsort(int * listdata,int listlength);
2、寫兩個迴圈,在迴圈中應用簡單選擇插入排序:
int selectsort(int * listdata,int listlength)
int i , j ;
int length = listlength;
for(i=0;i<=length-2;i++)
int k = i;
for(j=i+1;j<=length-1;j++)
if(listdata[k]>listdata[j])
k=j;
if(k!=i)
int tmp = listdata[i];
listdata[i] = listdata[k];
listdata[k] = tmp;
return 0;
3、對編好的程式進行測試,得出測試結果:
int main()
int testdata[5] = ;
int i = 0;
printf("排序之前的結果\n");
for(i = 0;i<5;i++)
printf("|%d|",testdata[i]);
int retdata = selectsort(testdata,5);
printf("排序之後的結果:\n");
for(i = 0;i<5;i++)
printf("|%d|",testdata[i]);
return 0;
4、簡單選擇排序中,需要移動的記錄次數比較少,主要的時間消耗在對於資料的比較次數。基本上,在比較的時候,消耗的時間複雜度為:n*n。
2樓:匿名使用者
#include
main()
}for(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");}
3樓:匿名使用者
樓上那個是冒泡:
#include
void selection_sort(int a, int n)}int main()
, i;
selection_sort(a, 10);
for(i = 0; i < 10; ++i)printf("%d ", a[i]);
return 0;}
c語言,編寫一個函式,函式是用選擇排序法將陣列排序
4樓:匿名使用者
px(10)
改為 px(a)
c語言程式設計——選擇排序法,要求:由主函式呼叫排序子函式,對n個整數進行從小到大的排序,謝了
5樓:匿名使用者
#include
#define size_n 20 //size_n is the size of the array
void sortfun(int a, int n)}void main()
sortfun(a,size_n); //呼叫排序函式for(int j=0;j 6樓:倒黴熊 #include void sort(int a,int n) //選擇排序}if(c !=i) //進行交換。}}int main() ;sort(a,10); int i; for(i=0;i<10;i++) getchar(); return 0;} 編寫函式,使用選擇排序法對陣列進行排序(用c語言) 7樓:匿名使用者 #include #include #include int main(void) if(i!=tmp) }for(i=0;i<10;i++) printf("%3d",a[i]); printf("\n"); return 0; }隨機產生陣列中的元素, 更合理一些。 百科中有各種版本。 8樓:匿名使用者 #include "stdio.h" void sort(const int, int*); int main(int argc, char** argv) ; int i = 0; int arraysize = sizeof(array)/sizeof(array[0]); sort(arraysize, array); for (i = 0; i < arraysize; ++ i)return 0; }//選擇排序 62616964757a686964616fe78988e69d8331333332616465 void sort(const int size, int* array)}}} 編寫函式selectsort()實現選擇法排序,用主函式呼叫完成對一個陣列元素的降序排序。 9樓:醉臥南窗聽秋雨 #include"stdio.h" void selectsort(int a,int n)selectsort(a,n); printf("大小順序為:\n"); for(i=0;i
printf("%d ",a[i]); if(i==b) putchar('\n');} c語言:給定一陣列,包涵n個元素,設計功能函式,使用選擇排序法,對其進行從大到小排序 10樓: //選擇排序演算法,按從小到大順序 void select_sort(int *arr,int n)//如果最小元素的下標不是後面n-i+1的未排序序列的第一個元素,則需要交換第i個元素和後面找到的最小元素的位置 if(k != i)}} c語言如何用呼叫函式的方法把5個數字從小到大排序? 11樓:風吹的小羊 1、在開頭bai處定義了兩個du 指標變數point_1和point_2。但此時他zhi們並未指向任何dao一個回變數,只是提供兩答 個指標變數,規定他們可以指向整形變數,至於指向哪一個整形變數,要在程式語句中指定。程式第6,7兩行的作用就是使point_1指向a,point_2指向b,此時point_1的值為&a(即a的地址),point_2的值為&b。 2、第10行輸出*point_1和*point_2的值,其中的“*”表示“指向”。*point_1表示“指標變數point_1所指向的變數”,也就是變數a。*point_2表示“指標變數point_2所指向的變數”,也就是變數b。 從執行結果來看他們也就是100和10. 3、程式中有兩處出現*point_1和*point_2,但是兩者含義不同。程式第5行的*point_1和*point_2表示定義兩個指標變數*point_1和*point_2。它們前面的“*”只是表示該變數是指標變數。 程式最後10行中的printf函式中的*point_1和*point_2則表示指標變數point_1和point_2所指向的變數。 第一 要保證可以最終退出。就是說,這樣的呼叫最終可以回來。第二 避免迴圈呼叫。就是說當a呼叫b,然後b又呼叫a這種情況,一定要有可以跳出的情況,讓某個a或者b在一定條件下不再呼叫對方就可以返回。第三 避免呼叫深度過深。就是說不能一直呼叫下去。這個具體能夠呼叫多少次根據你的硬體 等具體情況確定的。一般... 1.函式指標的陣列定義方法 返回值型別 指標變數名 number 形參列表 例如 double add double a,double b double sub double a,double b double mul double a,double b double div1 double a,d... include int add int a,int b int sub int a,int b int mul int a,int b float divi int a,int b void main include main include void fun1 float x,float y 和v...C語言子函式呼叫糾錯,C語言子函式呼叫糾錯
c語言 怎麼呼叫指標陣列函式,C語言 怎麼呼叫指標陣列函式
C語言 在主函式中輸入x,y,呼叫函式求出X,y的和,差,商,積,並在主函式中對他們輸出