อาร์เรย์ของตัวอักษร (หรือ) ชุดของตัวอักษร เรียกว่าสตริง (String)
การประกาศ
รูปแบบการประกาศ:
char stringname [size];
ตัวอย่าง - char a[50]; สตริงยาว 50 ตัวอักษร
การกำหนดค่าเริ่มต้น
การกำหนดค่าเริ่มต้นมีดังนี้:
- ใช้ ค่าคงที่ตัวอักษรเดี่ยว -
char a[10] = { 'H', 'e', 'l', 'l', 'o', '\0' }- ใช้ ค่าคงที่สตริง -
char a[10] = "Hello";
การเข้าถึง
มีสตริงควบคุม "%s" ใช้สำหรับเข้าถึงสตริง จนกว่าจะเจอ '\0'
ตรรกะนับ จำนวนสระ ดังนี้:
if(string[i]=='a' || string[i]=='e' || string[i]=='i' ||
string[i]=='o' || string[i]=='u') // ตรวจสอบตัวอักษรเป็นสระ
vowel = vowel + 1;ตรรกะนับ จำนวนตัวเลข ดังนี้:
if(string[i]=='0' || string[i]=='1' || string[i]=='2' ||
string[i]=='3' || string[i]=='4' || string[i]=='5' ||
string[i]=='6' || string[i]=='7' || string[i]=='8' || string[i]=='9')
digit = digit + 1;ตรรกะนับ จำนวนช่องว่าง ดังนี้:
if(string[i]==' ') space = space + 1;
ส่วนที่เหลือถือเป็นพยัญชนะ
โปรแกรม
โปรแกรม C นับสระ ตัวเลข ช่องว่าง พยัญชนะ โดยใช้แนวคิดสตริง:
#include <stdio.h>
int main() {
char string[50];
int i, vowel = 0, digit = 0, space = 0, consonant = 0;
printf("enter any string includes all types of characters:\n");
gets(string);
for(i = 0; string[i] != '\0'; i++) {
if(string[i] == 'a' || string[i] == 'e' || string[i] == 'i' ||
string[i] == 'o' || string[i] == 'u') // ตรวจสอบตัวอักษรเป็นสระ
vowel = vowel + 1;
else if(string[i] == '0' || string[i] == '1' || string[i] == '2' ||
string[i] == '3' || string[i] == '4' || string[i] == '5' ||
string[i] == '6' || string[i] == '7' || string[i] == '8' || string[i] == '9')
digit = digit + 1;
else if(string[i] == ' ')
space = space + 1;
else
consonant = consonant + 1;
}
printf("vowel=%d\ndigit=%d\nspace=%d\nconsonant=%d\n", vowel, digit, space, consonant);
return 0;
}ผลลัพธ์
ผลลัพธ์ด้านล่าง:
enter any string includes all types of characters: Tutorials Point 1234 C programming 2020 vowel=9 digit=8 space=5 consonant=17