1828 - 课后习题6.2
输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
Input
一行字符
Output
统计值
Examples
Input
aklsjflj123 sadf918u324 asdf91u32oasdf/.';123
Output
23 16 2 4
Solution C
#include<stdio.h> int main() { int i,c=0,s=0,t=0,k=0; char str[200]; gets(str); for(i=0;str[i]!='\0';i++) { if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z')) c++; else { if(str[i]==' ') s++; else { if(str[i]>='0'&&str[i]<='9') t++; else k++; } } } printf("%d %d %d %d\n",c,t,s,k); }
Solution C++
#include<bits/stdc++.h> using namespace std; string n; long long a,b,c,d; int main() { getline(cin,n); for(int i=0;i<n.size();i++) { if(n[i]>='a' && n[i]<='z' || n[i]>='A' && n[i]<='Z')a++; else if(n[i]>='1' && n[i]<='9')b++; else if(n[i]==' ')c++; else d++; }cout<<a<<" "<<b<<" "<<c<<" "<<d; return 0; }