题目
输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。
解题步骤
(1)定义变量接收输入;
(2)定义特定变量;
(3)循环计算;
(4)多分支结构判断;
(5)输出结果;
C语言
#include <stdio.h> int main() { char input; int word = 0, num = 0, blank = 0, other = 0; printf("please enter the character and press enter to confirm:"); for (; (input = getchar()) != '\n';) //注意括号位置 { if ((input >= 'a' && input <= 'z') || (input >= 'A' && input <= 'Z')) word++; else if (input >= '0' && input <= '9') num++; else if (input == ' ') blank++; else other++; } printf("word=%d,num=%d,blank=%d,other=%d\n", word, num, blank, other); return 0; }
说明
- C语言中没有字符串变量,因此一次只能接收一个字符并放入缓存区中;
- 这里我们接收用户输入的一行字符,并不知道用户输入的长度以及开始位置是什么,所以 for 循环中循环变量的声明和更新都无需设定,即从开始位置进入,结束位置输出。