输入一行字符,找出其中大写字母、小写字母、空格、数字几其他字符各有几个。(用指针的方法)
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
void co(char *a)
{
int lo=0,up=0,di=0,sp=0,ot=0;
while (*a!='\0')
{
if (islower(*a)) lo++;
else if (isupper(*a)) up++;
else if (isdigit(*a)) di++;
else if (isspace(*a)) sp++;
else ot++;
a++;
}
printf("LOWER:%d\nUPPER:%d\nDIGIT:%d\nSPACE:%d\nOTHER:%d\n",lo,up,di,sp,ot);
}
int main(int argc, char* argv[])
{
char a[80];
gets(a);
co(a);
return 0;
}
//---------------------------------------------------------------------------
#include <stdio.h>
#include <ctype.h>
void co(char *a)
{
int lo=0,up=0,di=0,sp=0,ot=0;
while (*a!='\0')
{
if (islower(*a)) lo++;
else if (isupper(*a)) up++;
else if (isdigit(*a)) di++;
else if (isspace(*a)) sp++;
else ot++;
a++;
}
printf("LOWER:%d\nUPPER:%d\nDIGIT:%d\nSPACE:%d\nOTHER:%d\n",lo,up,di,sp,ot);
}
int main(int argc, char* argv[])
{
char a[80];
gets(a);
co(a);
return 0;
}
//---------------------------------------------------------------------------
温馨提示:答案为网友推荐,仅供参考
第1个回答 2008-05-13
比较简练,记得我刚学编程那会儿用的是Asc码进行的筛选