【hpuoj】语文问题

1203: 杨八方的语文问题 [字符串]

时间限制: 1 Sec   内存限制: 128 MB
提交: 27   解决: 8
[ 提交][ 状态][ 讨论版]

题目描述

转眼间一学期就将要过去了,杨八方也在大学里经历了许多事情,最难忘的自然是学校里的各色课程。

杨八方很喜欢中国的古典文化,所以当她知道大学有语文课的时候是很开心的。更幸运的是,杨八方的语文老师是位酷酷的男性。

第一次上课的时候语文老师就大谈中国文学,从夏商周一直侃到了现代。语文老师表示最让他受不了的便是现在的一些人,写一段文字非要毫无来头的掺杂一些英文。

现在有一行中英混杂的字符,请计算其中中文字符的个数。

输入

第一行是一个整数 T T,代表有 T T组测试数据。

下面 T T行,每一行有一个只可能包含中文字符、大写字母、小写字母的字符串。

0<T<10 0<T<10

每个字符串最多有100个中英文字符数

输出

对于每组测试数据,输出一行中文字符的个数。

样例输入

3
我爱ACM
But
这题好难

样例输出

2
0
4

提示

可考虑中英文字符的ASCII码。

Windows系统下,一个汉字占2个字节。

OJ运行在Linux系统下,一个汉字占3个字节。

来源


题目链接
注意提示注意提示注意提示!
#include<stdio.h>
#include<string.h>
int main() {
    char a[400];
    int t;
    scanf("%d",&t);
    while(t--){
        memset(a,0,sizeof(a));
        scanf("%s",a);
        int k=strlen(a);
        int sum=0;
        for(int i=0;i<k;){
            if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))
                {
                    i=i+1;
                    continue;}
            else {
                    i=i+3;
                    sum=sum+1;
                     }
        }
         printf("%d\n",sum);
    }
    return 0;
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值