作业帮 > 综合 > 作业

在C#控制台应用程序中乱输入一串字符,怎么查出出现的单词个数,遇到空格或者标点符号或者数字就算一个单

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/05/05 07:34:12
在C#控制台应用程序中乱输入一串字符,怎么查出出现的单词个数,遇到空格或者标点符号或者数字就算一个单
在C#控制台应用程序中乱输入一串字符,怎么查出出现的单词个数,遇到空格或者标点符号或者数字就算一个单
class Program//该程序不完整,你只需少加修改
{
static int num=0;
static void Main(string[] args)
{
Console.WriteLine("请输入一串字符:");
string str = Console.ReadLine();
new Program().GetWordsCount(str);
Console.WriteLine(num+1);
Console.ReadKey();
}
private void GetWordsCount(string str)
{
//空格标点符号,数字
for (int i = 0; i < str.Length; i++)
{
string obj = str[i].ToString();
if (IsNumber(obj) || obj == " " || IsPunctuation(obj))
{
num++;
GetWordsCount(str.Substring(i+1));
}
}
}
//判断是否是数字
private bool IsNumber(string num)
{
bool resu=true ;
try
{
int n = Convert.ToInt32(num);
}
catch (Exception)
{
resu = false;
}
return resu;
}
//判断是否是标点符号
private bool IsPunctuation(string s)
{
bool resu = false;
string charlist = ",.!";
if (charlist.Contains(s))
{
resu = true;
}
return resu;
}
}
再问: 程序不行。虽然没错但是打空格也记进去了。还有开头空格也没考虑到,还是谢谢你哈,