C++程序:检查字符是否为字母
在解决一些逻辑编程问题时,使用字符串或字符有时非常有用。字符串是字符的集合,字符是1字节数据类型,用于保存ASCII值中的符号。这些符号可以是英文字母、数字或特殊字符。在本文中,我们将学习如何使用C++来检查字符是否为英文字母。
检查isalpha()函数
要检查一个字符是否为字母,我们可以使用ctype.h头文件中的isalpha()函数。此函数接收一个字符作为输入,当它是字母时返回true,否则返回false。让我们来看下面的C++实现来了解此函数的用法。
示例
#include <iostream> #include <ctype.h> using namespace std; string solve( char c ) { if( isalpha( c ) ) { return "True"; } else { return "False"; } } int main() { cout << "Is 'K' an alphabet? : " << solve( 'K' ) << endl; cout << "Is 'a' an alphabet? : " << solve( 'a' ) << endl; cout << "Is '!' an alphabet? : " << solve( '!' ) << endl; cout << "Is '5' an alphabet? : " << solve( '5' ) << endl; cout << "Is 'f' an alphabet? : " << solve( 'f' ) << endl; }
输出
Is 'K' an alphabet? : True Is 'a' an alphabet? : True Is '!' an alphabet? : False Is '5' an alphabet? : False Is 'f' an alphabet? : True
创建我们自己的检查函数
上述方法使用的是一个预定义函数,用于检查给定的字符是否为字母。但是,我们也可以通过定义一个带有范围条件的函数来实现相同的功能。算法如下:
算法
- 读取输入字符c
- 如果c的ASCII码在小写字母'a'和'z'之间,或者在大写字母'A'和'Z'之间,则
- 否则
- 返回false
- 结束if
示例
#include <iostream> #include <ctype.h> using namespace std; string solve( char c ) { if( (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') ) { return "True"; } else { return "False"; } } int main() { cout << "Is 'T' an alphabet? : " << solve( 'T' ) << endl; cout << "Is 'g' an alphabet? : " << solve( 'g' ) << endl; cout << "Is '?' an alphabet? : " <<solve( '?' ) << endl; cout << "Is '8' an alphabet? : " << solve( '8' ) << endl; cout << "Is 'p' an alphabet? : " << solve( 'p' ) << endl; }
输出
Is 'T' an alphabet? : True Is 'g' an alphabet? : True Is '?' an alphabet? : False Is '8' an alphabet? : False Is 'p' an alphabet? : True
结论
检查给定字符是否为字母,有几种不同的方法。我们讨论的第一个方法是使用ctype.h头文件中的isalpha函数。当字符为字母时,此函数返回true,否则返回false。在第二个方法中,我们编写了自己的检查函数。这是通过检查ASCII码是否在小写字母'a'到'z'或大写字母'A'到'Z'的给定范围内来实现的。如果是,则返回true,否则返回false。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP