บทที่ 6 ตัวแปรในภาษาซี
-
Upload
carter-fernandez -
Category
Documents
-
view
39 -
download
0
description
Transcript of บทที่ 6 ตัวแปรในภาษาซี
บทท�� 6 ตั�วแปรในภาษาซี�C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25552
มี�อะไรบ้�างในบ้ทน�� 3.1 การเก�บ้ค่�าในภาษาซี� 3.2 กฎการตั้��งชื่��อตั้�วแปร 3.3 ว ธี�การสร�างตั้�วแปรและการก$าหนดค่�า 3.4 ภาษาซี�ก�บ้ตั้�วแปรแบ้บ้ข้�อค่วามี 3.5 การแสดงค่�าจากตั้�วแปร 3.6 การน$าตั้�วแปรไปใชื่�ในการค่$านวณ 3.7 การร�บ้ค่�ามีาเก�บ้ไว�ในตั้�วแปร 3.8 ค่�าค่งท��ในภาษาซี� 3.9 สร*ป
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25553
3.1 การเก�บ้ค่�าในภาษา C มี� 2 ล�กษณะค่�อ
เก�บ้ค่�าแบ้บ้ค่�าค่งท��(constant)เก�บ้ค่�าแบ้บ้ตั้�วแปร(variable)
ค่�าค่งท��เมี��อสร�างข้,�นมีาแล�วเราจะไมี�สามีารถเปล��ยนแปลงแก�ไข้ค่�าได�เลย เชื่�น a=20;
การเก�บ้ค่�าแบ้บ้ตั้�วแปรสามีารถเปล��ยนแปลงค่�าเป/นอะไรก�ได�ตั้ามีท��ตั้�องการ เชื่�น char ch;
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25554
3.1 การเก�บ้ค่�าในภาษา C การสร�างตั้�วแปรจะตั้�องทราบ้ว�าตั้�วแปรน��น
เก�บ้ค่�าอะไร เชื่�น เลข้จ$านวนเตั้�มี เลข้ทศน ยมี ข้�อค่วามี หร�อตั้�วอ�กษร เป/นตั้�นโดยแบ้�งออกเป/นประเภทด�งน��Character Variable ตั้�วแปรท��ใชื่�เก�บ้
อ�กข้ระInteger Variable ตั้�วแปรท��ใชื่�เก�บ้
เลข้จ$านวนเตั้�มีFloat Variable ตั้�วแปรท��ใชื่�เก�บ้เลข้จ$านวน
ทศน ยมี
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25555
Character Variable แบ้�งออกเป/น 2 ล�กษณะ ค่�อ
Char เก�บ้ค่�า ASCII ข้องตั้�วอ�กษรได�ตั้��งแตั้� -128 ถ,ง 127
Unsigned char เก�บ้ค่�า ASCII ข้องตั้�วอ�กษรได�ตั้��งแตั้� 0-255
ตั้�วแปรแบ้บ้ character จะใชื่�ในกรณ�ท��เราตั้�องการเก�บ้อ�กข้ระ 1 ตั้�ว เชื่�น a,b หร�อ c เป/นตั้�น ส �งท��เราเก�บ้ก�ค่�อ ตั้�วอ�กษร 1 ตั้�ว ซี,�งมี�ค่�า ASCII อย2�ระหว�าง 0 ถ,ง 255 ด�งน��นถ�าเราประกาศตั้�วแปรแบ้บ้ char เราจะใชื่�ตั้�วแปรน��นเก�บ้ข้�อมี2ลได�เป/นค่�าใดค่�าหน,�งในรห�ส ASCII เท�าน��น
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25556
Character Variable
ว ธี�ประกาศตั้�วแปรแบ้บ้ Character เข้�ยนได�ด�งน��
char ch; unsigned char c;
ส�วนมีากแล�วมี�กไมี�มี�ค่วามีแตั้กตั้�างระหว�าง char และ unsigned char ด�งน��นจ,งมี�กประกาศเป/น char เป/นส�วนใหญ่�
C Programming
C-Programming
-128 ถึ�ง 127
0 ถึ�ง 255
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25557
Integer Variable
แบ้�งออกเป/น 2 ประเภท ค่�อ int หร�อ short เก�บ้เลข้จ$านวนเตั้�มีตั้��งแตั้� -
32,768 ถ,ง 32,767
Long เก�บ้เลข้จ$านวนเตั้�มีตั้��งแตั้� -2,147,483,648
ถ,ง 2,147,483,647
ว ธี�การใชื่�ค่�อถ�าตั้�องการตั้�วเลข้จ$านวนเตั้�มีมีากกว�า 32,767 เราจะตั้�องประกาศตั้�วแปรแบ้บ้ long ถ�าน�อยกว�าก�ประกาศแบ้บ้ int ด�งตั้�วอย�าง
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25558
Integer Variable
int a,b,c; int age; int height; long salary,money; เราประกาศตั้�วแปร a,b,c age height แบ้บ้
int เน��องจาก ตั้�องการให�เก�บ้ค่�าท��อย2�ระหว�าง -32,768 ถ,ง 32,767 เท�าน��น แตั้� salary และ money มี�โอกาสจะมี�ค่�ามีากกว�า น��นด�งน��นจ,งตั้�องประกาศเป/น long
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 25559
Float Variable
แบ้�งออกเป/น 3 ประเภท ค่�อ Float เก�บ้ทศน ยมีได� 3.4E+/-38 (ทศน ยมี 7
ตั้$าแหน�ง)Double เก�บ้ทศน ยมีได� 1.7E+/-308 (ทศน ยมี
15 ตั้$าแหน�ง)Long Double เก�บ้ทศน ยมีได� 1.2E+/-4932
(ทศน ยมี 19 ตั้$าแหน�ง)
C Programming
C-Programming
float grade;double rate;long double longrate;
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255510
กฎการตั้��งชื่��อตั้�วแปร ตั้�องไมี�มี�อ�กษรพิ เศษใดๆ ประกอบ้อย2�ด�วย เชื่�น ! @ #
$ % ^ & * ( สามีารถใชื่�เค่ร��องหมีาย underscore ( _ ) ได� ชื่��อตั้�วแปรมี�ตั้�วเลข้ปนอย2�ได� แตั้�ตั้�องไมี�ข้,�นตั้�นด�วย
ตั้�วเลข้ ห�ามีมี�ชื่�องว�างระหว�างชื่��อ ใชื่�ได�ท��งพิ มีพิ6เล�ก และพิ มีพิ6ใหญ่� ชื่��อเหมี�อนก�นแตั้�เป/นพิ มีพิ6เล�กพิ มีพิ6ใหญ่� ถ�อว�าค่นละ
ชื่��อก�น ห�ามีตั้��งชื่��อซี$�าก�บ้ค่$าสงวน เชื่�น char long while do
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255511
3.3 ว ธี�การสร�างตั้�วแปรและการก$าหนดค่�า#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;
}
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255512
3.4 ภาษาซี�ก�บ้ตั้�วแปรแบ้บ้ข้�อค่วามี น$าตั้�วแปร char มีาเร�ยงตั้�อก�นเร�ยกว�าตั้�วแปร
แบ้บ้สตั้ร ง(String)
การประกาศตั้�วแปรแบ้บ้สตั้ร ง จะตั้�องก$าหนดข้นาดด�วยตั้�วอย�าง
char name[15] = “Jacky Chan”;
ตั้�วแปรชื่��อ name มี�ค่วามียาว 15 ชื่�องตั้�วอ�กษร และเก�บ้ข้�อค่วามี Jacky Chan เอาไว� ซี,�งการประกาศตั้�วแปร 15 ชื่�องเอาไว� ท��เหล�อจะเป/นชื่�องว�างเฉยๆ ไมี�มี�ตั้�วอ�กษรบ้รรจ*อย2�
C Programming
C-Programming
J a c k y C h a n
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255513
3.5 การแสดงค่�าจากตั้�วแปร#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);
}
C Programming
C-Programming
You are maleeYou are fYou are 20 years oldYour grade is 3.140000
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255514
ตั้ารางแสดงส�ญ่ล�กษณ6แสดงผลC Programming
C-Programming
ส�ญ่ล�กษณ6 ใชื่�ส$าหร�บ้%d%s%f%c%o%x
แสดงค่�าท��เป/นเลข้จ$านวนเตั้�มีแสดงค่�าท��เป/นสตั้ร งแสดงค่�าท��เป/นเลข้ทศน ยมีแสดงค่�าท��เป/นตั้�วอ�กษร 1 ตั้�วแสดงค่�าข้องตั้�วเลข้ในร2ปฐานแปดแสดงค่�าข้องตั้�วเลข้ในร2ปฐานส บ้หก
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255515
3.6 การน$าตั้�วแปรไปใชื่�ในการค่$านวณ#include<stdio.h>void main(){
int a;int b;int c;int ans;
a = 20;b = 40;c = 5;
ans = (a+b)/c;printf(“Answer is %d\n”, ans);
}
C Programming
C-Programming
Answer is 12
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255516
เค่ร��องหมีายท��ใชื่�ก�บ้ตั้�วแปร
++ เพิ �มีค่�าข้,�น 1-- ลดค่�าลง 1+= เพิ �มีค่�าตั้ามีจ$านวนท��ตั้�องการ-= ลดค่�าตั้ามีจ$านวนท��ตั้�องการ*= ค่2ณค่�าในตั้�วแปรด�วยจ$านวนท��
ตั้�องการ/= หารค่�าในตั้�วแปรด�วยจ$านวนท��
ตั้�องการ
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255517
เค่ร��องหมีายท��ใชื่�ก�บ้ตั้�วแปร
int a = 5;int b = 6;
C Programming
C-Programming
ค่$าส��ง มี�ผลเหมี�อนก�บ้ ผลท��ได�a+=4; a=a+4; บ้วกค่�าอ�ก 4b--; b=b-1; ลดค่�าลงไป 1
a*=2; a=a*2; a ค่2ณ 2a/=2 a=a/2; a หารด�วย 2
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255518
3.7 การร�บ้ค่�ามีาเก�บ้ไว�ในตั้�วแปรตั้�วอย�าง scanf1.c#include<stdio.h>void main(){
int age;printf(“How old are you ?\n”);scanf(“%d”,&age);printf(“You are %d years old.\n”,age);
}
C Programming
C-Programming
How old are you?20You are 20 years old.
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255519
3.7 การร�บ้ค่�ามีาเก�บ้ไว�ในตั้�วแปรตั้�วอย�าง scanf2.c#include<stdio.h>void main(){
char sex;printf(“You are male (M) or female (F) ?\n”);scanf(“%c”,&sex);printf(“You are sex is %c.\n”,sex);
}
C Programming
C-Programming
You are male (M) or female (F) ?MYou are sex is M.
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255520
ตั้�วอย�าง scanf3.c
#include<stdio.h>void main(){
char name[15];double grade;
printf(“What is your name ?\n”);scanf(“%s”, name);printf(“Enter your GPA ”);scanf(“%f”,&grade);
printf(“Hello %s, your GPA is %f.\n”, name ,grade);}
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255521
3.8 ค่�าค่งท��ในภาษาซี� ค่�าค่งท��จัะตั�างจัากตั�วแปรท��ค่�าค่งท��จัะเก!บค่�า
เอาไว$เพี�ยงค่�าเด�ยวตัลอดท�(งโปรแกรม โดยท��เราสุร$างค่�าค่งท��แล$วจัะไม�สุามารถึเปล��ยนแปลงค่�าของม�นได$
การตั�(งชื่+�อค่�าค่งท��จัะใชื่$กฎเด�ยวก�นก�บการตั�(งชื่+�อตั�วแปร แตั�น-ยมตั�(งชื่+�อค่�าค่งท��ให้$เป/นตั�วอ�กษรพี-มพี�ให้ญ่�ท�(งห้มด เพี+�อให้$เก-ดค่วามแตักตั�างระห้ว�างชื่+�อตั�วแปรก�บชื่+�อค่�าค่งท��
ค่�าค่งท��ในภาษาซี�ม� 2 ค่1าสุ��งค่+อค่1าสุ��ง constและ #define
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255522
การใชื่�ค่$าส��ง const สร�างค่�าค่งท��ตั้�วอย�างโปรแกรมี const1.c
#include<stdio.h>void main(){
const double pi=3.14;const float K=4;const char ch= ‘A’;const char company[10]=“INTER”;printf(“pi = %d\n”,pi);printf(“K = %f\n”,K);printf(“ch = %d\n”,ch);printf(“company name = %s”,company);
}
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255523
การใชื่�ค่$าส��ง #define สร�างค่�าค่งท��ตั้�วอย�างโปรแกรมี define1.c
#include<stdio.h>#define PI 3.14#define NAME “SASALAK”#define CH ‘a’void main(){
printf(“PI = %f\n”,PI);printf(“NAME = %s\n”,NAME);printf(“PI = %c\n”,CH);
}
C Programming
C-Programming
จั�นทร�ดารา สุ�ขสุาม @Rmuti Surin Campus : 255524
การใชื่�ค่$าส��ง #define สร�างค่�าค่งท��ตั้�วอย�างโปรแกรมี define2.c
#include<stdio.h>#define PI 3.14#define AREA(x) PI*x*x
void main(){
int r;printf(“R = ?”);scanf(“%d”, &r);printf(“Area = %f”,AREA(r) );
}
C Programming
C-Programming