ตัวแปรและหน้าที่ของตัวแปร

Preview:

DESCRIPTION

ตัวแปรและหน้าที่ของตัวแปร. ตัวแปร (Variable) คือ การจองพื้นที่เก็บข้อมูลในหน่วยความจำหลัก (RAM) ของเครื่องคอมพิวเตอร์ พร้อมกับกำหนดชื่อเรียกแทนหน่วยความจำในตำแหน่งนั้น. ชนิดของตัวแปรในภาษา C. สามารถแบ่งได้ 2 ประเภทใหญ่ ๆ คือ - PowerPoint PPT Presentation

Citation preview

1

ตัวแปรและหน้าท่ีของตัวแปร

ตัวแปร (Variable) คือ การจองพื้นท่ีเก็บขอ้มูลในหน่วยความจำาหลัก

(RAM) ของเครื่องคอมพวิเตอร ์พรอ้มกับกำาหนดชื่อเรยีกแทนหน่วยความจำาใน

ตำาแหน่งนัน้

2

ชนิดของตัวแปรในภาษา Cสามารถแบง่ได้ 2 ประเภทใหญ่ ๆ คือ

1. ตัวแปรแบบพื้นฐาน (Scalar) ซึ่งหมายถึงที่เก็บขอ้มูลได้เพยีงค่าเดียวเชน่

2. ตัวแปรชุด (Array) เก็บขอ้มูลได้หลายค่าในตัวแปรเดียว

3

รูปแบบการประกาศตัวแปร

รูปแบบ Type variable;t ype : ชนิดของตัวแปรท่ีจะสรา้งขึน้variable : ชื่อของตัวแปรท่ีต้องการจะใช้ int num;

float y; char c; double salary;

ตัวอยา่ง

4

1 . การเก็บค่าในภาษา Cม ี 2 ลักษณะคือ

เก็บค่าแบบค่าคงท่ี (constant) ค่าคงท่ี เมื่อสรา้งขึน้มาแล้วเราจะ ไมส่ามารถเปล่ียนแปลงแก้ไขค่าได้เลย เชน่ a=20; กำาหนดให้ a มค่ีาเท่ากับ 20

เก็บค่าแบบตัวแปร(variable) การเก็บค่าแบบตัวแปรสามารถเปล่ียนแปลงค่าเป็นอะไรก็ได้ตามท่ีต้องการ เชน่ char ch; ประกาศค่าตัวแปรชื่อ ch มีชนิดขอ้มูลเป็นตัวอักขระ 1 ตัวอักษร

5

ชนิด ขนาด การใชง้าน

char 8บติ เก็บขอ้มูลชนิดอักขระ

unsigned char

8 บติ เก็บขอ้มูลอักขระแบบไมคิ่ดเครื่องหมาย

int 16บติ เก็บขอ้มูลชนิดจำานวนเต็ม

long 32บติ

เก็บขอ้มูลชนิดจำานวนเต็มแบบยาว

float 32บติ เก็บขอ้มูลชนิดเลขทศนิยม

double 64บติ เก็บขอ้มูลชนิดเลขทศนิยม

unsigned int

16บติ

เก็บขอ้มูลชนิดจำานวนเต็ม ไม่คิดเครื่องหมาย

unsigned long

32บติ

เก็บขอ้มูลชนิดจำานวนเต็มแบบยาว ไม่คิดเครื่องหมาย

ชนิดของขอ้มูล ตัวแปรท่ีนิยมใชแ้ละขนาดหน่วยความจำา

6

Character Variableแบง่ออกเป็น 2 ลักษณะ คือ

Char เก็บค่า ASCII ของตัวอักษรได้ต้ังแต่ - 128 ถึง 127

Unsigned char เก็บค่า ASCII ของตัวอักษรได้ตั้งแต่ - 0255

ตัวแปรแบบ character จะใชใ้นกรณีท่ีเราต้องการเก็บอักขระ 1 ตัว เชน่ a, b หรอื c เป็นต้น

7

วธิปีระกาศตัวแปรแบบ Character เขยีนได้ดังน้ีchar ch;unsigned char c;

-128 ถึง 127

0 ถึง 255

ไมม่คีวามแตกต่างระหวา่ง char และ unsigned char ดังนัน้จงึมกัประกาศเป็น char เป็นสว่นใหญ่

8

Integer Variableแบง่ออกเป็น 2 ประเภท คือ

int หรอื short เก็บเลขจำานวนเต็มตั้งแต่ -32,768 ถึง 32767,

Long เก็บเลขจำานวนเต็มตั้งแต่ - 2147483648 ถึง 2147483647, , ,

วธิกีารใชคื้อถ้าต้องการตัวเลขจำานวนเต็มมากกวา่ 32767, เราจะต้อประกาศตัวแปรแบบ long ถ้า

น้อยกวา่ก็ประกาศแบบ int ดังตัวอยา่ง

9

int a,b,c; int age; int height; long salary,money; เราประกาศตัวแปร a,b,c age height แบบ int เน่ืองจาก ต้องการ ให้เก็บค่าท่ีอยู่

ระหวา่ง - 32768, ถึง 32767, เท่านัน้ แต่ salary และ

