ݺߣ

ݺߣShare a Scribd company logo
บทที่ 7
ฟังก์ชันมาตรฐาน
ฟังก์ชัน ในภาษาซี มี 2 ชนิด คือ ฟังก์ชันมาตรฐาน(standard
function) กับ ฟังก์ชันที่ผู้เขียนโปรแกรมเขียนขึ้นเอง (user defined
function)
ฟังก์ชันมาตรฐาน เป็นฟังก์ชันที่ผู้ผลิตคอมไพล์เลอร์เขียนขึ้นเพื่อผู้ใช้
นาไปใช้ในการเขียนโปรแกรมเพื่อให้เขียนโปรแกรมได้สะดวกและง่ายขึ้น บางครั้งอาจ
เรียกว่า library functions ปกติฟังก์ชันเหล่านี้จะจัดเก็บไว้ใน header files
ดังนั้นผู้ใช้จะต้องรู้ว่าฟังก์ชันนั้นอยู่ใน header file ใด จึงจะนาไปเรียกใช้ในส่วนต้น
ของโปรแกรม ด้วย #include <header file.h> ได้ เช่น #include
<stdio.h> ฟังก์ชันมีมากมาย อาจจาแนกดังนี้
ฟังก์ชันทางคณิตศาสตร์ เป็นฟังก์ชันที่ใช้ทางการคานวณ ทางคณิตศาสตร์
ปกติอยู่ใน math.h ผลลัพธ์ ที่ได้จากฟังก์ชันกลุ่มนี้เป็นข้อมูลประเภท double
ดังนั้นตัวแปรที่ใช้จึงเป็นพวกที่มีชนิดเป็น double
ฟังก์ชัน sin(x) เป็นฟังก์ชันใช้คานวณหาค่าของ sine โดย x มีค่าของมุมในหน่วย เรเดียน
ฟังก์ชัน cos(x) ใช้หาค่า cosine โดย x มีหน่วยเป็นเรเดียน(radian)
ฟังก์ชัน tan(x) ใช้หาค่า tangent โดย x มีหน่วยเป็นเรเดียน(radian)
ตัวอย่าง /* math1.c */
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{ float deg , angle, pi = 3.141592654; clrscr();
printf("Please enter value of angle in degree that you want to find
tan cos sin :");
scanf("%f",&deg);
angle = deg * pi / 180; /* เปลี่ยนค่า องศา ให้เป็นเรเดียน */
printf("nvalue of tangent %4.0f degree is %4.2f ",deg,tan(angle));
printf("nvalue of sine %4.0f degree is %4.2f ",deg,sin(angle));
printf("nvalue of cosine %4.0f degree is %4.2f ",deg,cos(angle));
}
ฟังก์ชัน sqrt(x) ใช้หาค่ารากที่สองของ x โดย x เป็นตัวเลขหรือตัวแปรที่
ไม่ติดลบ
ฟังก์ชัน exp(x) ใช้หาค่า ex โดย e มีค่าประมาณ 2.718282
ฟังก์ชัน pow(x,y) ใช้หาค่า x y
ฟังก์ชัน log(x) ใช้หาค่า log ฐาน e เรียกว่า natural logarithm
โดย x เป็นตัวเลขหรือตัวแปรที่ไม่ติดลบ
ฟังก์ชัน log10(x) ใช้หาค่า log ฐาน 10 โดย x เป็นตัวเลขหรือตัวแปรที่
ไม่ติดลบ
ฟังก์ชัน ceil(x) ใช้ในการปัดเศษทศนิยมของ x เมื่อ x เป็นเลขทศนิยม
ฟังก์ชัน floor(x) ใช้ในการตัดเศษทศนิยมของ x ทิ้งเมื่อ x เป็นเลข
ทศนิยม
ฟังก์ชัน fabs(x) ใช้ในการหาค่าสัมบูรณ์ของค่าคงที่หรือตัวแปรที่มีทศนิยม
โดยเป็นบวกหรือลบก็ได้
ตัวอย่าง ให้นักเรียนศึกษาการทางานของโปรแกรม /* math2.c */ แล้วป้อนโปรแกรม
และตรวจสอบการทางานว่าตรงกับที่คาดคะเนหรือไม่
/* math2.c */
#include <stdio.h>
#include <conio.h>
#include <math.h>
main()
{
double x = 10.0 , y = 2.0 ,z = 16.0,a = 2.718282 , b = -2.718282 , m=1.0;
clrscr();
printf("npow(x,y) = %4.2f when x=10.0 y=2.0", pow(x,y));
printf("nsqrt(z) = %4.2f when z=16.0", sqrt(z));
printf("nexp(m) = %4.6f when m=1.0",exp(m));
printf("nlog(a) = %4.2f when a=2.718282",log(a));
printf("nlog10(x) = %4.2f when x=10.0",log10(x));
printf("nceil(a) = %4.2f when a=2.718282",ceil(a));
printf("nceil(b) = %4.2f when b=-2.718282",ceil(b));
printf("nfloor(a) = %4.2f when a=2.718282",floor(a));
printf("nfloor(b) = %4.2f when b=-2.718282",floor(b));
printf("nfabs(a) = %4.6f when a=2.718282" ,fabs(a));
printf("nfabs(b) = %4.6f when b=-2.718282" ,fabs(b));
}
ฟังก์ชันที่จัดการเกี่ยวกับตัวอักษร(character functions) เป็น
ฟังก์ชันที่จัดการกับตัวอักษร single char เท่านั้น ตัวอักษรนี้ใช้หน่วยความจาเพียง
1 ไบต์ ฟังก์ชันเหล่านี้อยู่ใน header file ชื่อ ctype.h ก่อนจะทาการเขียน
โปรแกรมจึงต้อง #include <ctype.h> เข้ามาในส่วนต้นของโปรแกรม
ฟังก์ชัน isalnum(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง
คือตัวแปรประเภท char ) เป็นตัวอักขระหรือตัวเลขหรือไม่ ถ้าเป็นตัวอักษรหรือตัวเลข
ฟังก์ชันจะส่งค่าที่ไม่ใช่ 0 มาให้ ถ้าข้อมูลในตัวแปร เป็นอักขระพิเศษอื่นที่ไม่ตัวอักษรหรือ
ตัวเลขจะส่งค่าออกมาเป็น 0
ฟังก์ชัน isalpha(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง
คือตัวแปรประเภท char ) เป็นตัวอักขระหรือไม่ ถ้าเป็นตัวอักษรฟังก์ชันจะให้ค่าที่ไม่ใช่
0 ออกมาถ้าเป็นตัวเลขหรืออักขระพิเศษอื่นฟังก์ชันจะส่งค่า 0 ออกมา
ฟังก์ชัน isdigit(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง
คือตัวแปรประเภท char ) ฟังก์ชัน เป็นตัวเลขหรือไม่ ถ้าเป็นตัวเลขฟังก์ชันจะให้ค่าที่
ไม่ใช่ 0 ออกมา ถ้าเป็นตัวอักษรหรืออักขระพิเศษอื่น ฟังก์ชันจะส่ง 0 ออกมา
ตัวอย่าง /* isalnumPhadigit.c */
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
main()
{
clrscr();
char cha1 = 'B' ,cha2 ='3',cha3= '&';
printf("n %d is return value of isdigit(cha1) of %c",isdigit(cha1),cha1);
printf("n %d is return value of isdigit(cha2) of %c ",isdigit(cha2),cha2);
printf("n %d is return value of isalpha(cha3) of %c ",isalpha(cha3),cha3);
printf("n %d is return value of isalpha(A) of %c ",isalpha('A'),'A');
printf("n %d is return value of isalpha('0') of %c ",isalpha('0'),'0');
printf("n %d is return value of isalpha('$') of %c ",isalpha('$'),'$');
printf("n %d is return value of isalnum(cha1) of %c",isalnum(cha1),cha1);
printf("n %d is return value of isalnum(cha2) of %c ",isalnum(cha2),cha2);
printf("n %d is return value of isalnum(cha3) of %c ",isalnum(cha3),cha3);
printf("n %d is return value of isalnum(A) of %c ",isalnum('A'),'A');
printf("n %d is return value of isalnum('0') of %c ",isalnum('0'),'0');
printf("n %d is return value of isalnum('$') of %c ",isalnum('$'),'$');
}
ฟังก์ชัน islower(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าตัวอักขระในตัวแปร
cha เป็นตัวพิมพ์เล็กหรือไม่ ถ้าเป็นตัวพิมพ์เล็กฟังก์ชันจะส่งค่ากลับเป็นจานวนเต็มที่
ไม่ใช่ 0 แต่ถ้าไม่ใช่ตัวพิมพ์เล็กจะส่งค่ากลับเป็น 0
ฟังก์ชัน isupper(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าตัวอักขระในตัวแปร
cha เป็นตัวพิมพ์ใหญ่หรือไม่ ถ้าเป็นตัวพิมพ์ใหญ่ ฟังก์ชันจะส่งค่ากลับเป็นจานวนเต็มที่
ไม่ใช่ 0 แต่ถ้าไม่ใช่ตัวพิมพ์ใหญ่จะส่งค่ากลับเป็น 0
ฟังก์ชัน tolower(cha) ฟังก์ชันที่ใช้เปลี่ยนตัวพิมพ์ใหญ่ที่เก็บอยู่ในตัว
แปรให้เป็นตัวพิมพ์เล็ก
ฟังก์ชัน toupper(cha) ฟังก์ชันที่ใช้เปลี่ยนตัวพิมพ์เล็กที่เก็บอยู่ในตัว
แปรให้เป็นตัวพิมพ์ใหญ่
ตัวอย่าง /* upperlower.c */
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
main()
{
char cha1 = 'D' , cha2 = 'a' ,cha3 = 'f' , cha4 = 'N' ;
clrscr();
printf("ncheck cha1 = 'D' is uppercase yes or no : %d
",isupper(cha1));
printf("ncheck cha2 = 'a' is lower yes or no : %d ",islower(cha2));
printf("ncheck cha2 = 'a' is upper yes or no : %d ",isupper(cha2));
printf("ncheck 'i' is lower yes or no : %d ",islower('i'));
printf("ncheck 'L' is uppercase yes or no : %d ",isupper('L'));
printf("nchange cha3 = 'f' to uppercase %c : ", toupper(cha3));
printf("nchange cha4 = 'N' to lowercase %c : ", tolower(cha4));
}
ฟังก์ชัน isspace(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร cha เป็น whitespace หรือไม่
whitespace ได้แก่ space ,tab ,vertical tab ,formfeed ,carriage retun ,newline ถ้ามี
whitespace จริง ฟังก์ชันจะส่งค่าไม่เท่ากับ 0 ถ้าไม่จริงจะส่งค่า 0
ฟังก์ชัน isxdigit(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร cha เป็น เลขฐานสิบหก ( คือ 0-9 , A-F , a
– f) หรือไม่ ถ้าจริงส่งค่าตัวเลขที่ไม่ใช่ 0 ถ้าไม่จริงส่งตัวเลข 0
ตัวอย่าง /*isspaceisxdigit.c */
#include <stdio.h>
#include <conio.h>
#include <ctype.h>
main()
{
char cha1 ='r',cha2= 'n',cha3='v' ,cha4 ='A';
clrscr();
printf("n%d is volue return from isspace %c ",isspace(cha1),cha1);
printf("n%d is volue return from isspace %c ",isspace(cha2),cha2);
printf("n%d is volue return from isspace %c ",isspace(cha3),cha3);
printf("n%d is volue return from isxdigit %c ",isxdigit(cha4),cha4);
printf("n%d is volue return from isxdigit %c ",isxdigit('0'),'0');
printf("n%d is volue return from isxdigit %c ",isxdigit('g'),'g');
}
ฟังก์ชัน gotoxy(x,y); เป็นฟังก์ชันอยู่ใน conio.h ใช้สั่งให้เคอร์เซอร์
เคลื่อนที่ไปตามตาแหน่งที่ระบุ โดย x คือ ตาแหน่งของสดมภ์บนจอภาพ (คล้ายค่า x
ของกราฟ)ค่าเพิ่มจากซ้ายไปขวามีค่าตั้งแต่ 1 ถึง 79 ตาแหน่งที่ 80 สงวนไว้ไม่ให้ใช้
ส่วน y คือตาแหน่งแถวบนจอภาพนับจากบนลงล่าง มีค่าได้ตั้งแต่ 1 ถึง 24
ตาแหน่งที่25 สงวนไว้
ฟังก์ชัน clreol(); เป็นฟังก์ชันอยู่ใน conio.h ใช้ลบข้อความตั้งแต่
ตาแหน่งที่เคอร์เซอร์อยู่ไปจนจบบรรทัด
ฟังก์ชัน delline(); เป็นฟังก์ชันอยู่ในconio.h ใช้ลบข้อความทั้ง
บรรทัดที่เคอร์เซอร์อยู่ไปจนจบบรรทัดและเลื่อนข้อความในบรรทัดล่างขึ้นมาแทน
ฟังก์ชัน insline(); เป็นฟังก์ชันอยู่ในconio.h ใช้แทรกบรรทัดว่าง 1
บรรทัดใต้บรรทัดที่เคอร์เซอร์อยู่
ฟังก์ชัน system(“dos command”); เป็นฟังก์ชันอยู่ในstdlib.h
ใช้เรียกคาสั่งของ dos ขึ้นมาทางาน เช่นคาสั่ง cls dir date time
ฟังก์ชัน abort(); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้ ยกเลิกการทางาน
ของโปรแกรมทันทีไม่ว่าจะทางานสาเร็จหรือไม่ และมีข้อความ Abnomal
program termination แสดงทางจอภาพ
ฟังก์ชัน abs(x); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้หาค่าสัมบูรณ์ของ x
โดย x ต้องเป็นจานวนเต็ม
ฟังก์ชัน labs(x); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้หาค่าสัมบูรณ์ของ x
โดย x ต้องเป็นlong integer
ฟังก์ชัน atoi(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้
เป็นเลขจานวนเต็ม
ฟังก์ชัน atol(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้
เป็น long integer
ฟังก์ชัน atof(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้
เป็น floating point
ตัวอย่าง /* atoilf.c */
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
int main(void)
{ char numstring1[10],numstring2[10],numstring3[10];
int in1; float flo1; long lon1; clrscr();
printf("nEnter number as string1 : ");
scanf("%s",numstring1);
printf("nEnter number as string2 : ");
scanf("%s",numstring2);
printf("nEnter number as string3 : ");
scanf("%s",numstring3);
in1 = atoi(numstring1); flo1 = atof(numstring2); lon1=atol(numstring3);
printf("nnumstring1 =%s change to integer %d ",numstring1,in1);
printf("nnumstring2 =%s change to floating point %4.4f ",numstring2,flo1);
printf("nnumstring3 =%s change to long integer %d ",numstring3,lon1);
printf("nsummation of in1,flo1,lon1 is %6.4f ",in1+flo1+lon1);
printf("nsummation of atoi(numstring1),atof(numstring2),atol(numstring2) is
%6.4lf:",atoi(numstring1)+atof(numstring2)+atol(numstring3));
}

More Related Content

บทที่ 7

  • 2. ฟังก์ชันมาตรฐาน ฟังก์ชัน ในภาษาซี มี 2 ชนิด คือ ฟังก์ชันมาตรฐาน(standard function) กับ ฟังก์ชันที่ผู้เขียนโปรแกรมเขียนขึ้นเอง (user defined function) ฟังก์ชันมาตรฐาน เป็นฟังก์ชันที่ผู้ผลิตคอมไพล์เลอร์เขียนขึ้นเพื่อผู้ใช้ นาไปใช้ในการเขียนโปรแกรมเพื่อให้เขียนโปรแกรมได้สะดวกและง่ายขึ้น บางครั้งอาจ เรียกว่า library functions ปกติฟังก์ชันเหล่านี้จะจัดเก็บไว้ใน header files ดังนั้นผู้ใช้จะต้องรู้ว่าฟังก์ชันนั้นอยู่ใน header file ใด จึงจะนาไปเรียกใช้ในส่วนต้น ของโปรแกรม ด้วย #include <header file.h> ได้ เช่น #include <stdio.h> ฟังก์ชันมีมากมาย อาจจาแนกดังนี้ ฟังก์ชันทางคณิตศาสตร์ เป็นฟังก์ชันที่ใช้ทางการคานวณ ทางคณิตศาสตร์ ปกติอยู่ใน math.h ผลลัพธ์ ที่ได้จากฟังก์ชันกลุ่มนี้เป็นข้อมูลประเภท double ดังนั้นตัวแปรที่ใช้จึงเป็นพวกที่มีชนิดเป็น double
  • 3. ฟังก์ชัน sin(x) เป็นฟังก์ชันใช้คานวณหาค่าของ sine โดย x มีค่าของมุมในหน่วย เรเดียน ฟังก์ชัน cos(x) ใช้หาค่า cosine โดย x มีหน่วยเป็นเรเดียน(radian) ฟังก์ชัน tan(x) ใช้หาค่า tangent โดย x มีหน่วยเป็นเรเดียน(radian) ตัวอย่าง /* math1.c */ #include <stdio.h> #include <conio.h> #include <math.h> main() { float deg , angle, pi = 3.141592654; clrscr(); printf("Please enter value of angle in degree that you want to find tan cos sin :"); scanf("%f",&deg); angle = deg * pi / 180; /* เปลี่ยนค่า องศา ให้เป็นเรเดียน */ printf("nvalue of tangent %4.0f degree is %4.2f ",deg,tan(angle)); printf("nvalue of sine %4.0f degree is %4.2f ",deg,sin(angle)); printf("nvalue of cosine %4.0f degree is %4.2f ",deg,cos(angle)); }
  • 4. ฟังก์ชัน sqrt(x) ใช้หาค่ารากที่สองของ x โดย x เป็นตัวเลขหรือตัวแปรที่ ไม่ติดลบ ฟังก์ชัน exp(x) ใช้หาค่า ex โดย e มีค่าประมาณ 2.718282 ฟังก์ชัน pow(x,y) ใช้หาค่า x y ฟังก์ชัน log(x) ใช้หาค่า log ฐาน e เรียกว่า natural logarithm โดย x เป็นตัวเลขหรือตัวแปรที่ไม่ติดลบ ฟังก์ชัน log10(x) ใช้หาค่า log ฐาน 10 โดย x เป็นตัวเลขหรือตัวแปรที่ ไม่ติดลบ ฟังก์ชัน ceil(x) ใช้ในการปัดเศษทศนิยมของ x เมื่อ x เป็นเลขทศนิยม ฟังก์ชัน floor(x) ใช้ในการตัดเศษทศนิยมของ x ทิ้งเมื่อ x เป็นเลข ทศนิยม ฟังก์ชัน fabs(x) ใช้ในการหาค่าสัมบูรณ์ของค่าคงที่หรือตัวแปรที่มีทศนิยม โดยเป็นบวกหรือลบก็ได้
  • 5. ตัวอย่าง ให้นักเรียนศึกษาการทางานของโปรแกรม /* math2.c */ แล้วป้อนโปรแกรม และตรวจสอบการทางานว่าตรงกับที่คาดคะเนหรือไม่ /* math2.c */ #include <stdio.h> #include <conio.h> #include <math.h> main() { double x = 10.0 , y = 2.0 ,z = 16.0,a = 2.718282 , b = -2.718282 , m=1.0; clrscr(); printf("npow(x,y) = %4.2f when x=10.0 y=2.0", pow(x,y)); printf("nsqrt(z) = %4.2f when z=16.0", sqrt(z)); printf("nexp(m) = %4.6f when m=1.0",exp(m)); printf("nlog(a) = %4.2f when a=2.718282",log(a)); printf("nlog10(x) = %4.2f when x=10.0",log10(x)); printf("nceil(a) = %4.2f when a=2.718282",ceil(a)); printf("nceil(b) = %4.2f when b=-2.718282",ceil(b)); printf("nfloor(a) = %4.2f when a=2.718282",floor(a)); printf("nfloor(b) = %4.2f when b=-2.718282",floor(b)); printf("nfabs(a) = %4.6f when a=2.718282" ,fabs(a)); printf("nfabs(b) = %4.6f when b=-2.718282" ,fabs(b)); }
  • 6. ฟังก์ชันที่จัดการเกี่ยวกับตัวอักษร(character functions) เป็น ฟังก์ชันที่จัดการกับตัวอักษร single char เท่านั้น ตัวอักษรนี้ใช้หน่วยความจาเพียง 1 ไบต์ ฟังก์ชันเหล่านี้อยู่ใน header file ชื่อ ctype.h ก่อนจะทาการเขียน โปรแกรมจึงต้อง #include <ctype.h> เข้ามาในส่วนต้นของโปรแกรม ฟังก์ชัน isalnum(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง คือตัวแปรประเภท char ) เป็นตัวอักขระหรือตัวเลขหรือไม่ ถ้าเป็นตัวอักษรหรือตัวเลข ฟังก์ชันจะส่งค่าที่ไม่ใช่ 0 มาให้ ถ้าข้อมูลในตัวแปร เป็นอักขระพิเศษอื่นที่ไม่ตัวอักษรหรือ ตัวเลขจะส่งค่าออกมาเป็น 0 ฟังก์ชัน isalpha(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง คือตัวแปรประเภท char ) เป็นตัวอักขระหรือไม่ ถ้าเป็นตัวอักษรฟังก์ชันจะให้ค่าที่ไม่ใช่ 0 ออกมาถ้าเป็นตัวเลขหรืออักขระพิเศษอื่นฟังก์ชันจะส่งค่า 0 ออกมา ฟังก์ชัน isdigit(cha) เป็นฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร(ซึ่ง คือตัวแปรประเภท char ) ฟังก์ชัน เป็นตัวเลขหรือไม่ ถ้าเป็นตัวเลขฟังก์ชันจะให้ค่าที่ ไม่ใช่ 0 ออกมา ถ้าเป็นตัวอักษรหรืออักขระพิเศษอื่น ฟังก์ชันจะส่ง 0 ออกมา
  • 7. ตัวอย่าง /* isalnumPhadigit.c */ #include <stdio.h> #include <ctype.h> #include <conio.h> main() { clrscr(); char cha1 = 'B' ,cha2 ='3',cha3= '&'; printf("n %d is return value of isdigit(cha1) of %c",isdigit(cha1),cha1); printf("n %d is return value of isdigit(cha2) of %c ",isdigit(cha2),cha2); printf("n %d is return value of isalpha(cha3) of %c ",isalpha(cha3),cha3); printf("n %d is return value of isalpha(A) of %c ",isalpha('A'),'A'); printf("n %d is return value of isalpha('0') of %c ",isalpha('0'),'0'); printf("n %d is return value of isalpha('$') of %c ",isalpha('$'),'$'); printf("n %d is return value of isalnum(cha1) of %c",isalnum(cha1),cha1); printf("n %d is return value of isalnum(cha2) of %c ",isalnum(cha2),cha2); printf("n %d is return value of isalnum(cha3) of %c ",isalnum(cha3),cha3); printf("n %d is return value of isalnum(A) of %c ",isalnum('A'),'A'); printf("n %d is return value of isalnum('0') of %c ",isalnum('0'),'0'); printf("n %d is return value of isalnum('$') of %c ",isalnum('$'),'$'); }
  • 8. ฟังก์ชัน islower(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าตัวอักขระในตัวแปร cha เป็นตัวพิมพ์เล็กหรือไม่ ถ้าเป็นตัวพิมพ์เล็กฟังก์ชันจะส่งค่ากลับเป็นจานวนเต็มที่ ไม่ใช่ 0 แต่ถ้าไม่ใช่ตัวพิมพ์เล็กจะส่งค่ากลับเป็น 0 ฟังก์ชัน isupper(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าตัวอักขระในตัวแปร cha เป็นตัวพิมพ์ใหญ่หรือไม่ ถ้าเป็นตัวพิมพ์ใหญ่ ฟังก์ชันจะส่งค่ากลับเป็นจานวนเต็มที่ ไม่ใช่ 0 แต่ถ้าไม่ใช่ตัวพิมพ์ใหญ่จะส่งค่ากลับเป็น 0 ฟังก์ชัน tolower(cha) ฟังก์ชันที่ใช้เปลี่ยนตัวพิมพ์ใหญ่ที่เก็บอยู่ในตัว แปรให้เป็นตัวพิมพ์เล็ก ฟังก์ชัน toupper(cha) ฟังก์ชันที่ใช้เปลี่ยนตัวพิมพ์เล็กที่เก็บอยู่ในตัว แปรให้เป็นตัวพิมพ์ใหญ่
  • 9. ตัวอย่าง /* upperlower.c */ #include <stdio.h> #include <ctype.h> #include <conio.h> main() { char cha1 = 'D' , cha2 = 'a' ,cha3 = 'f' , cha4 = 'N' ; clrscr(); printf("ncheck cha1 = 'D' is uppercase yes or no : %d ",isupper(cha1)); printf("ncheck cha2 = 'a' is lower yes or no : %d ",islower(cha2)); printf("ncheck cha2 = 'a' is upper yes or no : %d ",isupper(cha2)); printf("ncheck 'i' is lower yes or no : %d ",islower('i')); printf("ncheck 'L' is uppercase yes or no : %d ",isupper('L')); printf("nchange cha3 = 'f' to uppercase %c : ", toupper(cha3)); printf("nchange cha4 = 'N' to lowercase %c : ", tolower(cha4)); }
  • 10. ฟังก์ชัน isspace(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร cha เป็น whitespace หรือไม่ whitespace ได้แก่ space ,tab ,vertical tab ,formfeed ,carriage retun ,newline ถ้ามี whitespace จริง ฟังก์ชันจะส่งค่าไม่เท่ากับ 0 ถ้าไม่จริงจะส่งค่า 0 ฟังก์ชัน isxdigit(cha) ฟังก์ชันที่ใช้ตรวจสอบว่าข้อมูลในตัวแปร cha เป็น เลขฐานสิบหก ( คือ 0-9 , A-F , a – f) หรือไม่ ถ้าจริงส่งค่าตัวเลขที่ไม่ใช่ 0 ถ้าไม่จริงส่งตัวเลข 0 ตัวอย่าง /*isspaceisxdigit.c */ #include <stdio.h> #include <conio.h> #include <ctype.h> main() { char cha1 ='r',cha2= 'n',cha3='v' ,cha4 ='A'; clrscr(); printf("n%d is volue return from isspace %c ",isspace(cha1),cha1); printf("n%d is volue return from isspace %c ",isspace(cha2),cha2); printf("n%d is volue return from isspace %c ",isspace(cha3),cha3); printf("n%d is volue return from isxdigit %c ",isxdigit(cha4),cha4); printf("n%d is volue return from isxdigit %c ",isxdigit('0'),'0'); printf("n%d is volue return from isxdigit %c ",isxdigit('g'),'g'); }
  • 11. ฟังก์ชัน gotoxy(x,y); เป็นฟังก์ชันอยู่ใน conio.h ใช้สั่งให้เคอร์เซอร์ เคลื่อนที่ไปตามตาแหน่งที่ระบุ โดย x คือ ตาแหน่งของสดมภ์บนจอภาพ (คล้ายค่า x ของกราฟ)ค่าเพิ่มจากซ้ายไปขวามีค่าตั้งแต่ 1 ถึง 79 ตาแหน่งที่ 80 สงวนไว้ไม่ให้ใช้ ส่วน y คือตาแหน่งแถวบนจอภาพนับจากบนลงล่าง มีค่าได้ตั้งแต่ 1 ถึง 24 ตาแหน่งที่25 สงวนไว้ ฟังก์ชัน clreol(); เป็นฟังก์ชันอยู่ใน conio.h ใช้ลบข้อความตั้งแต่ ตาแหน่งที่เคอร์เซอร์อยู่ไปจนจบบรรทัด ฟังก์ชัน delline(); เป็นฟังก์ชันอยู่ในconio.h ใช้ลบข้อความทั้ง บรรทัดที่เคอร์เซอร์อยู่ไปจนจบบรรทัดและเลื่อนข้อความในบรรทัดล่างขึ้นมาแทน ฟังก์ชัน insline(); เป็นฟังก์ชันอยู่ในconio.h ใช้แทรกบรรทัดว่าง 1 บรรทัดใต้บรรทัดที่เคอร์เซอร์อยู่ ฟังก์ชัน system(“dos command”); เป็นฟังก์ชันอยู่ในstdlib.h ใช้เรียกคาสั่งของ dos ขึ้นมาทางาน เช่นคาสั่ง cls dir date time
  • 12. ฟังก์ชัน abort(); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้ ยกเลิกการทางาน ของโปรแกรมทันทีไม่ว่าจะทางานสาเร็จหรือไม่ และมีข้อความ Abnomal program termination แสดงทางจอภาพ ฟังก์ชัน abs(x); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้หาค่าสัมบูรณ์ของ x โดย x ต้องเป็นจานวนเต็ม ฟังก์ชัน labs(x); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้หาค่าสัมบูรณ์ของ x โดย x ต้องเป็นlong integer ฟังก์ชัน atoi(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้ เป็นเลขจานวนเต็ม ฟังก์ชัน atol(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้ เป็น long integer ฟังก์ชัน atof(s); ฟังก์ชันที่อยู่ใน <stdlib.h> ใช้เปลี่ยนข้อความให้ เป็น floating point
  • 13. ตัวอย่าง /* atoilf.c */ #include <conio.h> #include <stdio.h> #include <stdlib.h> int main(void) { char numstring1[10],numstring2[10],numstring3[10]; int in1; float flo1; long lon1; clrscr(); printf("nEnter number as string1 : "); scanf("%s",numstring1); printf("nEnter number as string2 : "); scanf("%s",numstring2); printf("nEnter number as string3 : "); scanf("%s",numstring3); in1 = atoi(numstring1); flo1 = atof(numstring2); lon1=atol(numstring3); printf("nnumstring1 =%s change to integer %d ",numstring1,in1); printf("nnumstring2 =%s change to floating point %4.4f ",numstring2,flo1); printf("nnumstring3 =%s change to long integer %d ",numstring3,lon1); printf("nsummation of in1,flo1,lon1 is %6.4f ",in1+flo1+lon1); printf("nsummation of atoi(numstring1),atof(numstring2),atol(numstring2) is %6.4lf:",atoi(numstring1)+atof(numstring2)+atol(numstring3)); }