ตัวแปรและชนิดของข้อมูล (Variables & Data Types)

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
ชนิดของข้อมูลในโปรแกรม Interactive C
Advertisements

Computer Language.
Pointers. Why have pointers? / pointers ทำให้ฟังก์ชันหรือส่วนของ โปรแกรมสามารถใช้งานข้อมูลร่วมกันได้ / ใช้ pointers ในการสร้างโครงสร้างข้อมูลที่ ซับซ้อนได้
ครั้งที่ 9 Function(ต่อ).
โครงสร้างโปรแกรมภาษา C
สาขาวิชาคอมพิวเตอร์ คณะวิทยาศาสตร์และเทคโนโลยี
โดยอาจารย์ศิริพร ศักดิ์บุญญารัตน์ ครูชำนาญการ โรงเรียนมหิดลวิทยานุสรณ์
ตัวแปรชุด การเขียนโปรแกรมภาษาคอมพิวเตอร์ 1
การเขียนโปรแกรมด้วยคำสั่งเบื้องต้น
ประเภทของข้อมูลและตัวดำเนินการ Data Types and Operator (บทที่ 3)
Introduction to C Programming
ครั้งที่ 8 Function.
Department of Computer Business
การรับค่าและแสดงผล.
C Programming Lecture no. 4 กราบเรียนท่านอาจารย์ และสวัสดีเพื่อนๆ
หลักการโปรแกรม 1 Lecture 3: ตัวแปร, นิพจน์คณิตศาสตร์, การคำนวณทางคณิตศาสตร์,การดำเนินการกับสายอักขระ.
Structure Programming
ผังงานโปรแกรม (Program Flowchart)
Week 6 ประกาศค่าตัวแปร.
การแสดงผล และการรับข้อมูล
รับและแสดงผลข้อมูล.
PHP LANGUAGE.
หน่วยที่ 2 ภาษาโปรแกรม และการออกแบบโปรแกรม
Lab 3: คำสั่งพื้นฐานสำหรับการรับและการแสดงผลข้อมูล
NUMBER SYSTEM เลขฐานสิบ (Decimal Number) เลขฐานสอง (Binary Number)
ตัวชี้ P O I N T E R Created By Tasanawan Soonklang
Lecture no. 2: Overview of C Programming
ตัวแปรชุด.
การประกาศตัวแปร “ตัวแปร” คือสิ่งที่เราสร้างขึ้นมาเพื่อใช้เก็บค่าต่างๆและอ้างอิงใช้งานภายในโปรแกรม ตามที่เรากำหนดขึ้น การสร้างตัวแปรขึ้นมาเราเรียกว่า.
Arrays.
บทที่ 6 ตัวแปรอาร์เรย์ (Array of Variable)
C Programming Lecture no. 6: Function.
การจัดการข้อมูลด้วยคอมพิวเตอร์
การเขียนโปรแกรมเชิงวัตถุ ด้วยภาษาจาวา
บทที่ 2 ประเภทข้อมูล (DATA TYPE)
บทที่ 11 การเขียนโปรแกรมภาษาซี
ข้อมูลพื้นฐานและตัวดำเนินการ
บทที่ ไลบรารีฟังก์ชัน
หน่วยที่ 1 พื้นฐานภาษา C
อาร์เรย์และข้อความสตริง
ตัวอย่างโปรแกรมคำนวณหาพื้นที่สี่เหลี่ยม
การคำนวณทางคณิตศาสตร์ ตัวดำเนินการ
ตัวแปร (Variable) คือ ชื่อที่ตั้งขึ้นเพื่อเก็บข้อมูลในหน่วยความจำ สามารถเก็บข้อมูลชนิดใดก็ ได้ ลักษณะที่สำคัญ ค่าที่จัดเก็บ เมื่อปิดโปรแกรมข้อมูลจะหายไป.
การเขียนโปรแกรมภาษาซี
ชนิดของข้อมูล ตัวแปร และตัวดำเนินการ
ตัวแปรกับชนิดของข้อมูล
ฟังก์ชันรับข้อมูล ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
แถวลำดับ (array) ง40202 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
ง30212 พื้นฐานการเขียนโปรแกรม ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
ชนิดของข้อมูล ตัวแปร และตัวดำเนินการ
โปรแกรมยูทิลิตี้.
การรับและพิมพ์ข้อมูลเบื้องต้น
ตัวแปรกับชนิดของข้อมูล
Week 2 Variables.
การประมวลผลสายอักขระ
Computer Programming for Engineers
2 /* ข้อความนี้เป็นเพียงคำอธิบาย ไม่มีผลต่อขั้นตอนการ ทำงานของโปรแกรม */ /* A simple program to display a line of text */ #include void main ( ) { printf.
Overview of C Programming
บทที่ 3 ชนิดข้อมูล ตัวแปร นิพจน์และตัวดำเนินการ
โครงสร้างภาษาซี #include <stdio.h> void main() {
คำสั่งเกี่ยวกับการรับ และแสดงผล
Output of C.
ตัวแปร Array แบบ 1 มิติ การเขียนโปรแกรมแบบวนซ้ำ
1. Global variable คือ ตัวแปรที่กำหนดหรือประกาศไว้นอกฟังก์ชันใด ๆ ทุกฟังก์ชัน สามารถนำตัวแปรประเภท Global ไปใช้ได้ทุกฟังก์ชัน.
พื้นฐานการเขียนโปรแกรมด้วย C#
บทที่ 2 โครงสร้างของภาษา C.
ตัวแปร และชนิดข้อมูล.
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
โครงสร้างโปรแกรมภาษา C
ใบสำเนางานนำเสนอ:

ตัวแปรและชนิดของข้อมูล (Variables & Data Types) บทที่ 3 ตัวแปรและชนิดของข้อมูล (Variables & Data Types)

หัวข้อ ตัวแปร (Variables) ชนิดของข้อมูล (Data Types) ชนิดของตัวแปร ตัวแปร Integer ตัวแปร Floating-Point ตัวแปร Character ตัวแปร String ตัวแปร Array ค่าคงที่ (Constant)

3.1 ตัวแปร ตัวแปร (Variable) เป็นชื่อที่ใช้แทนการอ้างอิงข้อมูลที่ เก็บอยู่ใน Memory ตัวแปร ที่เก็บค่าต่างๆ ในโปรแกรม (เช่น X, Y, SUM, …) จะต้องถูกจองเนื้อที่ไว้ที่ Address หนึ่งๆ ใน Memory (เช่น 2293604, 2293605, 2293606, …) ค่าของตัวแปร สามารถเปลี่ยนค่าได้ ในขณะประมวลผล . . . Memory ... address 2293604 2293605 2293606 การจองเนื้อที่ให้ตัวแปร int X, Y, SUM; X การกำหนดค่าตัวแปร 50 Y 100 X = 50; SUM 150 Y = 100; การคำนวณค่าตัวแปร SUM = X+Y;

3.1.1 การตั้งชื่อตัวแปร กฎการตั้งชื่อตัวแปร ตัวอย่าง: 1. ประกอบด้วย a - z, A - Z, 0 - 9 หรือ _ 2. อักษรตัวแรกต้องเป็น a - z, A - Z, หรือ _ เท่านั้น 3. ห้ามใช้ชื่อเฉพาะ (Reserved Words) เช่น int, if, float,... 4. ยาวสูงสุด 31 ตัวอักษร ตัวอย่าง: ชื่อที่ใช้ได้ เช่น i, n, _sys, K, SUM, … แต่ชื่อที่ไม่อนุญาต เช่น int, 5j, sum 2 ชื่อที่มีตัวพิมพ์ใหญ่ / เล็ก มีความหมายต่างกัน เช่น ชื่อตัวแปร sum, Sum, SUM ต่างกัน

