- 程式 point1.c 宣告 int arr3[] 及指標變數 ptr 指到 arr3 的位址,並以 do...while 迴圈由鍵盤輸入一個整數 x,直到輸入的整數是正整數且小於 arr3 的元素個素為止,以十進位印出 ptr 及 ptr+n 的值及位址,每項項目以<TAB>分隔如下範例,編譯成可執行檔 point1。
./point1
Enter an integer: -2
Enter an integer: 10000
Enter an integer: 19
ptr=-767412528 *ptr=186 ptr+19=-767412452 *(ptr+19)=503
- 程式 point2.c 宣告 int arr8[] 及指標變數 ptr 指到 arr8 的位址,並以 do...while 迴圈由鍵盤輸入一個整數 x,直到輸入的整數是正整數且小於 arr3 的元素個素為止,for 迴圈連續印出從第 x 元素到最後一個元素,每個元素前後加一個減號 '-',且迴圈的「起始值,條件判斷,增減量」都要使用 ptr 變數,編譯成可執行檔 point2,輸出範例如下:
./point2
Enter an integer: -2
Enter an integer: 19
Enter an integer: 3
String:-2--N--I--i--E-
- 程式 point3.c 改宣告 arr11 為惷標陣列 *name,並以 do...while 迴圈由鍵盤輸入一個整數 x,直到輸入的整數是正整數且小於 *name 的元素個素為止,for 迴圈連續印出從第 1 個元素到第 x 元素,每個元素都改成全大寫,元素間以冒號 ":" 分隔,最後換行,編譯成可執行檔 point3,輸出範例如下:
./point3
Enter an integer: -3
Enter an integer: 10
Enter an integer: 3
Name:ALLEN:COLIN:DAVID
- 程式 point4.c 從鍵盤輸入一數字 x,宣告指標變數 ptr 指向數字 x 的位址,雙重指標變數 pptr 指向 ptr,以十進位印出輸入的數字、指標變數、雙重變數,三者間以<TAB>隔開,最後換行,編譯成可執行檔 point4,輸出範例如下:
./point4
Enter an integer: 12
x=12 *ptr=12 **pptr=12
- 程式 point5.c 宣告 int arr4[],以 do...while 迴圈由鍵盤輸入一個整數 x,直到輸入的整數是正整數且小於陣列 arr4 的元素個素為止,設計函式 ovdiff,計算「元素內容是偶數的總和-元素內容是奇數旳總和」,並回傳,但必須排除前 x 個元素。輸出 x 及 ovdiff 回傳值,中間以<TAB>隔開,編譯成可執行檔 point5,輸出範例如下:
./point5
Enter an integer: -2
Enter an integer: 123
Enter an integer: 10
x=10 ovdiff=4396
- 程式 point6.c 從鍵盤輸入一正整數 x,若 x>5 則設定為 5,設計函式 getSec 傳入整數 x,產生 x 個 Unix 時間存入陣列 secs (宣告為 static),並回傳 secs 陣列指標。主程式 main 印出陣列 secs 所有的值,編譯成可執行檔 point6。輸出範例如下:
例如:x=3,輸出
./point6
Enter an integer: 9
sec0=1564977690
sec1=1564977690
sec2=1564977690
sec3=1564977690
sec4=1564977690
./point6
Enter an integer: 3
sec0=1564977695
sec1=1564977695
sec2=1564977695