• HDOJ 2030


    统计给定文本文件中汉字的个数

    汉字机内码在计算机的表达方式的描述是,使用二个字节,每个字节最高位一位为1。 
    计算机中, 补码第一位是符号位, 1 表示为 负数, 
    所以 汉字机内码的每个字节表示的十进制数都是负数
    统计输入字符串含有几个汉字,只只需求出字符串中小于0的字符有几个,将它除以2就
    得到答案  
    
     #include<stdio.h>
    #include<string.h>
    int main()
    {
    	int i,j,T;int cnt;
    	char str[4096];
    	scanf("%d%*c",&T);
    	while(T--)
    	{
    		memset(str,0,sizeof(str));
    		cnt=0;i=0;
    		/*可能包含空格*/ 
    		//scanf("%[^\n]",str);,可能与编译器有关,用它就WA啦 
    		gets(str);
    	//	puts(str);
    		/*
    		int len=strlen(str);
    		printf("%d\n",len); 
    		输入“我爱你”,输出6,所以最后需要除2
    		*/ 
    		/*
    		不是'\n' ,且根据while循环性质,自增需要写在循环内部
    		*/ 
    		while(str[i]!='\0')
    		{
    			if(str[i]<0)
    				cnt++;
    				i++;
    		}
    		printf("%d\n",cnt>>1);
    	}
    	return 0;
    }
    
    
    /*
    注意:\n是换行
    \0是终结字符,例如一个字符串的终结。 所以用gets读入字符串时
    用 while(str[i]!='\0')结尾 ,而用ch=getchar()时,要用'\n'结尾
    */   
    
  • 相关阅读:
    在Intellij idea 2017中运行tomcat 8.5
    Servlet技术之服务器的安装和配置
    Servlet&&Jsp 概述
    linux 下 tomcat 安装
    执行数据库的更新操作
    JDBC
    Mysql 命令
    hdoj2036 改革春风吹满地——叉积
    常规设置
    pytorch本地安装
  • 原文地址:https://www.cnblogs.com/hxsyl/p/2560109.html
Copyright © 2020-2023  润新知