tj.c

来自「统计输入的一串字符中汉字字母数字的个数。」· C语言 代码 · 共 45 行

C
45
字号
#include<stdio.h>

int IsGB(unsigned char *pText,int *tj)
{
   
   unsigned char sqChar[1];
   sqChar[0]=*pText;
   
   if (sqChar[0]>=0xa1)  { 
                           if(sqChar[0]>=0xb0) { tj[1]++;return 2; }     //汉字
						   else    { tj[0]++;return 2; }     //全角字符     
                         }                       
   else   {                                   
                 if(sqChar[0]>='A'&&sqChar[0]<='Z')  { tj[2]++; }   //英文大写
            else if(sqChar[0]>='a'&&sqChar[0]<='z')  { tj[3]++; }   //英文小写
            else if(sqChar[0]>='0'&&sqChar[0]<='9')  { tj[4]++; }   //数字
            else if(sqChar[0]==' ')                  { tj[5]++; }   //空格
            else                                     { tj[6]++; }   //英文字符
          }
   return 1;  
}

int main()
{
   unsigned char szText[256];
   unsigned char *pText;
   int i,tj[7]={0};
   
   printf("请输入一串字符\n");
   gets(szText);
   pText=szText;
   
   while(*pText!='\0')
       {
	      i=IsGB(pText,tj);          
          if(i==1)  pText+=1;
		  if(i==2)  pText+=2;
       }
   printf("全角字符 %d\n  汉字 %d\n 英文大写 %d\n  英文小写%d\n\
    数字%d\n 空格 %d\n 英文字符%d\n",tj[0],tj[1],tj[2],tj[3],tj[4],tj[5],tj[6]);
	     
   return 0 ;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?