码迷,mamicode.com
首页 > 其他好文 > 详细

hdu 2030

时间:2016-02-29 00:34:57      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:

PS:原本这道题就空了好久...今天才去查了下汉字机内码... 然后才知道了.

1—— 一个汉字在字符串中是以两个负的字符形式存储,所以本题只要把字符串中负字符的个数找出来,再

除以2 就OK了。

2——汉字机内码在计算机的表达方式的描述是,使用二个字节,每个字节最高位一位为1。 计算机中, 补码第一位是符号位, 1 表示为 负数, 所以 汉字机内码的每个字节表示的十进制数都是负数

 代码:

#include "stdio.h"
#include "string.h"
int main(){
 int num,n,s,j,i;
 char a[200];
 while(~scanf("%d",&n)){
  getchar();
  for(i=0;i<n;i++){
   gets(a);
   s=strlen(a);
   num=0;
   for(j=0;j<s;j++){
    if(a[j]<0){
     num++;
     j++;
    }
   }
   printf("%d\n",num);  
  }
 }
 return 0; 
}

hdu 2030

标签:

原文地址:http://www.cnblogs.com/sureli/p/5225883.html

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