ตัวอย่างโค้ดภาษาซี ในการรับค่าตัวเลขหลายๆ ตัว เพื่อนำตัวเลขแต่ละตัวมาแปลงเป็นคำภาษาอังกฤษ วิธีนี้จะใช้ค่าที่กำหนดไว้ใน Array Pointer ในการแสดงผล หลักการทำงานก็จะคล้ายๆกับ “โค้ดภาษาซี รับตัวเลขแล้วเปลี่ยนตัวเลขแต่ละตัวเป็นคำภาษาอังกฤษ โดยใช้ Switch Case”
การทำงานของโปรแกรม
รับตัวเลขหลายๆตัว เช่น 0123456789 (ตัวอย่างเรากำหนดไว้สูงสุด 100 ตัว) แล้วนำมาเก็บไว้ที่ตัวแปร char array จากนั้นก็จะนำมาทำการวนลูปเพื่อแสดงผลที่ละตัว โดยใช้การนำค่าที่ได้ซึ่งเป็น Char มาเปลี่ยนเป็น Int เพื่อที่จะนำมาเป็นตัวระบุตำแหน่ง(Index) ในตัวแปร Pointer แล้วนำคำภาษาอังกฤษมาแสดงผล
ตัวอย่างโค้ด
/*************************************************** * Author : CS Developers * Author URI: https://www.comscidev.com * Facebook : https://www.facebook.com/CSDevelopers ***************************************************/ #include <stdio.h> int main() { char input[100]; char *number[] = {"ZERO", "ONE", "TWO", "THREE", "FOUR", "FIVE", "SIX", "SEVEN", "EIGHT", "NINE"}; int p; int i; printf(" Enter number (100 MAX): "); scanf("%s", &input); printf("\n "); for(i=0; i<100; i++){ if(input[i] == '\0') break; p = input[i] - '0'; printf("%s ", number[p]); } printf("\n\n\n"); return 0; }