说给你听423
2021-10-18 14:25
采纳率: 69.2%
浏览 135

从键盘输入n个字符,请分别统计大写字母、小写字母、数字、其他字符的个数并输出;还需要输出所有数字字符之和

第一行为一个整数n(100>=n>=0),接下来n行每行一个字符。

【输出形式】

输出第1行为4个整数,分别表示大写字母、小写字母、数字、其他字符的个数,第2行为一个数字,表示其中所有数字字符所对应的数字之和,当输入的字符中不包含数字字符时,没有第2行。

【样例输入1】

5
a
A
5
6
@
【样例输出1】

1 1 2 1
11

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

  • 编码图灵 2021-10-18 14:52
    最佳回答
    #include<iostream>
    using namespace std; 
    int main(){
        int n,t1=0,t2=0,t3=0,t4=0,s=0;
        //t1,t2,t3,t4分别表示大写字母、小写字母、数字、其他字符的个数 
        //s表示所有数字字符的和 
        char k;
        cin>>n;
        for(int i=1;i<=n;i++){
            cin>>k;
            if(k>='A'&&k<='Z') t1++;
            else if(k>='a'&&k<='z') t2++;
            else if(k>='0'&&k<='9'){
                t3++;
                s+=k-'0'; 
            } 
            else t4++;
        }
        cout<<t1<<" "<<t2<<" "<<t3<<" "<<t4<<endl; 
        if(t3>0)    cout<<s;
        return 0;
    }
    
    评论
    解决 3 无用
    打赏 举报

相关推荐 更多相似问题