如图所示,我想在已完成后面更新,只输出一行,而不是更新一次输出一行
C#console程序实现在dos窗口中同一位置更新数据
答案:2 悬赏:50 手机版
解决时间 2021-01-31 11:36
- 提问者网友:难遇难求
- 2021-01-31 08:00
最佳答案
- 五星知识达人网友:慢性怪人
- 2021-01-31 08:52
在每次更新前加上Console.Clear();清空屏幕就行了
全部回答
- 1楼网友:孤独入客枕
- 2021-01-31 10:31
用read()也不是不可以,不过read()要在回车之后才开始处理,也就是说,在查询的时候,如果输入t,然后回车,实际上,输入了3个字符,
分别是字符x、回车(13)、换行(10)。
所以,在输出结果之后,还连续输出两次没有该学生。
把你的程序稍做修改就可以了。 在循环中忽略回车了换行这两个字符。
while ((buf = console.read()) != -1)
{
switch ((char)buf)
{
case 't': tom.showmygrade(); break;
case 'k': kate.showmygrade(); break;
case 'm': mary.showmygrade(); break;
case 'x': return;
case ( char ) 13:
case ( char ) 10: continue;
default: console.writeline("没有该学生"); break;
}
console.writeline("请输入你要查询的学生首字母");
}
如果编译出错,就分开写
case ( char ) 13: continue;
case ( char ) 10: continue;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