System.Console.WriteLine("Welcome to Chinaworld");
foreach (KeyValuePair<char, int> a in dic)
{
System.Console.WriteLine(string.Format("字母{0} 有{1}个",a.Key,a.Value));
}
System.Console.ReadLine();
}
public static Dictionary<char, int> Fun(string str) {
Dictionary<char, int> dic = new Dictionary<char, int>();
str= str.Replace(" ", "");
for (int i = 0; i < str.Length;i++)
{
if (dic.ContainsKey(str[i]))
{
continue;
}
dic.Add(str[i], 0);
foreach (char ch1 in str)
{
//这个部分不是很好。不过先实现吧。因为可以通过下标去比对
if (str[i].ToString().ToUpper() == ch1.ToString().ToUpper())
{
dic[str[i]]++;
}
}
}
return dic;
}
写得不是很好。记得可以用两个数组去做标记。作者: 无__畏 时间: 2013-6-3 23:44
/// <summary>
/// 查找指定出现次数的第一个字符
/// </summary>
/// <param name="str">需要查找的字符</param>
/// <param name="charFindCount">查找次数</param>
/// <returns></returns>
public static string FindFirstCountChar(string str, uint charFindCount)
{
#region 参数验证
if (str == null || str == string.Empty)
{
throw new ArgumentException("请输入需要查找的字符!");
}
if (charFindCount < 1)
{
throw new ArgumentException("查找字符出现的次数应大于0!");
}
#endregion
int count = 0; //字符出现的次数
for (int i = 0; i < str.Length; i++)
{
char currentChar = str[i]; //需要查找的字符
for (int j = 0; j < str.Length; j++) //在string数组中循环查找