În acest exemplu, veți învăța să verificați dacă un alfabet introdus de utilizator este o vocală sau o consoană.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C:
- C Operatori de programare
- C dacă … altfel Declarație
- C while și do … while Buclă
Cele cinci litere A
, E
, I
, O
și U
se numesc vocalele. Toate celelalte alfabete, cu excepția acestor 5 vocale, se numesc consoane.
Acest program presupune că utilizatorul va introduce întotdeauna un caracter alfabet.
Program pentru a verifica vocala sau consoana
#include int main() ( char c; int lowercase_vowel, uppercase_vowel; printf("Enter an alphabet: "); scanf("%c", &c); // evaluates to 1 if variable c is a lowercase vowel lowercase_vowel = (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'); // evaluates to 1 if variable c is a uppercase vowel uppercase_vowel = (c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U'); // evaluates to 1 (true) if c is a vowel if (lowercase_vowel || uppercase_vowel) printf("%c is a vowel.", c); else printf("%c is a consonant.", c); return 0; )
Ieșire
Introduceți un alfabet: GG este o consoană.
Caracterul introdus de utilizator este stocat în variabila c.
Variabila lowercase_vowel se evaluează la 1 (adevărat) dacă c este o vocală minusculă și 0 (false) pentru orice alte caractere.
În mod similar, variabila majusculă_vocală se evaluează la 1 (adevărat) dacă c este o vocală majusculă și 0 (fals) pentru orice alt caracter.
Dacă variabila lowercase_vowel sau uppercase_vowel este 1 (adevărat), caracterul introdus este o vocală. Cu toate acestea, dacă atât variabilele lowcase_vowel cât și uppercase_vowel sunt 0, caracterul introdus este o consoană.
Notă: Acest program presupune că utilizatorul va introduce un alfabet. Dacă utilizatorul introduce un caracter non-alfabetic, acesta afișează caracterul care este o consoană.
Pentru a remedia acest lucru, putem folosi funcția isalpha (). În islapha()
funcție verifică dacă un caracter este un alfabet sau nu.
#include #include int main() ( char c; int lowercase_vowel, uppercase_vowel; printf("Enter an alphabet: "); scanf("%c", &c); // evaluates to 1 if variable c is a lowercase vowel lowercase_vowel = (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'); // evaluates to 1 if variable c is a uppercase vowel uppercase_vowel = (c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U'); // Show error message if c is not an alphabet if (!isalpha(c)) printf("Error! Non-alphabetic character."); else if (lowercase_vowel || uppercase_vowel) printf("%c is a vowel.", c); else printf("%c is a consonant.", c); return 0; )
Acum, dacă utilizatorul introduce un caracter non-alfabetic, veți vedea:
Introduceți un alfabet: 3 Eroare! Caracter non-alfabetic.