การแปลงตัวพิมพ์ใหญ่เป็นเล็ก และเล็กเป็นใหญ่ เรียกทั่วไปว่า "ท็อกเกิล" (Toggle)
ท็อกเกิลแต่ละตัวอักษร หมายถึง ในสตริงที่กำหนด ตัวอักษรเล็กจะพิมพ์เป็นใหญ่ และตัวใหญ่จะพิมพ์เป็นเล็ก ตามลำดับ
โปรแกรม
โปรแกรม C แปลงตัวพิมพ์ใหญ่เป็นเล็ก และเล็กเป็นใหญ่:
#include <stdio.h>
#define MAX 100
void toggle(char *string);
int main() {
char string[MAX];
printf("enter the string need to be toggle :\n");
gets(string);
toggle(string);
printf("final string after toggling is:\n");
printf("%s\n", string);
return 0;
}
void toggle(char *string) {
int i = 0;
while(string[i] != '\0') {
if(string[i] >= 'a' && string[i] <= 'z') {
string[i] = string[i] - 32;
} else if(string[i] >= 'A' && string[i] <= 'Z') {
string[i] = string[i] + 32;
}
i++;
}
}ผลลัพธ์
เมื่อรันโปรแกรม จะได้ผลลัพธ์ดังนี้:
enter the string need to be toggle : TutoRialS PoinT C ProgrAmmIng LanGuage final string after toggling is: tUTOrIALs pOINt c pROGRaMMiNG lANgUAGE
โปรแกรม
โปรแกรม C แปลงตัวพิมพ์ใหญ่เป็นเล็กและเล็กเป็นใหญ่ โดยใช้ฟังก์ชันสำเร็จรูป:
#include <stdio.h>
#include <ctype.h>
int main() {
int i, length = 0;
char string[] = "TutORial";
length = sizeof(string) / sizeof(string[0]);
for(i = 0; i < length; i++) {
if(isupper(string[i])) {
string[i] = tolower(string[i]);
} else if(islower(string[i])) {
string[i] = toupper(string[i]);
}
}
printf("final string after conversion: %s", string);
return 0;
}ผลลัพธ์
ผลลัพธ์มีดังนี้:
final string after conversion : tUTorIAL