CLASS 5 int myabsint int rectint int int

CLASS 5 指標

int my_abs(int); int rect(int, int); int main(){ int x, y, r; printf(“請輸入長方型的長: ”); scanf(“%d”, &x); printf(“請輸入長方型的寬: ”); scanf(“%d”, &y); printf(“長方型的面積: %dn”, rect(my_abs(x), my_abs(y))); return 0; } int rect(int x, int y){ return x*y; } int my_abs(int num){ if(num<0)num*=-1; return num; }

複習 srand(time(NULL)); int rand_num=(rand()%901)+100; //100~1000 printf(“亂數: %d, 平方根%lfn”, rand_num, sqrt(rand_num));








const常數修飾子 int *ptr; ptr可變動,*ptr也可變動 int *const ptr; ptr不可變動,*ptr可變動 const int *ptr; ptr可變動,*ptr不可變動 const int *const ptr; ptr不可變動,*ptr也不可變動












補充 (malloc and free) int main(){ int *pt; int size, i; printf("請輸入陣列的大小: "); scanf("%d", &size); pt=(int*)malloc(sizeof(int)*size); for(i=0; i<size; i++) pt[i]=rand()%10+1; for(i=0; i<size; i++) printf("%d ", pt[i]); free(pt); system("pause"); }

補充 (malloc and free) (指標的型態)malloc (sizeof(陣列的資料型態)*陣列大小); 範例 float* pt=(float*)malloc(sizeof(float)*size); char* pt=(char*)malloc(sizeof(char)*size);

作業六 參見hw 6. doc (到www. csie. ntu. edu. tw/~r 93041/C下載)

- Slides: 26