为什么输出字母个数少一个啊?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication_foreach
{
class Program
{
static void Main(string[] args)
{
string[] arry1 = new string[] { "I am", "a student", "study in the xh", "Conputer skill", "shool !" };
int ZM = 0, KG = 0, ZF = 0;
string s = "";
foreach (string i in arry1)
{
s += i; //将所有字符串连接并赋给字符串变量变量s。
//Console.WriteLine(s);
// Console.WriteLine(s.Length);
}
char[] arry2 = s.ToCharArray();//将字符串变量s转换成字符数组。
foreach (char i in arry2)
{
//Console.WriteLine(i);
ZF = arry2.Length;//字符的个数。
if (char.IsLetter(i))
{
ZM++; //字母的个数
}
else if (char.IsWhiteSpace(i))
{
KG++; //空格的个数
}
}
Console.WriteLine("所有字符的个数为{0}", ZF);//输出 49
Console.WriteLine("字母的个数为{0}", ZM);//输出 41 为什么不是42 ? 啊要疯了!
Console.WriteLine("空格的个数为{0}", KG);//输出 7
Console.Read();
}
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
“!”感叹号要是看见你问这个问题得多伤心