3.1.2 การประกาศตัวแปร การประกาศตัวแปร (Variable declaration) data_type variable1, variable2, ... ; เช่น int X, Y; เพื่อเป็นการจองเนื้อที่ใน Memory เพื่อเก็บข้อมูล และเรียกใช้ในโปรแกรม (ในรูปแบบของตัวแปร) 0 1 . .. . 2m-1 Address Memory . . . X Y ชนิดของตัวแปร มี 3 ชนิด (ตามชนิดข้อมูลที่เก็บ) 1. ตัวแปรชนิด Integer (2 bytes) 2. ตัวแปรชนิด Floating Point (4 bytes) 3. ตัวแปรชนิด Character (1 byte)

3.2 ชนิดข้อมูล ชนิดข้อมูล (Data Types) ในภาษา C มีหลายชนิด (int, float, char,…) ที่มีขนาด (byte) ต่างกัน ผู้ใช้ต้องเลือกใช้ให้เหมาะสมกับการใช้งาน (ใช้เนื้อที่น้อยๆ โดยไม่เกิดค่า Overflow) -215 +215-1 ชนิดข้อมูล ขนาด (bits) ค่าต่ำสุด ค่าสูงสุด จำนวนเต็ม (Integer) int 16 -32768 +32767 จำนวนจริง(Real) แบบ Floating Point float 32 -3.402823x1038 +3.402823x1038 ตัวอักษร(Character) char 8 -128 +127

ชนิด Integer ข้อมูลชนิด Integer (16 bits): int เก็บค่าเลขนับได้ทั้งค่า บวกและลบ (ต้องใช้ 1 บิตสำหรับเครื่องหมาย) 0 1 2 3 4 . . . 215-1 (max) (min) -215 . . . -3 -2 -1 ค่าทีเป็นไปได้ (Valid Range) Overflow Overflow ข้อมูล Integer (16 bits): unsigned int ที่เก็บค่าเลขนับเฉพาะค่าบวก

ชนิด long int ข้อมูลชนิด long Integer (32 bits): long เก็บค่าเลขนับได้ ทั้งค่าบวกและลบ (ต้องใช้ 1 บิตสำหรับเครื่องหมาย) 0 1 2 3 4 . . . 231-1 (max) (min) -231 . . . -3 -2 -1 ค่าทีเป็นไปได้ (Valid Range) Overflow Overflow ข้อมูล long Integer (32 bits): unsigned long ที่เก็บค่าเลขนับเฉพาะค่าบวก

ชนิด Float ข้อมูลชนิด Floating Point (32 bits) ~ +3.4028 x 1038 ค่าบวก 2-127 ถึง (2-2-23)2128 (max) ค่าลบ -(2-2-23)2128 (min) ถึง -2-127 ค่า (-) ที่เป็นไปได้ ค่า (+) ที่เป็นไปได้ Overflow Overflow -(2-2-23)x2128 -2-127 2-127 (2-2-23)x2128

ชนิด double ค่า double Fl-Pt (64 bits) จะมีค่าในช่วง (+, -) คือ ข้อมูลชนิด double precision Floating Point (64 bits) ค่า double Fl-Pt (64 bits) จะมีค่าในช่วง (+, -) คือ ~ +1.79769 x 10308 ค่าบวก 2-2047 ถึง (2-2-52)22048 (max) ค่าลบ -(2-2-52)22048 (min) ถึง -2-2047

ชนิด Character ข้อมูลชนิด Character (8 bits) ในภาษา C จะใช้รหัส ASCII (American Standard Code for Information Interchange) มีสัญลักษณ์ 28 = 256 ในช่วง 00000000 - 11111111

ASCII A - Z

3.3 ชนิดตัวแปร ตัวแปรขั้นสูง ตัวแปรในภาษา C มีหลายชนิด ที่กำหนด ตามชนิดของข้อมูล ตัวแปรพื้นฐาน 3 ชนิด ตัวแปร Integer (2 bytes) เก็บค่าเลขจำนวนเต็ม ตัวแปร Floating Point (4 bytes) เก็บค่าเลขจำนวนจริง ตัวแปร Character (1 byte) เก็บตัวอักษรรหัส ASCII ตัวแปรขั้นสูง ตัวแปร String (m bytes) เก็บหลายตัวอักษร ตัวแปร Array (n bytes) เก็บค่าเลขหลายสมาชิก

