1.读取一行输入
const readline = require('readline');//在这里引入
const rl = readline.createInterface({ //创建输入输出接口
input: process.stdin,
output: process.stdout
});
rl.on('line',function(line){//监听控制台的输入
var data=line.trim();//拿到控制台输入
var result=....//编程逻辑处理
console.log(result); //输出结果
});
读取一行中的两个数据:
var readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
rl.on('line', function(line) {
var data1=line.split(' ')[0];
var data2=line.split(' ')[1];
console.log(data1);
});
2.读取两行输入
题目:输入两行,第一行是字符串s1,第二行是字符串s2,输出两个字符串连接后的结果。
例子:
输入 "hello"
"world"
输出 "helloworld"
代码如下:
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
var k=2;//这里代表题目中设定好的输入的行数
var rows=[]; //用于存储每行的输入
rl.on('line',function(line){
rows.push(line);//将每次输入的行数据存入
if(k==rows.length){//当输入的行数等于设定的k值时,开始逻辑处理
var result=rows[0]+rows[1]; //连接字符串
console.log(result); //输出结果
rows.length=0;//状态重置
}
});
3.N行输入的在线编程
题目:输入数字N(1<N<10),接下来输入N行字符串,输出所有字符串连接后的新字符串。
例子:
输入:4
"nice"
"to"
"meet"
"you"
输出:"nicetomeetyou"
代码如下:
const readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
var k=-1;//先给行数置-1,表示还没开始读取
var rows=[]; //用于存储每行的输入
rl.on('line',function(line){
if(k<0){
k=parseInt(line.trim());//读取第一行,得到接下来输入的行数
}else{
rows.push(line.trim());//将每次输入的行数据存入
if(k==rows.length){//当输入的行数等于设定的k值时,开始逻辑处理
var result=rows.reduce(function(fir,cur){ //连接字符串
return fir+cur;
});
console.log(result); //输出结果
rows.length=0;//状态重置
k=-1;
}
}
});
4..通用性的方式:按照数据流输入的方式
在做笔试时碰到过例题的输入方式,不是按行读入的,是一次性读入,然后按照“ ”进行行分隔
process.stdin.resume();
process.stdin.setEncoding('ascii');
var input = "";
var input_array = "";
process.stdin.on('data', function (data) {
input += data;
});
process.stdin.on('end', function () {
input_array = input.split("
");
var nLine = 0;
while(nLine < input_array.length){
var line = input_array[nLine++].trim();
if(line === ''){
continue;
}
var input_arrays = line.split(' ');
var a = +input_arrays[0];
var b = +input_arrays[1];
console.log(a+b);
}
});