题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| #include <stdio.h> int main() { int Letter = 0; int Num = 0; int Space = 0; int Others = 0; char c; c = getchar(); while (c!='\n') { if ((c>=65 && c<=90) || (c>=97 && c<=122)) { Letter++; }else if(c>=48 && c<=57) { Num++; }else if (c == ' ') { Space++; }else { Others++; } c = getchar(); } printf("Letter = %d \nNumber = %d \nSpace = %d \nOthers = %d \n",Letter,Num,Space,Others); return 0; }
|
总结:
- 想要判断一个字符,本质上是判断这个字符的ASCII码,可以直接拿这个字符和ASCII码比较,不用加单引号,但想拿它和另一个字符比较,另一个字符必须加单引号。(可能是字符加了单引号就转换成了ASCII码?)
&&一个条件为假,结果为假||一个条件为真,结果为真
参考:逻辑操作符