3.3.1 ตัวแปร Integer ตัวแปรชนิด Integer (เลขจำนวนเต็ม) ที่สามารถแสดง ได้ 3 เลขฐาน เลขฐาน 10 (0,1,2,3,4,5,6,7,8,9) เลขฐาน 8 (0,1,2,3,4,5,6,7) เลขฐาน 16 (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) ตัวแปร Integer (ขนาด 16, 32 บิต) int (16 bits): -32768 - +32767 unsigned int (16 bits): 0 - 65535 long (32 bits): -2147483648 - +2147483547 unsigned long (32 bits): 0 - 4294967296 ตัวอย่างเช่น int X; // 2 bytes long N; // 4 bytes

ตัวอย่าง 3.1 เขียนโปรแกรม รับค่าตัวแปร N เป็นเลขฐาน 10 (%d) (Decimal Number) แล้วแสดงผลลัพธ์ เป็นเลขฐาน 8, 10, 16 ด้วย %o, %d, %X #include <stdio.h> void main() { unsigned int N; printf(“Enter N (base 10): ”); scanf(“%d”, &N); ผลลัพธ์ Enter N (base 10): 10 N = 12 (base 8) N = 10 (base 10) N = A (base 16) printf(“N = %o (base 8)\n”, N); printf(“N = %d (base 10)\n”, N); printf(“N = %X (base 16)\n”, N); } 15

ตัวอย่าง 3.2 เขียนโปรแกรม รับค่าตัวแปร N เป็นเลขฐาน 16 (%X) (Hexadecimal Number) แล้วแสดงผลลัพธ์ เป็นเลขฐาน 8, 10, 16 ด้วย %o, %d, %X #include <stdio.h> void main() { unsigned int N; printf(“Enter N (base 16): ”); scanf(“%X”, &N); ผลลัพธ์ Enter N (base 16): 20 N = 40 (base 8) N = 32 (base 10) N = 20 (base 16) printf(“N = %o (base 8)\n”, N); printf(“N = %d (base 10)\n”, N); printf(“N = %X (base 16)\n”, N); } 16

การกำหนดค่า รูปแบบ (เลขฐาน 10): variable = value; Memory . . . 0 1 . .. . 2m-1 Address รูปแบบ (เลขฐาน 10): variable = value; รูปแบบ (เลขฐาน 8): variable = 0value; รูปแบบ (เลขฐาน 16): variable = 0Xvalue; X1 10 X2 010 0X10 X3 ตัวอย่าง int X1, X2, X3; // ประกาศ ตัวแปร ใช้เก็บข้อมูลชนิด integer // กำหนดค่าตัวแปรเป็นเลขฐาน 10 X1 = 10; X2 = 010; X3 = 0X10; // กำหนดค่าตัวแปรเป็นเลขฐาน 8 // กำหนดค่าตัวแปรเป็นเลขฐาน 16

%format ใน scanf, printf ในคำสั่ง scanf(“%format”, &variable); %format %d สำหรับรับข้อมูลของตัวแปร int %u สำหรับรับข้อมูลของตัวแปร unsigned int %ld สำหรับรับข้อมูลของตัวแปร long %lu สำหรับรับข้อมูลของตัวแปร unsigned long %o, %lo สำหรับรับข้อมูลของตัวแปร int, long, unsigned (ฐาน 8) %X, %lX สำหรับรับข้อมูลของตัวแปร int, long, unsigned (ฐาน 16) ในคำสั่ง printf(“%format”, variable); %format %d,%u,%ld,%lu กำหนดใช้สำหรับข้อมูลเช่นเดียวกับใน scanf %o, %#o สำหรับพิมพ์ข้อมูลเลขฐาน 8 (กรณี # จะมี 0 นำหน้าค่าเลขฐาน 8) %X, %#X สำหรับพิมพ์ข้อมูลเลขฐาน 16 (กรณี # จะมี 0X นำหน้าค่าเลขฐาน 16) %.2d สำหรับพิมพ์ข้อมูล 2 ตำแหน่งรวมเลข 0 นำหน้า %10d สำหรับพิมพ์ข้อมูล integer ชิดขวาภายใน 10 ตำแหน่ง

