งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

บทที่ 11 การจัดการข้อมูลสตริง

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "บทที่ 11 การจัดการข้อมูลสตริง"— ใบสำเนางานนำเสนอ:

1 บทที่ 11 การจัดการข้อมูลสตริง
C-Programming บทที่ 11 การจัดการข้อมูลสตริง C Programming

2 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
C-Programming 2004 มีอะไรบ้างในบทนี้ C Programming 11.1 การสร้างและการจัดการกับตัวแปรสตริง 11.2 การรับและแสดงค่าสตริงด้วยฟังก์ชั่น puts() และ gets() 11.3 การกำหนดค่าให้กับตัวแปรสตริงด้วยฟังก์ชั่น sprintf() 11.4 ตัวแปรสตริงแบบ char 11.5 อาเรย์ของสตริง จันทร์ดารา Surin Campus : 2555

3 วิธีการสร้างตัวแปรสตริง
ตัวแปรสตริง (string) อีกนัยหนึ่งก็คือ ตัวแปรอาเรย์ของข้อมูลชนิด char วิธีการสร้างตัวแปรสตริงทำได้โดยการเขียนโค้ดลักษณะนี้ Char ชื่อตัวแปร[n]; Char name[10]; โดย n คือขนาดของอาเรย์ ต้องมีขนาดมากกว่า 1 ตัวอักษร เช่น ตัวแปร name เก็บข้อความ “Dreamhome” จันทร์ดารา Surin Campus : 2555

4 วิธีการกำหนดค่าให้กับตัวแปรสตริง
กำหนดค่าตอนประกาศตัวแปร Char name[20]=“Dreamhome”; Printf(“%s”,name); Char name[20]; name=“Dreamhome”; จันทร์ดารา Surin Campus : 2555

5 วิธีการกำหนดค่าให้กับตัวแปรสตริง
#include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char name[20]; strcpy(name, “Dreamhome”); printf(“%s”,name); รูปแบบ strcpy(ตัวแปรสตริงม “ข้อความที่ต้องการ”) จันทร์ดารา Surin Campus : 2555

6 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char str1[20] = “C language”; char str2[20]; strcpy(str2, str1); printf(“string 1 = %s\n”,str1); printf(“string 2 = %s\n”,str2); Getch(); } ผล C language จันทร์ดารา Surin Campus : 2555

7 การเพิ่มข้อความสตริง
#include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char str1[40] = “ ”; char str2[20] = “very easy”; strcat(str1, “C Language”); strcat(str1, “is”); strcat(str1, “str2”); printf(“string = %s\n”,str1); Getch(); } Strcat คือ ฟังก์ชั่นสำหรับการเพิ่มข้อความ รูปแบบ Strcat(ตัวแปรที่จะถูกเพิ่ม, “ข้อความที่ต้องการเพิ่ม”) ผลลัพธ์ String = C Language is very easy จันทร์ดารา Surin Campus : 2555

8 การหาความยาวของสตริง
#include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char buff[40]; int num; strcpy(buff, “what happened?”); num=strlen(buff); printf(“Your string contains %d character”,num); Getch(); } strlen เป็นฟังก์ชั่นสำหรับหาความยาวของ string ผลลัพธ์ Your string contains 14 character จันทร์ดารา Surin Campus : 2555

9 การหาความยาวของสตริง (เขียนให้สั้นลง)
Int main(){ char buff[40]; strcpy(buff, “what happened?”); printf(“Your string contains %d character”,strlen(buff)); ผลลัพธ์ Your string contains 14 character จันทร์ดารา Surin Campus : 2555

10 การหาความยาวของสตริง
#include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char buff[40]; int count; int num; strcpy(buff, “Johnny English”); num=strlen(buff); for (count=0;count<num;count++) printf(“character is %d is %c\n”, count,buff[count]); Getch(); } Count+1 จันทร์ดารา Surin Campus : 2555

11 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
การเปรียบเทียบสตริง การเปรียบเทียบสตริงจะใช้เครื่องหมาย ==,>=,< แบบการ เปรียบเทียบตัวเลขไม่ได้ จะต้องใช้ฟังก์ชั่น strcmp() (string Compare) ช่วยในการเปรียบเทียบข้อมูลสตริง รูปแบบ Strcmp(ข้อความ1,ข้อความ2); จันทร์ดารา Surin Campus : 2555

12 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char buff1[20]=“AAA”; char buff2[20]=“AAA”; int result; result=strcmp(buff1,buff2); if(result==0) printf(“Equal”); if(result>0) printf(“buff1 > buff2”); if(result<0) printf(“buff1<buff2”); Getch(); } จันทร์ดารา Surin Campus : 2555

