高手来帮帮忙~~~统计汉字问题(88分)

  • 主题发起人 lulaping
  • 开始时间
L

lulaping

Unregistered / Unconfirmed
GUEST, unregistred user!
[h1][red]统计汉字问题[/red][/h1][:D][:D][:D][:D][:D][:D]
这个学期的大作业:简单文字处理系统..汗!
关于文字统计方面,想请问下各位高手,
#include "stdafx.h"
#include "stdio.h"
void main ()
{int i,j,upp,low,dig,spa,oth;
char text[3][80];/*建立数组*/
upp=low=dig=spa=oth=0;/*一开始皆为0*/
for (i=0;i<3;i++)/*三行数字*/
{printf("/n请输入第%d行文字(不大于80个字)/n",i+1);/*输出提示语*/
gets (text);/*获得数字*/
for (j=0;j<80 && text[j]!='/0';j++)/*要求不大于80*/
{if (text[j]>='A' && text[j]<='Z')
upp++;/*关于大写字母的统计*/
else
if (text[j]>='a'&& text [j]<='z')
low++;/*关于小写字母的统计*/
else
if (text[j]>='0'&& text [j]<='9')
dig++;/*关于数字的统计*/
else
if (text [j]==' ')
spa++;/*空格的统计*/
else

oth++;/*其他字符的统计*/
}
}
for (i=0;i<3;i++)
printf ("%s/n",text);
printf ("/n输入总数为:%d/n",upp+low+dig+spa+oth);
printf ("/n大写字母数有:%d/n",upp);
printf ("/n小室字母数有:%d/n",low);
printf ("/n数字数有:%d/n",dig);
printf ("/n空格数有:%d/n",spa);
printf ("/n其他的字符有:%d/n",oth);
}
这里我写的,现在我想加入统计汉字,可是不会.有会的教教我好吗?
℡ping(36901446) (2006-03-16 12:17:06)
℡ping(36901446) 12:25:06
这个学期的大作业:简单文字处理系统..汗!
关于文字统计方面,想请问下各位高手,
#include "stdafx.h"
#include "stdio.h"
void main ()
{int i,j,upp,low,dig,spa,oth;
char text[3][80];/*建立数组*/
upp=low=dig=spa=oth=0;/*一开始皆为0*/
for (i=0;i<3;i++)/*三行数字*/
{printf("/n请输入第%d行文字(不大于80个字)/n",i+1);/*输出提示语*/
gets (text);/*获得数字*/
for (j=0;j<80 && text[j]!='/0';j++)/*要求不大于80*/
{if (text[j]>='A' && text[j]<='Z')
upp++;/*关于大写字母的统计*/
else
if (text[j]>='a'&& text [j]<='z')
low++;/*关于小写字母的统计*/
else
if (text[j]>='0'&& text [j]<='9')
dig++;/*关于数字的统计*/
else
if (text [j]==' ')
spa++;/*空格的统计*/
else

oth++;/*其他字符的统计*/
}
}
for (i=0;i<3;i++)
printf ("%s/n",text);
printf ("/n输入总数为:%d/n",upp+low+dig+spa+oth);
printf ("/n大写字母数有:%d/n",upp);
printf ("/n小室字母数有:%d/n",low);
printf ("/n数字数有:%d/n",dig);
printf ("/n空格数有:%d/n",spa);
printf ("/n其他的字符有:%d/n",oth);
}
这里我写的,现在我想加入统计汉字,可是不会.有会的教教我好吗?
 
晕,CTRL+V多了下,不好意思,下面的没用,当没看见。各位.
 
两个ASCII>=127的字符构成一个汉字编码
或者出去英文字母和特殊字符就是汉字
 
呀哈~
uiit大大,除去英文和特殊字符我试过,好像不行,是不是我搞错了?
可以给我代码看看吗?就汉字那部份。
 
这是汉字编码系统下可以出现的字符集
ID Wen
太多行,Help Workshop生成出错,删除n行(Sueprmay注)
 
用c我不知道怎么处理, delphi中,只要申明为 widestring就可以。
一个汉字就是一个widestring中的一个元素。
 
在DELPHI中的byteType(s,index)可以判断S的Index个字符是单字符还是汉字的第一个字节还是后一个字节。
 
谢谢各位
 
一个汉字两个字节,获得这个大小就可以得知是否是汉字
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
730
import
I
I
回复
0
查看
673
import
I
I
回复
0
查看
777
import
I
顶部