C的形參和實參,函數的封裝

#include<stdio.h>
void printArray(int *a,int num);
void sortArray(int *a, int num);
//數組作函數參數的退回問題 退回爲一個指針
//結論:1. 把數組的內存首地址和數組的有效長度傳給被調函數
//2. 實參的a 和形參的a 的數據類型本質不同
//3. 形參中的數組,編譯器會把它當成指針處理 這是c語言的特點
//4. 形參
//函數的封裝
int main(void)
{
int a[] = {12, 23, 45, 89, 0, 2, 355};
int num = sizeof(a)/ sizeof(a[0]);
printArray(a, num);
sortArray(a, num); //分類排序
printArray(a, num);
return 0;
}
//void printArray(int a[],int num)
void printArray(int *a,int num)
{
int i, num1;
num1 = sizeof(a)/ sizeof(a[0]);
printf("num1 = %d\n", num1);
for(i = 0; i < num; i++)
{
printf("%d ", a[i]);
}
printf("\n");

}
//void sortArray(int a[], int num)
void sortArray(int *a, int num)
{
int i, j, temp;
for(i = 0; i < num; i ++)
{
for(j = i+1; j < num; j++)
{
if(a[i] > a[j])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}數組

相關文章
相關標籤/搜索