money มโีอกาสจะมค่ีามากกวา่ นัน้ดังนัน้จงึต้องประกาศเป็น long

10

Float Variableแบง่ออกเป็น 3 ประเภท คือ

Float เก็บทศนิยมได้ 34E+/-38 (ทศนิยม 7ตำาแหน่ง)

Double เก็บทศนิยมได้ 17. E+/-308 (ทศนิยม 15ตำาแหน่ง)

Long Double เก็บทศนิยมได้ 12E+/-4932 (ทศนิยม 19 ตำาแหน่ง)

float grade;double rate;long double longrate;

11

กฎการต้ังชื่อตัวแปรชื่อตัวแปรต้องขึน้ต้นด้วยตัวอักษร A-Z หรอืเครื่องหมาย _ (underscore) ก็ได้ตัวถัดมาจะเป็น A-Z หรอื 0-9 หรอืเครื่องหมาย _ (underscore) ห้ามมชีอ่งวา่งระหวา่งชื่อ ห้ามเวน้วรรคชื่อเหมอืนกันแต่เป็นพมิพเ์ล็กพมิพใ์หญ่ ถือวา่คนละชื่อกัน เชน่ number1 ,NUMBER1 ถือวา่เป็นคนละชื่อกันห้ามต้ังชื่อซำ้ากับคำาสงวน เชน่ char long while do

12

คำาสงวน (Reserved Word) auto break casechar const continue default dodouble else if int longregister return short signed sizeofstatic structswitchtypedef unionunsigned voidvolatile while

C Programing 13

ตัวอยา่งการตัง้ชื่อตัวแปร

class_room -hi tech 9 number 123_hello age# right! last name

ถกูต้อง

ถกูต้อง

ไมถ่กูต้องไมถ่กูต้อง

ไมถ่กูต้องไมถ่กูต้องไมถ่กูต้อง

14

วธิกีารสรา้งตัวแปรและการกำาหนดค่า#include<stdio.h>void main(){

int age;char sex;float grade;

age = 20;sex = ‘f’;grade = 3.14;

}

#include<stdio.h>void main(){

int age = 20;char sex = ‘f’;float grade = 3.14;

}

15

ภาษาซกัีบตัวแปรแบบขอ้ความ นำาตัวแปร char มาเรยีงต่อกันเรยีกวา่ตัวแปรแบบสตรงิ

(String) การประกาศตัวแปรแบบสตรงิ จะต้องกำาหนดขนาดด้วย

ตัวอยา่ง char name[15] = “Jacky Chan”; ตัวแปรชื่อ name มคีวามยาว 15 ชอ่งตัวอักษร และเก็บ

ขอ้ความ Jacky Chan เอาไว ้ซึง่การประกาศตัวแปร 15 ชอ่งเอาไว ้ท่ีเหลือจะเป็นชอ่งวา่งเฉยๆ ไมม่ตัีวอักษรบรรจุอยู่J a c k y C h a n

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14

รูปแบบ ชนิด ชื่อตัวแปร;เชน่ int num1; ประกาศค่าตัวแปรชื่อ num1 เก็บค่า

ขอ้มูลชนิดตัวเลข char name[25]; ประกาศค่าตัวแปรชื่อ name เก็บค่า

ขอ้มูลชนิด ตัวอักขระจำานวน 25 ตัวอักษร

float num3; ประกาศค่าตัวแปรชื่อ num3 เก็บค่าขอ้มูลชนิดตัวเลข ทศนิยม

char grade; ประกาศค่าตัวแปรชื่อ grade เก็บค่าขอ้มูลชนิด ตัวอักขระ 1 ตัว

16

ถ้าเป็นตัวแปรชนิดเดียวกัน เชน่ int num1,num2,sum; ให้ใช้

คอมมา่ , คัน่ตัวแปรแต่ละตัว

การกำาหนดตัวแปรใชง้านของฟงัก์ชนั

17

การแสดงค่าจากตัวแปร#include<stdio.h>void main(){

int age = 20;char sex = ‘f’;float grade = 3.14;char name[10] = “malee”;printf(“You are %s\n”,name);printf(“You are %c\n”,sex);printf(“You are %d years old\n”,age); printf(“You grade is %f\n”,grade);

}

You are maleeYou are fYou are 20 years oldYour grade is 3.140000

18

%d สำาหรบัการแสดงผลตัวเลขจำานวนเต็ม %u สำาหรบัการแสดงผลตัวเลขจำานวนเต็ม

บวก %o สำาหรบัการแสดงผลออกมาในรูปแบบ

ของเลขฐานแปด %x สำาหรบัการแสดงผลออกมาในรูปแบบ

ของเลขฐานสบิหก %f สำาหรบัการแสดงผลตัวเลขทศนิยม %e สำาหรบัการแสดงผลตัวเลขทศนิยม

ออกมาในรูปแบบ E %c สำาหรบัแสดงผลอักขระ 1 ตัว %s สำาหรบัแสดงผลขอ้ความ %p สำาหรบัการแสดงผลตัวชีต้ำาแหน่ง

รหสัรูปแบบ (Format Code)

19

The End