4.8每日一题

题目 1035: 

[编程入门]自定义函数之字符类型统计

时间限制: 1s 内存限制: 128MB 提交: 28276 解决: 15427

题目描述

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

输入格式

一行字符串

输出格式

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

样例输入

复制

!@#$%^QWERT    1234567

样例输出

复制

5 7 4 6 
#include<stdio.h>
#include<string.h>//传入字符串的头文件
//sorts函数进行分类统计,参数是要统计的字符串、数字个数、字母个数、空格个数、其他字符个数
void sorts(char *str,int *num_num,int *num_char,int *num_space,int *num_other){
    int len=0,i=0;//循环变量i,以及记录字符串长度len
    len=strlen(str);//获取字符串长度
    *num_num=0;//最初四个要统计的量置零
    *num_char=0;
    *num_space=0;
    *num_other=0;
    for(i=0;i<len;i++){//字符串从头到尾循环
        if(str[i]>='0'&&str[i]<='9'){//记录数字个数
            *num_num+=1;
        }else if(str[i]>='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z'){//字母
            *num_char+=1;
        }else if(str[i]==' '){//空格
            *num_space+=1;
        }else{//其他字符
            *num_other+=1;
        }

    }

}
int main(){
    char Mystring[1024];//输入字符串
    int num_num,num_char,num_space,num_other;
    scanf("%[^\n]",Mystring);//不知道为什么用这个格式
    sorts(Mystring,&num_num,&num_char,&num_space,&num_other);
    printf("%d %d %d %d\n",num_char,num_num,num_space,num_other);
    return 0;



}
#include<stdio.h>
int main(){
int a=0,b=0,c=0,d=0;
char x;
while((x=getchar())!='\n'){//循环接收字符
    if(x>='a'&&x<='z'||x>='A'&&x<='Z'){
        a++;
    }else if(x>='0'&&x<='9'){
        b++;
    }else if(x==' '){
        c++;
    }else{
        d++;
    }
}
printf("%d %d %d %d",a,b,c,d);


}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值