w3resource

C isalpha() function

C isalpha(int ch)

The isalpha() function is used to check whether a character is an alphabet or not. The function is defined in the ctype.h header file.

Note: Letter (alphabet) - A letter is a segmental symbol of a phonemic writing system. The inventory of all letters forms an alphabet. Letters broadly correspond to phonemes in the spoken form of the language, although there is rarely a consistent and exact correspondence between letters and phonemes.

Syntax:

int isalpha(int argument);

isupper() Parameters:

Name Description Required /Optional
ch ch is a character of class alpha in the current locale. Required

Return value from isalnum()

  • The isalpha() function returns non-zero if ch is an alphabetic character; otherwise returns 0.

Example: C isalpha() function


#include <stdio.h>
#include <ctype.h>
int main()
{
    char ch;
    ch = 'A';
    printf("\nIf %c is alphabet or not? %d",ch, isalpha(ch));
    ch = '5';
    printf("\nIf %c is alphabet or not? %d",ch, isalpha(ch));
    ch = '+';
    printf("\nIf %c is alphabet or not? %d",ch, isalpha(ch));
    return 0;
}

Output:

If A is alphabet or not? 1
If 5 is alphabet or not? 0
If + is alphabet or not? 0

Example: C Program to test whether a character input from user is Alphabet or not

#include <stdio.h>
#include <ctype.h>
int main()
{
    char ch;

    printf("Input a character: ");
    scanf("%c", &ch);

    if (isalpha(ch) == 0)
         printf("%c is not an alphabet.", ch);
    else
         printf("%c is an alphabet.", ch);

    return 0;
}

Output:

Input a character: S
S is an alphabet.
------------------------ Input a character: 9 9 is not an alphabet.

C Programming Code Editor:

Contribute your code and comments through Disqus.

Previous C Programming: C isalnum()
Next C Programming: C iscntrl()



Follow us on Facebook and Twitter for latest update.

C Programming: Tips of the Day

Reading a string with scanf :

An array "decays" into a pointer to its first element, so scanf("%s", string) is equivalent to scanf("%s", &string[0]). On the other hand, scanf("%s", &string) passes a pointer-to-char[256], but it points to the same place.

Then scanf, when processing the tail of its argument list, will try to pull out a char *. That's the Right Thing when you've passed in string or &string[0], but when you've passed in &string you're depending on something that the language standard doesn't guarantee, namely that the pointers &string and &string[0] -- pointers to objects of different types and sizes that start at the same place -- are represented the same way.

Ref : https://bit.ly/3pdEk6f