13 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char name[20]=“”; printf(“Username :”); scanf(“%s”,name); if(strcmp(name, “root”)==0) printf(“Welcome root”); else printf(“Go away!!!”); Getch(); } จันทร์ดารา Surin Campus : 2555

14 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char name[20]; printf(“Username : ”); scanf(“%s”,name); if(strcmp(name, “root”)!=0) printf(“Go away”); else printf(“Welcome root”); Getch(); } จันทร์ดารา Surin Campus : 2555

15 ฟังก์ชั่น puts() และ gets()
ซึ่งสามารถใช้แทนฟังก์ชั่น printf() และ scanf() ได้ จันทร์ดารา Surin Campus : 2555

16 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char name[20]=“”; printf(“what is your name?”) gets(name); puts(name); Getch(); } จันทร์ดารา Surin Campus : 2555

17 กำหนดค่าให้กับตัวแปรสตริงด้วย sprintf()
ฟังก์ชั่น sprintf() เป็นเหมือนกับการ เอาฟังกชั่น printf() และฟังก์ชั่น strcpy มารวมกัน จันทร์ดารา Surin Campus : 2555

18 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> #include<string.h> Int main(){ char name[20]=“”; char buff1[40]=“”; int age=25; strcpy(name, “Somsak”); sprintf(buff1, “My name is %s I’m %d years old.”,name,age); put(buff1); Getch(); } จันทร์ดารา Surin Campus : 2555

19 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวแปรสตริงแบบ char* ตัวแปรแบบสตริงพอยเตอร์ (string pointer) ข้อดี คือ เราสามารถนำไปใช้งานได้ง่ายขึ้น คือ เราสามารถกำหนดค่าให้กับตัวแปรสตริงทีหลังโดยใช้เครื่องหมาย = ได้ ไม่ต้องใช้ฟังก์ชั่น strcpy() เหมือนในตัวอย่างที่ผ่านมา จันทร์ดารา Surin Campus : 2555

20 Username = admin, password = 1234
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> Int main(){ char *user; char *password; user = “admin”; password = “1234”; printf(“username = %s, password = %s”,user,password); Getch(); } รูปแบบการตั้งชื่อตัวแปรจะมี * หน้าตัวแปรเสมอ ผลการรัน Username = admin, password = 1234 จันทร์ดารา Surin Campus : 2555

21 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
อาเรย์ของสตริง Char *name[20]=“NIRUTH”; Char *lastname=“ABC”; Char *phone=“ ”; Char *address=“BANGKOK”; Char *data[]={“Niruth”, “ABC”, “ ”, “BANGKOK”}; เป็นการประหยัดตัวแปรดังภาพ จันทร์ดารา Surin Campus : 2555

22 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
ตัวอย่างโปรแกรม #include<stdio.h> #include<conio.h> Int main(){ char *data[]={“Niruth”, “ABC”, “422432”, “BANGKOK”}; printf(“You are %s %s\n”,data[0],data[1]); printf(“Your telephone number is %s\n”,data[2]); printf(“You stay in %s\n”,data[3]); Getch(); } จันทร์ดารา Surin Campus : 2555

23 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
The End Question? จันทร์ดารา Surin Campus : 2555

24 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
แบบฝึกหัด 1. เขียนโปรแกรมรับข้อความจากผู้ใช้มา 1 ข้อความ จากนั้นให้แสดงข้อความนั้นแบบย้อนกลับ ดังตัวอย่าง I love C C love I 2. สร้างตัวแปรสตริงมา 3 ตัว ตั้งชื่อตัวแปรว่าอะไรก็ได้ กำหนดให้ตัวแปรสตริงตัวแรกเก็บข้อความว่า “A Cup of Tea” ให้ใช้ฟังก์ชั่นในการจัดการสตริง ก๊อปปี้ข้อความนี้จากตัวแปรสตริงตัวแรกมายังสตริงตัวที่ 2 และตัวที่ 3 จันทร์ดารา Surin Campus : 2555

25 จันทร์ดารา สุขสาม @Rmuti Surin Campus : 2555
แบบฝึกหัด 3.เขียนโปรแกรมรับชื่อและรหัสผ่าน ถ้าชื่อไม่ใช่ admin และรหัสผ่านไม่ใช่ oopser ให้แจ้งข้อความว่า Error แต่ถ้าใช่ ก็ให้แสดงข้อความว่า Welcome Admin 4. เขียนโปรแกรมรับข้อความมา 3 ข้อความ จากนั้นรวมข้อความทั้ง 3 ให้อยู่ในตัวแปรเดียว แล้วแสดงออกทางจอภาพ จันทร์ดารา Surin Campus : 2555


ดาวน์โหลด ppt บทที่ 11 การจัดการข้อมูลสตริง

งานนำเสนอที่คล้ายกัน


Ads by Google