美文网首页
2018-09-09

2018-09-09

作者: yesufan | 来源:发表于2018-09-09 21:30 被阅读0次


    前端笔试第一坑:nodejs输入输出-典型三种情况(二)

    一、处理单行输入

    var readline = require('readline');

    rl = readline.createInterface({

        input: process.stdin,

        output: process.stdout

    });

    rl.on('line', function(data) {

        // 获取输入

        var inputs = data;

        // 处理

        var result = deal(inputs);

        // 输出结果

        console.log(result);

    });

    /**

    * [deal description]

    * @param  {[type]} inputs [description]

    * @return {[type]}        [description]

    */

    function deal(inputs) {

        var result = inputs.split("").reverse().join("");

        // dosomething

        return result;

    };

    二、输入的行数已经确定

    var readline = require('readline');

    rl = readline.createInterface({

    input: process.stdin,

    output: process.stdout

    });

    var K = 2; // 输入K行

    var inputs = [];

    rl.on('line', function(data) {

    // 获取输入

    inputs.push(data.trim());

    if (K == inputs.length) { //

    // 处理

    var result = deal(inputs);

    // 输出结果

    console.log(result);

    // 清0

    inputs.length = 0;

    }

    });

    /**

    * [deal description]

    * @param  {[type]} inputs [description]

    * @return {[type]}        [description]

    */

    function deal(inputs) {

    var result = [];

    // dosomething

    var s1 = inputs[0].split("");

    var s2 = inputs[1].split("");

    var len = s1.length;

    for (var i = 0; i < len; i++) {

    result.push(s1[i]);

    result.push(s2[len - i - 1]);

    }

    return result.join("");

    }

    三、一组测试数据行数不确定(1+n模式)

      啥意思呢?就是说一组测试数据的第一行是一个数字n,然后后面有n行,这1+n行就是一组测试数据。模板给上:

    var readline = require('readline');

    rl = readline.createInterface({

    input: process.stdin,

    output: process.stdout

    });

    var inputs = [];

    var num = 0;

    rl.on('line', function(data) {

    if (num == 0) {

    num = Number(data.trim());

    } else {

    inputs.push(data.trim());

    if (num == inputs.length) {

    // 处理

    var result = deal(inputs);

    // 输出结果

    console.log(result);

    // 清0

    inputs.length = 0; //不可改动

    num = 0; //不可改动

    }

    }

    });

    /**

    * [deal description]

    * @param  {[type]} inputs [description]

    * @return {[type]}        [description]

    */

    function deal(inputs) {

    var result = '';

    // dosomething

    for (var i = inputs.length - 1; i >= 0; i--) {

    result += inputs[i]

    }

    return result;

    }

    相关文章

      网友评论

          本文标题:2018-09-09

          本文链接:https://www.haomeiwen.com/subject/laedgftx.html