EECP0110 C Language Computer Programming

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
Advertisements

1 C Programming An Introduction. 2 Preprocessing Directives เขียนได้ 2 รูปแบบ #include คอมไพเลอร์จะทำ การค้นหาเฮดเดอร์ไฟล์ที่ระบุ จากไดเร็คทอรีที่ใช้
โครงสร้างโปรแกรมภาษา C
ขั้นตอนวิธีและเครื่องมือในการพัฒนาโปรแกรม (ต่อ)
โดยอาจารย์ศิริพร ศักดิ์บุญญารัตน์ ครูชำนาญการ โรงเรียนมหิดลวิทยานุสรณ์
การเขียนโปรแกรมด้วยคำสั่งเบื้องต้น
ข้อมูลชนิดสตริง String บทที่ 8
LAB # 1.
ครั้งที่ 8 Function.
Control Statement if..else switch..case for while do-while.
การรับค่าและแสดงผล.
สายอักขระและ การประมวลผลสายอักขระ (String and String manipulation)
VARIABLES, EXPRESSION and STATEMENTS. Values and Data Types Value เป็นสิ่งพื้นฐาน มีลักษณะเป็น ตัวอักษร หรือ ตัวเลข อาทิ 2+2 หรือ “Hello world” Value.
Data Structures and Algorithms
: Chapter 1: Introduction 1 Montri Karnjanadecha ac.th/~montri Image Processing.
Color Standards A pixel color is represented as a point in 3-D space. Axis may be labeled as independent colors such as R, G, B or may use other independent.
ออโตมาตาจำกัด FINITE AUTOMATA
REGULAR EXPRESSION การบรรยายแบบสม่ำเสมอ
คำสั่งเพื่อการกำหนดเงื่อนไข
การแสดงผล และการรับข้อมูล
ตัวชี้ P O I N T E R Created By Tasanawan Soonklang
คำสั่งควบคุมการทำงาน
ตัวแปรชุด.
Lecture no. 10 Files System
การรับข้อมูลเบื้องต้นโดยใช้ฟังก์ชั่น scanf
บทที่ 6 ตัวแปรอาร์เรย์ (Array of Variable)
Functions Standard Library Functions User-defined Functions.
Programming With C Data Input & Output.
ตัวแปรชุดของอักขระ String
บทที่ 11 การเขียนโปรแกรมภาษาซี
WEEK#16: Method เมธอดคือกลุ่มคําสั่งที่ถูกกําหนดขึ้นเพื่อทำงาน อย่างใดอย่างหนึ่งเพื่อให้ได้ผลลัพธ์ตาม ต้องการ การประกาศเมธอด มีรูปแบบดังนี้ [modifier]
หน่วยที่ 5 การกำหนดเงื่อนไข. if - เลือกว่าทำหรือไม่ if if (เงื่อนไข) คำสั่ง;
หน่วยที่ 17 แอเรย์ของสตรัคเจอร์. แอเรย์ของข้อมูลสตรัคเจอร์ student_info student[30]; Student[0]Student[0].Name Student[0].Midterm Student[0].Assignment.
บทที่ ไลบรารีฟังก์ชัน
หน่วยที่ 1 พื้นฐานภาษา C
หน่วยที่ 14 การเขียนโปรแกรมย่อย
ตัวอย่างโปรแกรมคำนวณหาพื้นที่สี่เหลี่ยม
Chapter 2 Introduction to The C++ Language. Figure 2-1.
สตริง (String).
Page: 1 โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้ ผศ. บุรินทร์ รุจจน พันธุ์.. ปรับปรุง 19 ตุลาคม 2555 Introduction to Batch.
การเขียนโปรแกรมภาษาซี
Chapter 4 คำสั่งควบคุมทิศทาง
ตัวแปรกับชนิดของข้อมูล
แถวอักขระ (string) ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Java Programming Language.
Java Programming Language สาขาวิชาระบบสารสนเทศ คณะบริหารธุรกิจ มหาวิทยาลัยเทคโนโลยีราชมงคลกรุงเทพ.
การสร้าง WebPage ด้วย Java Script Wachirawut Thamviset.
Week 2 Variables.
การประมวลผลสายอักขระ
21 August ดรุณี ศมาวรรตกุล 1 2. ADT List - Unsorted list ADT - list implementation - Sorted List - Circular list - Doubly linked list.
2 /* ข้อความนี้เป็นเพียงคำอธิบาย ไม่มีผลต่อขั้นตอนการ ทำงานของโปรแกรม */ /* A simple program to display a line of text */ #include void main ( ) { printf.
Call by reference.
#include #define N 5 void main() { inti, X[N]; for (i=0; i < N; i++) { /* รับข้อมูล */ printf(“Enter number : ”); scanf(“%d”, &X[i] ); } for (i=0; i
Java Array and String Jarungjit Parnjai
Object-Oriented Programming with Java Burapha University, 2001 Java Array and String Week #3 Jarungjit Parnjai.
โครงสร้างภาษาซี #include <stdio.h> void main() {
บทที่ 10 สตริง.
คำสั่งเกี่ยวกับการรับ และแสดงผล
บทที่ 7 เงื่อนไขในภาษาซี
บทที่ 11 การจัดการข้อมูลสตริง
1 สตริง (String) การประกาศค่าตัวแปรสตริง การกำหนดค่าสตริง การอ้างอิงตัวอักษรแต่ละตัวในสตริง ฟังก์ชั่นที่ใช้ในการจัดการสตริง ฟังก์ชั่นในการเปลี่ยนรูปแบบของสตริง.
รูปแบบของการใช้คำสั่ง for for( ตัวแปร = ค่าเริ่มต้น ; นิพจน์ตรรกะ ; ค่าเพิ่มหรือค่าลด ) { statement(s); } ตัวอย่าง กรณีกำหนดการวนซ้ำเป็นค่าคงที่ For(n=1;n
Operator of String Data Type
Computer Programming I โดย อ.วิมลศรี เกตุโสภณ สาขาวิชาระบบสารสนเทศ
โปรแกรม ภาษา C ภาษาซี (C Language) เป็นภาษาหนึ่งสำหรับเขียนโปรแกรมคอมพิวเตอร์   พัฒนาขึ้นโดยนายเดนนิส  ริทชี่ (Dennis Ritche)  ในปี ค.ศ. 1972  เพื่อสร้างระบบปฏิบัติการยูนิกซ์
Chapter 9 ตัวชี้ pointer.
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
โครงสร้างโปรแกรมภาษา C
บทที่ 4 ตัวแปร (Variables)
การวิเคราะห์โจทย์ปัญหา (Problem Analysis)
ใบสำเนางานนำเสนอ:

EECP0110 C Language Computer Programming C String

Contents Basic of String in C Language 1 Basic of String in C Language 2 กำหนดค่าเริ่มต้นให้กับตัวแปร String 3 String Input Functions 4 String Output Functions 5 String Library Functions Computer Engineering Mahanakorn University of Technology.

Basic of String in C Language String ในภาษา C นั้นจะใช้ Array ของ Character มาสร้างเป็นข้อความ แต่จะมีอะไรที่แตกต่างจาก Array ของ Character คือจะมี null Character(\0) เป็นตัวปิดท้ายข้อความ char string[20]=“Initial Message”; [0] [1] [4] [9] [14] [15] [19] I n i t a l M e s g \0 ? ข้อมูลที่อยู่หลัง null character(\0) จะถูกมองข้าม ความยาวของข้อความคือ 15 ตัวอักษร Computer Engineering Mahanakorn University of Technology.

Basic of String in C Language String vs. Array of char String char color[] = “blue”; char color[] = {‘b’, ‘l’, ‘u’, ‘e’,‘\0’}; Array of char char color[] = {‘b’, ‘l’, ‘u’, ‘e’}; Computer Engineering Mahanakorn University of Technology.

Basic of String in C Language การประกาศตัวแปร String ในรูปแบบชนิด char* char month[] = “January”; สร้าง array ขนาด 5 char *monthPtr = “January”; สร้างตัวแปร pointer ที่ชี้ไปที่ string “January” ในหน่วยความจำ Computer Engineering Mahanakorn University of Technology.

กำหนดค่าเริ่มต้นให้กับตัวแปร String char msg[10] = “Computer”; char msg[10] = {‘C’,’o’,’m’,’p’,’u’,’t’,’e’,’r’,’\0’}; การกำหนดแบบไม่ได้กำหนดความยาวของตัวอักษรใน String char msg[ ] = “Computer”; char *msg = “Computer"; char msg[] = {‘C’,’o’,’m’,’p’.’u’,’t’,’e’,’r’,’\0’}; Computer Engineering Mahanakorn University of Technology.

ไม่สามารถกำหนดค่าของตัวแปร String… ...ส่งแก่ตัวแปรตัวอื่นได้ การ Copy String char str1[10]=“Computer”; char str2[30]; str2=str1; str2=“Computer”; ไม่สามารถกำหนดค่าของตัวแปร String… ...ส่งแก่ตัวแปรตัวอื่นได้ Computer Engineering Mahanakorn University of Technology.

String Input Functions scanf scanf( “%s”, msg ); scanf จะอ่านค่าของสตริงที่ user ป้อนให้ไปเรื่อยๆจนกว่า จะได้รับค่า space, newline หรือ end-of-file character Computer Engineering Mahanakorn University of Technology.

String Input Functions หากค่าสตริงที่อ่านมามีขนาดตัวอักษรยาวกว่าขนาดของตัวแปร array ที่จะจัดเก็บ จะเกิดผลอย่างไร char msg[10]; printf(“Enter Message : “); scanf(“%s”, msg); ? Computer Engineering Mahanakorn University of Technology.

String Input Functions การป้องกันไม่ให้อ่านค่าตัวอักษรเกินกว่าขนาดของสตริงที่กำหนด ทำได้โดยการระบุขนาดของตัวอักษรที่จะรับ char msg[10]; printf(“Enter Massage : “); scanf(“%9s”, msg); Computer Engineering Mahanakorn University of Technology.

String Input Functions Edit set ( %[…] ) คือ กลุ่มเครื่องหมายที่ใช้ในการกำหนดรูปแบบการอ่าน string โดย scanf จะเลือกอ่านตัวอักษรที่เหมือนกับตัวอักษรที่อยู่ใน […] ของ edit set เท่านั้น ตย. การอ่านค่าเงิน สกุลดอลล่าร์ เท่านั้น char msg[10]; printf(“Enter money : “); scanf(“%9[1234567890,.$]s”,msg); Computer Engineering Mahanakorn University of Technology.

String Input Functions การกำหนดค่าใน Edit set ( %[…] ) ให้ยกเว้นการอ่านค่าตัวอักษรบางตัว ทำได้โดยการ ใส่เครื่องหมาย ( ^ ) เช่นตัวอย่าง กำหนดให้อ่านตัวอักษรทั้งบรรทัด ยกเว้น newline จากตัวอย่าง scanf จะอ่านตัวอักษรจนกว่าจะพบ newline character จึงหยุดอ่าน char msg[100]; printf(“Enter message : “); scanf(“%81[^\n]s”,msg); Computer Engineering Mahanakorn University of Technology.

String Output Functions printf รูปแบบการจัดรูปแบบการพิมพ์ string printf( “%s”, msg ); printf( “%flagprecisions”, stringที่จะพิมพ์ ); Left-justify Computer Engineering Mahanakorn University of Technology.

String Output Functions printf(“|%+30s|”,”Computer”); Output: printf(“|%-30s|”,”Computer”); Computer Engineering Mahanakorn University of Technology.

String Output Functions printf(“|%-20.15s|”,”12345678901234567890”); Output: กำหนดระยะพิมพ์ 20 ตำแหน่ง แต่ให้พิมพ์ 15 ตัวอักษร Computer Engineering Mahanakorn University of Technology.

Standard Input/Output Library Functions Computer Engineering Mahanakorn University of Technology.

char *gets (char *s); #include<stdio.h> void main() { char name[20] = “”; char question[20] = “What is your name?”; puts(question); gets(name); printf(“You are %s\n”, name); } Computer Engineering Mahanakorn University of Technology.

char *gets (char *s); Computer Engineering Mahanakorn University of Technology.

int puts(const char *s) Computer Engineering Mahanakorn University of Technology.

โปรแกรมใช้ sprintf พิมพ์ข้อมูลไปเก็บใน array Computer Engineering Mahanakorn University of Technology.

String Library Functions #include <string.h> Computer Engineering Mahanakorn University of Technology.

int strlen( const char string[] ); String Length int strlen( const char string[] ); strlen คืนค่า ขนาดความยาวของสตริง หรือ จำนวนตัวอักษรในสตริง ไม่นับรวม null character ถ้าสตริงไม่มีตัวอักษรเลย จะคืนค่าศูนย์ Computer Engineering Mahanakorn University of Technology.

String Length #include<stdio.h> #include<string.h> void main() { char buff[20] = “”; int num; strcpy(buff,“What happen?”); num = strlen(buff); printf(“String contains %d character”,num); } Computer Engineering Mahanakorn University of Technology.

String Length #include<stdio.h> #include<string.h> void main() { char buff[20] = “”; strcpy(buff,“What happen?”); printf(“String contains %d character”, strlen(buff)); } Computer Engineering Mahanakorn University of Technology.

ตัวอย่างคำสั่ง strlen #include <stdio.h> #include <conio.h> #include <malloc.h> #include <string.h> void main(void) { char *message; int len; clrscr(); message = malloc(sizeof(char)*256); if(message != NULL) printf("Enter string : "); gets(message); len = strlen(message); printf("String length is %d", len); getch(); } else printf("Out of Memory\n"); free(message); ตัวอย่างคำสั่ง strlen ผลการทำงานโปรแกรม Enter string : Good Afternoon String length is 14 Computer Engineering Mahanakorn University of Technology.

String Copy ไม่สามารถกำหนดค่า String โดยใช้ assignment statement เช่น char str1[] = ”Test String”; char str2[12]; str2 = str1; str2 = ”Test String”; Computer Engineering Mahanakorn University of Technology.

String Copy char *strcpy( char *Destination, const char *Source ); Copies the C string pointed by Source into the array pointed by Destination, including the terminating null character char * strncpy ( char * Destination, const char * Source, size_t num ); Copies the first num characters of Source to Destination. If the end of the source C string (which is signaled by a null-character) is found before num characters have been copied, destination is padded with zeros until a total of num characters have been written to it. Computer Engineering Mahanakorn University of Technology.

String Copy การ Copy จะเป็นการ copy ตัวอักษรในสตริงตั้งแต่ตัวแรกไปเรื่อยๆ จนกว่า จะพบ ‘/0’ จึงหยุด ทำการ copy Computer Engineering Mahanakorn University of Technology.

strcpy Computer Engineering Mahanakorn University of Technology.

strncpy Computer Engineering Mahanakorn University of Technology.

Computer Engineering Mahanakorn University of Technology.

char * strcat ( char * destination, const char * source ); String Concatenate char * strcat ( char * destination, const char * source ); char * strncat ( char * destination, const char * source,size_t num ); strcat และ strncat นำสตริงชุดที่หนึ่งไปต่อท้าย สตริงชุดที่สอง โดยตัวอักษรตัวแรกของสตริงชุดที่สอง จะทับ null character ของ สตริงชุดที่หนึ่ง คืนค่า address ของ pointer ที่ชี้ สตริงผลลัพธ์ (address ของสตริงชุดที่หนึ่ง) Computer Engineering Mahanakorn University of Technology.

String Concatenate Computer Engineering Mahanakorn University of Technology.

int strcmp ( const char * str1, const char * str2 ); String Compare int strcmp ( const char * str1, const char * str2 ); Compares the C string str1 to the C string str2. This function starts comparing the first character of each string. If they are equal to each other, it continues with the following pairs until the characters differ or until a terminanting null-character is reached. int strncmp ( const char * str1, const char * str2, size_t num ); Compares up to num characters of the C string str1 to those of the C string str2. This function starts comparing the first character of each string. If they are equal to each other, it continues with the following pairs until the characters differ, until a terminating null-character is reached, or until num characters match in both strings, whichever happens first. Computer Engineering Mahanakorn University of Technology.

ผลลัพธ์จากการเปรียบเทียบมีดังนี้ int strcmp ( const char * str1, const char * str2 ); int strncmp ( const char * str1, const char * str2, size_t num ); str1 < str2 ค่าน้อยกว่า 0 str1 > str2 ค่ามากกว่า 0 str1 = str2 ค่าเท่ากับ 0 Computer Engineering Mahanakorn University of Technology.

strcmp(s1,s2); String Compare Computer Engineering Mahanakorn University of Technology.

strcmp(s1,s2); String Compare Computer Engineering Mahanakorn University of Technology.

strcmp(s1,s2); String Compare Computer Engineering Mahanakorn University of Technology.

ตัวอย่างการเขียนคำสั่ง strcmp เพื่อเปรียบเทียบ Computer Engineering Mahanakorn University of Technology.

ตัวอย่างการเขียนคำสั่ง strcmp เพื่อเปรียบเทียบ Computer Engineering Mahanakorn University of Technology.

ตัวอย่างผลลัพธ์ของการเปรียบเทียบโดยใช้ Strncmp strncmp(string1,string2,Size); Computer Engineering Mahanakorn University of Technology.

String Conversion Functions int atoi ( const char * str ); // Convert string to integer Parses the C string str interpreting its content as an integral number, which is returned as an int value. double atof ( const char * str ); // Convert string to double Parses the C string str interpreting its content as a floating point number and returns its value as a double. long atol ( const char * str ); // Convert string to long Parses the C string str interpreting its content as an integral number, which is returned as a long int value. Computer Engineering Mahanakorn University of Technology.

Computer Engineering Mahanakorn University of Technology.

Search character in String char * strchr ( char * str, int character ); Returns a pointer to the first occurrence of character in the C string str. Computer Engineering Mahanakorn University of Technology.