C语言编程 从键盘输入一个字符串,分别统计其中大写字母、小写字母及其其他字符的个数,并输出。

如题所述

#include<stdio.h>
void main()
{
int countd=0,countx=0,countk=0,counts=0,countq=0;//分别用来对大写字母、小写字母、空格、数字、其他字符做计数
char s[100],*p;
printf("请输入一个字符串:");
int i=0;
while((s[i]=getchar())!='\n')i++;
p=&s[0];
while(*p!='\n')
{
if((*p>='A')&&(*p<='Z'))countd++;
else
if((*p>='a')&&(*p<='z'))countx++;
else
if(*p==' ')countk++;// ‘’中是一个空格
else
if((*p>='0')&&(*p<='9'))counts++;
else
countq++;
p++;
}
printf("大写字母的个数为:%d 小写字母的个数为:%d 空格个数为:%d \n",countd,countx,countk);
printf("数字个数为:%d 其他字符个数为%d\n",counts,countq);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-16
这个网上很多了。
#include<stdio.h>
void main()
{
int z,k,s,q;
char ch;
z=k=s=q=0;
for(ch=getchar();ch!='\n';;)
{
if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')
z++;
else if(ch==' ')
k++;
else if(ch>='0'&&ch<='9')
s++;
else q++;
ch=getchar();
}
printf("zimu:%d\nspace:%d\nshuzi:%d\nqita:%d\n"z,k,s,q);
}本回答被提问者采纳
第2个回答  2011-01-16
#include <stdio.h>
void main()
{
char c;
int i=0;
int j=0;
while((c=getchar())!='@')
{if(c>='A'&&c<='Z')
printf("有大写字母:\n%d个",++i);
if(c>='a'&&c<='z')
printf("有小写字母:\n%d个",++j);
}
}