#include <stdio.h>
#include <malloc.h>
// 編寫函數int *DefineArray(int n),其功能是利用內存分配函數動態創建n個整數數據的動態數組:
int *DefineArray(int n) {
int *p = (int *)malloc(n * sizeof(int));
if(p == NULL) printf("內存已經耗盡!\n");
return p;
}
// 編寫函數void FreeArray(int *p),其功能是釋放p指向的存儲空間。
void FreeArray(int *p) {
if(p) free(p);// 如果p為NULL,則釋放時會報錯
}
int main() {
int i,n,*a;
printf("請輸入學生人數:");
scanf("%d",&n);
if(a = DefineArray(n)) {
printf("請輸入%d個學生的成績\n",n);
for(i = 0; i < n; ++i) scanf("%d",&a[i]);
}
for(i = 0; i < n; ++i) printf("%02d\t%d\n",i + 1,a[i]);
FreeArray(a);
return 0;
}