问题:尝试开发一个程序,当用户输入一个字符串之后,判断该字符串中包含几个汉字。
代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace demo
{
class Program
{
static public int panduan(char[] a)//自定义方法 对每个字符进行判断是否为汉字
{
int count=0;//定义一个计数器,用来存储汉字的个数
for (int i = 0; i < a.Length; i++)//遍历输入的字符串
{
if (a[i] >= 0x4e00 && a[i] <= 0x9fbb)//因为汉字的UNICODE 编码范围是4e00-9fbb 故在此区间的字符判断为汉字 计数器+1
{
count += 1;
}
else
{
continue;//否则进行下一次循环,判断下一个字符
}
}
return count;//此方法返回汉字的个数
}
static void Main(string[] args)
{
while (true)
{
char[] t = Console.ReadLine().ToCharArray();//将输入的字符串转换成字符数组赋值到数组t
int number = panduan(t);//调用panduan 得到汉字个数复制到number
Console.WriteLine("汉字的个数为:{0}", number);
}
Console.ReadKey();
}
}
}
运行结果: