求教 C语言 大佬 void fun(int a[],int n) 这段代码啥意思?

作者&投稿:康居 (若有异议请与网页底部的电邮联系)
C语言程序题:写一函数sort(int a,int n)实现对数组a的排序,求各位大佬相助!!~

函数代码如下:
void sort(int a[], int n){int i, j, m;int temp; for(i = 0; i < n -1; i++){m = i;for(j = i + 1; j < n; j++){if(a[j] < a[m])m = j;}if(m != i){temp = a[i];a[i] = a[m];a[m] = temp;}}}整个测试如下:
#include void sort(int a[], int n){int i, j, m;int temp; for(i = 0; i < n -1; i++){m = i;for(j = i + 1; j < n; j++){if(a[j] < a[m])m = j;}if(m != i){temp = a[i];a[i] = a[m];a[m] = temp;}}}int main(){ int a[10] = {9, 8, 7, 6, 5, 4, 3, 2, 1, 0}; sort(a, 10); for(int i = 0; i < 10; i ++) { printf("%d", a[i]); }return 0;}结果如下:

第一、scanf的第二个参数应该是地址,而a[m]是数据,改为&a[m]。
第二、函数fun的第一个参数是指针,a就是指针,不用加&。
第三、i是整型,1/2对它来说就是0。for 循环的第二个条件应改为i<y/2。for循环块里的1/2需要相应修改。
第四、同第三类似,需要相应修改。


void fun(int a[],int n)这是一个函数的头部,函数名是fun,这个函数没有返回值(void),需要一个数组参数(int a[])和一个整数参数(int n)。