ตัวอย่าง 3.3 เขียนโปรแกรมรับข้อมูล วัน (dd) เดือน (mm) ปี (yyyy) เช่น 05, 09, 2010 (เมื่อ dd=05, mm = 09, yyyy = 2010) และ พิมพ์ผลลัพธ์ในรูปแบบ dd/mm/yyyy แบบ ชิดซ้าย (ปกติ) และชิดขวา (ภายใน 20 ตำแหน่ง) ผลลัพธ์ #include <stdio.h> void main() { unsigned int dd,mm,yyyy; printf(“Enter day (dd):”); scanf(“%d”, &dd); printf(“Enter month (mm):”); scanf(“%d”, &mm); printf(“Enter year (yyyy):”); scanf(“%d”, &yy); printf(“%d/%d/%d\n”, dd,mm,yyyy); printf(“%.2d/%.2d/%d\n”, dd,mm,yyyy); printf(“%12.2d/%.2d/%d\n”, dd,mm,yyyy); } 1 2 3 4 5 6 7 8 9 10 5 / 9 / 2 0 1 0 0 5 / 0 9 / 2 0 1 0 19

3.3.2 ตัวแปร Floating Point ตัวแปร Floating Point (เลขจำนวนจริง) มี 2 ขนาด (32, 64 บิต) float (32 bits หรือ 4 bytes) Double (64 bits หรือ 8 bytes) Memory . . . X Y ตัวอย่างเช่น float X; // 4 bytes (single precision) double Y; // 8 bytes (double precision) -3.4028 x 1038 - +3.4028 x 1038 -1.79769 x 10308 - +1.79769 x 10308 20

ตัวอย่าง 3.4 เขียนโปรแกรมคำนวณปริมาตรของรูปทรงเหลี่ยม (Volume) = Width x Length x Height (กว้าง x ยาว x สูง) และแสดงผลลัพธ์จากการคำนวณ start Input W,L,H Volume=W*L*H Print Volume end #include <stdio.h> void main() { int W, L, H; float Volume; printf(“Enter width: ”); scanf(“%d”, &W); printf(“Enter length: ”); scanf(“%d”, &L); ผลลัพธ์ printf(“Enter height: ”); scanf(“%d”, &H); Enter width: _ 5 Volume = W * L * H; printf(“Volume = %f\n”, Volume); } Enter length: _ 10 Enter height: _ 2 Volume = 100.0

%format ใน scanf, printf ในคำสั่ง scanf(“%format”, &variable); %format %f สำหรับรับข้อมูลของตัวแปร float %e สำหรับรับข้อมูลของตัวแปร float ในรูปแบบ ±m.dddddde±xx %lf, %le สำหรับรับข้อมูลของตัวแปร double ในคำสั่ง printf(“%format”, variable); %format %f สำหรับพิมพ์ข้อมูลของตัวแปร float, double %e สำหรับพิมพ์ข้อมูลของตัวแปร float ในรูปแบบ ±m.dddddde±xx %.2f สำหรับพิมพ์ข้อมูลของตัวแปร float, double (พิมพ์ทศนิยม 2 ตำแหน่ง) %.0f สำหรับพิมพ์ข้อมูลของตัวแปร float, double (พิมพ์ทศนิยม 0 ตำแหน่ง) %20f สำหรับพิมพ์ข้อมูล float, double ชิดขวาภายใน 20 ตำแหน่ง %20.2f สำหรับพิมพ์ข้อมูลของตัวแปร float, double ชิดขวาภายใน 20 ตำแหน่ง (พิมพ์ทศนิยม 2 ตำแหน่ง) %20.0f สำหรับพิมพ์ข้อมูลของตัวแปร float, double ชิดขวาภายใน 20 ตำแหน่ง (พิมพ์ทศนิยม 0 ตำแหน่ง)

