C#关于ReadLine()和Read()区别?

Console.WriteLine("请输入学生的年纪:");
int a = Convert.ToInt32(Console.ReadLine());
if (a == 2 || a == 3)
{
Console.WriteLine("小朋友,你好!你的班级是:小班");
}
else
{
if (a == 4)
{
Console.WriteLine("小朋友,你好!你的班级是:中班");
}
else if (a==5)
{
Console.WriteLine("小朋友,你好!你的班级是:大班");
}
else if (a == 6)
{
Console.WriteLine("小朋友,你好!你的班级是:学前班");
}
Console.WriteLine("对不起!小朋友还没有到年纪或年纪已经超过了。幼儿园接受小朋友年龄为2-6岁");
}
Console.ReadLine();
int a = Convert.ToInt32(Console.ReadLine()); 改为 int a = Convert.ToInt32(Console.Read());就输出不了。这是为什么?

ReadLine返回的是个string Read返回的是当前字符的ASCII码的int值,一个是字符串转换成数字,一个是字符ASCII值转换,不一样的,字符1的值是49,当然输出不了了
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-18
Console.Read() 只接受一个字符,而且会把字符的自动转换对应的ASCII码值
如果你输入0,方法返回48,1为49,依此类推

输入a,返回97
输入A,返回65因此,判断当然失效啦
第2个回答  2012-10-18
int a = Convert.ToInt32(Console.ReadLine()); //从控制台读取一行字符,以回车结束读取
Read()是读取一个字符。ReadLine()读取的是一个字符串。
第3个回答  2012-10-18
用ReadLine()

相关了解……

你可能感兴趣的内容

大家正在搜

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网