分析:
字母区间无非是a-z和A-Z,两种情况进行或即可,或者使用isalpha判断,读入数据时注意换行符。
题解:
#include <bits/stdc++.h> using namespace std; int main() { char ch = 0; //循环读入字符,并消去换行符 while(scanf("%c", &ch) != EOF) { getchar(); //判断当前字符是否为大写字母或者是小写字母,并输出对应结果 if((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) printf("%c is an alphabet.\n", ch); else printf("%c is not an alphabet.\n", ch); } return 0; }
题解2:
#include <bits/stdc++.h> using namespace std; int main() { char ch = 0; //循环读入字符串,消去换行符 while(scanf("%c", &ch) != EOF) { getchar(); //调用isalpha判断字符是否为字母,函数返回值为bool类型 if(isalpha(ch)) printf("%c is an alphabet.\n", ch); else printf("%c is not an alphabet.\n", ch); } return 0; }
总结:
布尔表达式的使用和多行输入的练习。