题目链接
http://acm.hdu.edu.cn/showproblem.php?pid=2030
解读
汉字的ASCLL码是负的
汉字的ASCII码对照表:http://002ii.cn/UmFd0d
1个英文字母or英文标点符号=1个字节=1byte,
1个中文字母or中文标点符号=2个字节=2byte
代码
#include<stdio.h>
#include<string.h>
int main()
{
int n;
char a[1000];
scanf("%d",&n);//遇到换行符才停止接受一个数据,但换行符会留在里面
getchar();
while(n--)
{
gets(a);//遇到换行符才停止接受,会接收换行符但会丢掉
int num=0;
int len=strlen(a);//得到数组的长度
for(int i=0;i<len;i++)
{
if(a[i]<0)
num++;
}
printf("%d\n",num/2);
}
return 0;
}