/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称:输入一个由若干字符组成的字符串,输出其中的大写字母、小写字母、数字和其他字符的个数。
* 作 者: 雷恒鑫
* 完成日期: 2012 年 09 月 15 日
* 版 本 号: V1.0
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:
* 程序头部的注释结束
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace The_experiment__of__three__week
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请您输入一个由若干字符组成的字符串:");
String s = Console.ReadLine();
byte[] array = System.Text.Encoding.ASCII.GetBytes(s);
//String[] b = new String[s.Length];
int[] m = new int[array.Length];
for (int i = 0; i < s.Length; ++i)
{
//b[i] = Convert.ToString( s[i]);//s[i].GetHashCode();//ToString();
//m[i] = Convert.ToInt32(b[i]);//int.Parse(b[i]);
m[i] = (int)(array[i]);
}
Myclass.get_number(m);
Console.ReadKey();
}
}
class Myclass
{
public static void get_number(params int[] a)
{
int big = 0, small = 0, number = 0, other = 0;
for (int j = 0; j < a.Length; ++j)
{
if (a[j] >= 65 && a[j] <= 90)
{
++big;
}
else if (a[j] >= 97 && a[j] <= 122)
{
++small;
}
else if (a[j] >= 48 && a[j] <= 57)
{
++number;
}
else
{
++other;
}
}
Console.WriteLine("大写字母的个数为:{0} 小写字母的个数为:{1} 数字的个数为:{2} 其他字符的个数为:{3}", big, small, number, other);
}
}
}
运行结果:
经验积累:
1.byte[] array = System.Text.Encoding.ASCII.GetBytes(s)的功能为将字符串s编码为字节序列,并储存到字符数组中。
2. m[i] = array[i];// (int)(array[i]);可以不用强制类型中类型转换。