Pointer เป็นตัวแปรเก็บที่อยู่ของตัวแปรอื่น สามารถเก็บค่า NULL ได้ เข้าถึงแบบ pass by reference ไม่ต้อง initialize ตอนประกาศ
Syntax:
pointer variable = & another variable;
เช่น p = &a;
อัลกอริทึม
Step 1: Start Step 2: Declare integer variables Step 3: Declare pointer variables Step 4: Read 3 numbers Step 5: Assign each number address to pointer Step 6: if *p1 > *p2
- if *p1 > *p3
- print p1 is large
- else
- print p2 is large
โปรแกรม
โปรแกรม C หาตัวเลขมากที่สุดด้วย pointers:
#include <stdio.h> int main(){ int num1, num2, num3; int *p1, *p2, *p3; printf("enter 1st no: "); scanf("%d",&num1); printf("enter 2nd no: "); scanf("%d",&num2); printf("enter 3rd no: "); scanf("%d",&num3); p1 = &num1; p2 = &num2; p3 = &num3; if(*p1 > *p2){ if(*p1 > *p3){ printf("%d is largest ", *p1); }else{ printf("%d is largest ", *p3); } }else{ if(*p2 > *p3){ printf("%d is largest ", *p2); }else{ printf("%d is largest ", *p3); } } return 0; }
ผลลัพธ์
Run 1: enter 1st no: 35 enter 2nd no: 75 enter 3rd no: 12 75 is largest Run 2: enter 1st no: 53 enter 2nd no: 69 enter 3rd no: 11 69 is largest