码迷,mamicode.com
首页 > 编程语言 > 详细

3218: 字符串字符统计—C语言

时间:2018-11-02 21:38:40      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:pid   stdio.h   状态   eof   inf   creat   std   ++i   sharp   

3218: 字符串字符统计—C语言

时间限制: 1 Sec  内存限制: 128 MB
提交: 270  解决: 129
[提交][状态][讨论版][命题人:smallgyy]

题目描述


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

输入


一行字符串

输出

统计数据,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("\n");



    return 0;



}

 

#include<stdio.h>
#include<string.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("\n");
    return 0;
}
#include<string.h>
void tongji(char str[],int *a)
{
    int i, j, len;
    //memset(a, 0, sizeof(a));  //为什么这句不起作用?
    for( i = 0 ;i<4 ;i++)
    {
        a[i] = 0 ;
    }
    len = strlen(str);
    for(i = 0; i < len; ++i)
    {
        if(str[i] >= ‘a‘ && str[i] <= ‘z‘ || str[i] >= ‘A‘ && str[i] <= ‘Z‘)
        {
            a[0]++;
        }
        else if(str[i] >= ‘0‘ && str[i] <= ‘9‘)
        {
            a[1]++;
        }
        else if(str[i] == ‘ ‘)
        {
            a[2]++;
        }
        else
        {
            a[3]++;
        }
    }
}

  

3218: 字符串字符统计—C语言

标签:pid   stdio.h   状态   eof   inf   creat   std   ++i   sharp   

原文地址:https://www.cnblogs.com/mjn1/p/9898330.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!