【问题描述】
从键盘输入n个字符,请分别统计大写字母、小写字母、数字、其他字符的个数并输出;还需要输出所有数字字符之和。 【输入形式】
第一行为一个整数n(100>=n>=0),接下来n行每行一个字符。
【输出形式】
输出第1行为4个整数,分别表示大写字母、小写字母、数字、其他字符的个数,第2行为一个数字,表示其中所有数字字符所对应的数字之和,当输入的字符中不包含数字字符时,没有第2行。
【样例输入1】
5 a A 5 6 @
【样例输出1】
1 1 2 1 11
【样例输入2】
5 a A B Z !
【样例输出2】
3 1 0 1
#include<iostream> using namespace std; int main() { int n,dx,xx,sz,o,h; dx=xx=sz=o=h=0; //定义赋值大写dx,小写xx,数字sz,其他o,数字字符和h char ch; cin>>n; for(int a=o;a<n;a++) { cin>>ch; if((ch>='A')&&(ch<='Z')) dx++; else if((ch>='a')&&(ch<='z')) xx++; else if((ch>='0')&&(ch<='9')) sz++,h=h+ch-'0'; //减去0字符代表的ASC码得十进制0的数值 else o++; } cout<<dx<<" "<<xx<<" "<<sz<<" "<<o<<endl; if(h!=0) cout<<h; return 0; }