C语言编程:输入一串英文字母,统计每个字母(不区分大小写)出现的次数
#include<iostream>
#include<string>
using namespace std;
int main()
{
char str[50];
int n=0;
char *p;
p=str;
cout<<"请输入字符串:"<<endl;
cin>>str;
for(int i=0;*p!='\0';p++)
{
if(('a'<=*p && *p<='z') || ('A'<=*p && *p<='Z'))
{
n++;
cout<<*p<<" ";
}
else
break;
}
cout<<"字符串的数量为:"<<n<<endl;
return 0;
}
扩展资料:
printf用法:
printf()函数的调用格式为:printf("&lt;格式化字符串&gt;",&lt;参量表&gt;)。
其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。
比如:
inta=1234;
printf("a=%d\n",a);
输出结果为a=1234。
void main()
{
char ch; //ch用来每次接收一个字符
int i,s[26]={0}; //数组s[]用来统计每个小写字母的个数
printf("please input a string:\n");
scanf("%c",&ch);
while(ch!='\n') //输入一行字符,以回车键结束
{
if(ch>'A'&&ch<'Z') //遇到大写字母时,转换成小写来处理
ch+=32;
s[ch-'a']++; //0~25对应a~z
scanf("%c",&ch);
}
printf("\n");
for(i=0;i<26;i++)
if(s[i]) //只输出输入过的字母统计
printf("%c:%d\n",(char)(i+'a'),s[i]);
//(char)(i+'a')用强制类型转换,输出对应字母
}