C#
1.输入
(1)ReadLine()
string input=Console.ReadLine();//读取一串字符,直到用户按下回车。
string input ;
while ((input = Console.ReadLine()) !=null)
{ }
若要读取一行多个数字,可以使用如下方法
string[] str;
str=input.Split(' ');
(2)Read()
ch = (char)Console.Read();//Read()返回int
//要读取单个字符,则使用Read()方法,它等待用户输入一个键,然后返回结果。
//字符作为int类型的值返回,所以要显示字符就必须转换为char类型。
(3)ReadKey();//ReadKey()返回一个字符按键
(4)注意
的是每个输入输出流都维护一个字符缓冲区,用于从流接收输入,或者用于输出到流。
你的程序在执行letter=Console::Read();后出现一个输入提示符,假如输入's',然后回车,相当于输入了's\r\n',
而's'被读到了letter变量里,这时缓冲区里的内容会是'\r\n',即残留了回车键值。
Console::ReadLine()每次读取一行,即可以将行尾的回车键读走;Console::Read();每次读取一字符,需要两次将'\r\n'读走,这样才能清空到缓冲区。
2.输出
(1)WriteLine()
将要输出的字符串与换行控制字符一起输出,当次语句执行完毕时,光标会移到目前输出字符串的下一行.
(2)Write()
Console.Write()方法,光标会停在输出字符串的最后一个字符后,不会移动到下一行,其余的用法与Console.WriteLine()一样
用一道样题为例
C#:
using System;
class Program {
public static void Main() {
string line;
string []p;
int a,b;
while((line=Console.ReadLine())!=null&&line!="")
{
p=line.Split(' ');
a=int.Parse(p[0]);b=int.Parse(p[1]);
Console.WriteLine(a+b);
}
}
}
另外还有一点,牛客网上华为的在线编程,输入描述的是分两行输入两个整数,但实际测试的case是一行输入两个整数。
如果程序去处理两行输入两个整数,反而会出错。
C++:
#include
using namespace std;
int main()
{
int a, b;
while(cin>> a >> b)
cout << a + b << endl;
return 0;
}