ตัวอย่าง การพิมพ์เลขทศนิยมให้ชิดขวา (ภายใน 10 ตำแหน่ง) และระบุทศนิยม 2 ตำแหน่ง #include <stdio.h> void main() { float x; x=1040.041; printf("%10.2f\n", x); x=10.0455; printf("%10.2f\n", x); x=123456.5182; printf("%10.2f\n", x); } ผลลัพธ์ 1 2 3 4 5 6 7 8 9 10 1 0 4 0 . 0 4 1 0 . 0 5 1 2 3 4 5 6 . 5 2 23

ตัวอย่าง 3.5 เขียนโปรแกรมคำนวณคะแนนสอบรวม = Mid-term 40% + Final 60% และแสดงผลลัพธ์จากการคำนวณ start Input ID,M,F Total=M*0.4+F*0.6 Print ID, Total end #include <stdio.h> void main() { int ID, M, F; float Total; printf(“Enter ID: ”); scanf(“%d”, &ID); printf(“Enter mid-term (0-100): ”); scanf(“%d”, &M); printf(“Enter final (0-100): ”); scanf(“%d”, &F); ผลลัพธ์ Enter ID: _ 53000010 Total = (M*0.4) + (F*0.6); printf(“ID=%d, Total=%.2f\n”, ID, Total); } Enter mid-term: _ 81 Enter final: _ 72 ID = 53000010, Total = 75.60

ตัวอย่าง 3.6 เขียนโปรแกรมคำนวณเงินฝากพร้อมดอกเบี้ย เมื่อเวลาผ่านไป 1 ปี และ 2 ปี เมื่อรายได้เงินฝาก (Income)=เงินต้น (M) x(1+อัตราดอกเบี้ย (R))ปี = Mx(1+R)Y start Input M, R Income=M*(1+R) Print Income end #include <stdio.h> void main() { float M, R, Income, Income2; printf(“Enter Invested Money (M): ”); scanf(“%f”, &M); Income2 = M*(1+R)*(1+R) Income2 printf(“Enter %Interest Rate (R): ”); scanf(“%f”, &R); R = R/100; Income = M * (1+R); Income2 = M * (1+R)*(1+R); ผลลัพธ์ Enter Invested Money (M): _ 10000 printf(“Income after 1 year : %20.2f\n”, Income); printf(“Income after 2 years:%20.2f\n”,Income2); } Enter %Interest Rate (R): _ 5 Income after 1 year : 10500.00 Income after 2 years: 11025.00

ในคำสั่ง scanf และ printf 3.3.3 ตัวแปร Character 0 1 . .. . 2m-1 Address Memory . . . ตัวแปร Character (อักขระ): char เก็บใน Memory เป็นรหัส ASCII (8 bits หรือ 1 byte) ตัวแปรชนิดนี้ สามารถแสดงผลได้ทั้งแบบตัวอักษร (%c) และรหัส ASCII ฐาน 10 (%d), ฐาน 8 (%o), ฐาน 16 (%X) ตัวอย่างเช่น char C; // ประกาศตัวแปร C ใช้เก็บค่าเป็นตัวอักษร (Character) scanf(“%c”, &C) a C ในคำสั่ง scanf และ printf %format %c สำหรับข้อมูลของตัวแปร char เป็นตัวอักษร %d, %o, %X สำหรับข้อมูลของตัวแปร char เป็นรหัส ASCII ฐาน 10, 8, หรือ 16

