C#写程序,统计所给字符串中字母的个数、数字的个数和大写字母的个数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#写程序,统计所给字符串中字母的个数、数字的个数和大写字母的个数相关的知识,希望对你有一定的参考价值。
编写程序,统计所给字符串中字母的个数、数字的个数和大写字母的个数
如题,,正确答案给加分
class test
static void Main()
Console.Write("请输入字符串:");
string s=Console.ReadLine();
int a1=0; // 申明3个变量记录它们三个的个数;
int b1=0;
int c1=0;
foreach (char c in s) //字符c遍历数组中的所有字符;
if (char.IsUpper(c)) //是否为大写 如大写计数器加1;
c1++;
else if (char.IsLetter(c)) //是否为小写 如小写计数器加1;
a1++;
else if(char.IsDigit(c)) //是否为数字 如数字计数器加1;
b1++;
Console.WriteLine("数字有:"+b1+"\n小写字母有:"+a1+"\n大写字母有:"+c1);
参考技术A int a = 0, b = 0, c = 0;
string str = "dcd4524DCdcdZ4dDE4d7e";
foreach (char ch in str)
int i = (int)ch;
if(i>96&&i<123) //如果是小写字母
a+=1;
else if (i > 64 && i < 91) //如果是大写字母
b += 1;
else if (i > 47 && i < 58) //如果是数字
c += 1;
Response.Write(string.Format(@"小写字母个数是0,大写字母个数是1,数字个数是2",a,b,c)); 参考技术B 修改了一下,更加直观。因为C#中Char是可以隐式转换为int的,所以,用char而不是对应的code去比较更好懂一些。
int a = 0, b = 0, c = 0;
string str = "dcd4524DCdcdZ4dDE4d7e";
foreach (char ch in str)
if(ch>('a'-1)&&ch<('z'+1)) //如果是小写字母
a+=1;
else if (ch > ('A'-1) && ch < ('Z'+1)) //如果是大写字母
b += 1;
else if (ch > ('0'-1) && ch < ('9'+1)) //如果是数字
c += 1;
Response.Write(string.Format(@"小写字母个数是0,大写字母个数是1,数字个数是2",a,b,c));
用python写程序实现:输入一字符串,分别统计其中的英文字母个数,空格、数字和其他字符。
参考技术A wz="计量单位是指根据约定定义和采用的标量,任何其他同类量可与其比较使两个量之比用一个数表示。计量单位具有根据约定赋予的名称和符号。"for i in wz:
print("%s出现:%d次"%(i,wz.count(i))) 参考技术B
import string
def chartype(ch):
if ch in string.ascii_letters: return 'ascii_letters'
elif ch in string.digits: return 'digits'
elif ch in string.whitespace: return 'whitespace'
else: return 'other'
def iterchtypecount(s):
counter =
for c in s:
counter.setdefault(chartype(c), []).append(c)
for t, lst in counter.items():
yield t, len(lst)
for chtype, cnts in iterchtypecount(raw_input("Enter a string: ")):
print chtype, cnts追问
能简单点吗,我刚开始学python,看不懂
追答# coding: utf-8import string
def chartype(ch):
"""字符类型判断"""
if ch in string.ascii_letters: return 'ascii_letters'
elif ch in string.digits: return 'digits'
elif ch in string.whitespace: return 'whitespace'
else: return 'other'
def chtypecount(s):
"""字符串类型计数器"""
counter =
for ct in map(chartype, s):
counter.setdefault(ct, 0)
counter[ct] += 1
return counter
for chtype, cnts in chtypecount(raw_input("Enter a string: ")).items():
print chtype, cnts 参考技术C python中有些内置函数很逆天的。 参考技术D 有内置函数的 第5个回答 2015-01-15 判断ascii码应该就可以了、、
以上是关于C#写程序,统计所给字符串中字母的个数、数字的个数和大写字母的个数的主要内容,如果未能解决你的问题,请参考以下文章
用python写程序实现:输入一字符串,分别统计其中的英文字母个数,空格、数字和其他字符。