内存:128  时间:1

题目描述

编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。 只要结果,别输出什么提示信息。

输入

一行字符串

输出

统计数据,4个数字,空格分开。

样例输入

!@#$%^QWERT 1234567

样例输出

5 7 4 6

提示

主函数已给定如下,提交时不需要包含下述主函数

#include<stdio.h>

void tongji(char str[],int a[]);

int main()

{

    char str[100];

    int i,a[4];

    gets(str);

    tongji(str,a);

    for(i=0; i<4; i++)

              printf("%d ",a[i]);

    printf("
");

    return 0;

}

代码如下


#include<stdio.h> 
void tongji(char str[],int a[]);
int main()
{
    char str[100];
    int i,a[4];
    gets(str);
    tongji(str,a);
    for(i=0; i<4; i++)
		printf("%d ",a[i]);
    printf("
");
    return 0;
}
void tongji(char *str,int a[])  //将统计的字符串中字母、数字、空格和其它字符的个数分别放到数组a中
{
   int i;
   for(i=0;i<4;i++)  //在统计之前先将统计值设为0
	   a[i]=0;
   for(i=0;str[i]!='';i++)
   {
     if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z')  //字母
		 a[0]++;   //字母个数增1
     else if(str[i]>='0'&&str[i]<='9')  //数字字符
		     a[1]++;  //数字个数增1
	      else if(str[i]==' ')  //空格
		         a[2]++;  //空格个数增1
		       else     //其它字符
				   a[3]++;  //其他字符个数增1
   }
}

代码来源于互联网,仅供参考!