ตัวอย่าง 3.7 เขียนโปรแกรมรับค่าเป็นตัวอักษร (%c) แล้วหาตัวอักษรอีก 3 ตัวถัดจากนั้น พร้อมค่า ASCII (ฐาน 10) %d #include <stdio.h> void main() { char c, c1, c2, c3; printf(“Enter a character:”); scanf(“%c”, &c); 0 1 . .. . 2m-1 Addr Memory . . . c1 = c+1; c2 = c+2; c3 = c+3; a c c1 b c d printf(“ASCII of %c is %d\n”, c, c); printf(“ASCII of %c is %d\n”, c1, c1); printf(“ASCII of %c is %d\n”, c2, c2); printf(“ASCII of %c is %d\n”, c3, c3); } c2 c3 27

ในคำสั่ง scanf และ printf 3.3.4 ตัวแปร String 0 1 . .. . 2m-1 Address Memory . . . ตัวแปร String (สายอักษร): char var[size] เก็บค่าหลายตัวอักษร (ตัวละ 1 byte) %format ใน scanf และ printf คือ %s ตัวอย่างเช่น char Name[10]; // ประกาศตัวแปร Name เก็บค่าได้ 10 ตัวอักษร scanf(“%s”, &Name); Name No v e mb e r ในคำสั่ง scanf และ printf %format %s สำหรับข้อมูลของตัวแปร string เป็นหลายตัวอักษร

ตัวอย่าง 3.8 เขียนโปรแกรมรับข้อมูล วัน (Day) เดือน (Month) ปี (Year) เช่น 1, November, 2010 และแสดงผล Month day, year และอักษรย่อของเดือน ผลลัพธ์ Enter Day : _ 1 #include <stdio.h> void main() { int Day, Year; char Month[20], c1, c2, c3; printf("Enter Day: "); scanf("%d", &Day); printf("Enter Month: "); scanf("%s", &Month); printf("Enter Year : "); scanf("%d", &Year) Enter Month (in string) : _ November Enter Year : _ 2010 Date is November 1, 2010 November => Nov c1 = Month[0]; c2 = Month[1]; c3 = Month[2]; printf("Date is %s %d, %d\n", Month, Day, Year); printf(“%s => %c%c%c\n”, Month, c1, c2, c3); } 29

3.4 ค่าคงที่ ค่าคงที่ (Constant) คล้ายตัวแปร แต่ค่าคงที่ เมื่อกำหนดแล้วจะเปลี่ยนค่าไม่ได้ ส่วนค่าที่เก็บในตัวแปรสามารถเปลี่ยนแปลงได้ตลอดเวลา การประกาศค่าคงที่ ทำได้ 2 วิธี 1. ประกาศคล้ายกับตัวแปรแต่มี const นำหน้า const data_type constant_name = constant; เช่น const float pi = 3.142857; 2. ประกาศไว้ในส่วน Preprocessor Directive #define constant_name constant เช่น #define PI 3.142857 30

ตัวอย่าง 3.9 เขียนโปรแกรมเพื่อคำนวณพื้นที่วงกลม ผลลัพธ์ Area = pr2 เมื่อกำหนดค่า p = 3.142857 (เป็นค่าคงที่) #include <stdio.h> void main() { int r; float Area; const float Pi = 3.142857; printf(“Enter radius (r): ”); scanf(“%d”, &r); start Input r Area = PI*r*r Print Area end PI=3.142867 ผลลัพธ์ Area = Pi * r * r; printf(“Circular area = %f \n”, Area); } Enter radius (r):_ 2 Area = 12.571428 31

ตัวอย่าง 3.10 เขียนโปรแกรมคำนวณเส้นรอบรูปของวงกลม เมื่อ เส้นรอบรูป (Circumference) =2pr, p = 3.142857 (เป็นค่าคงที่) ผลลัพธ์ #include <stdio.h> #define PI 3.142857 void main() { int r; float Circ; printf("Enter radius (r): "); scanf("%d", &r); Enter radius _ 4 Circular Circumference = 25.142857 start Input r Circ = 2*PI*r Print Circ end PI=3.142857 Circ = 2 * PI * r; printf(“Circular circumference = %f\n", Circ); } 32