【刷题】笔试时,JavaScript格式如何获取输入

这篇博客介绍了如何在JavaScript V8环境和Node.js中处理控制台输入,包括读取用户输入、转换数值、进行数据操作如求和,并展示了不同情况下的输入格式处理,例如多组数据、每组数据包含多个整数等。同时,还涵盖了对输入数据排序的方法。

在笔试时,通常会给两种格式的编辑器,一种是JS V8,一种是Node.js的
Node.js可以这样获取输入

var readline=require("readline");
// 创建输入输出接口
const rl=readline.createInterface({
    input:process.stdin,
    output:process.stdout,
});
// 监听控制台的输入
// 就是在用户输入一行 按下回车的时候就会触发的事件,他会将用户输入的数据通过回调函数传回来。
rl.on("line",function(line){
//line 你是怎么样输入的 他就获得怎么样的字符串
    // 拿到控制台的输入
    var data=Number(line.split("")[0]);
    var data1=Number(line.split("")[1]);
    // 编辑逻辑处理
    function add(a,b){
        return a+b;
    }
    // console.log(data)
    // 输出结果
    console.log(add(data,data1))
})

javascript V8
输入的第一列是a 第二列是b时:

while (line = readline()) {
    var lines = line.split(' ');
    var a = parseInt(lines[0]);
    var b = parseInt(lines[1]);
    print(a + b);
}

输入的第一行是数据的个数,第二行以后才是一组一组的数据时:

var num=readline()
for(let i=0;i<num;i++){
    var lines = readline().split(' ');
    var a = parseInt(lines[0]);
    var b = parseInt(lines[1]);
    print(a+b)
}

行输入为0,0时结束:

while (line = readline()) {
    var lines = line.split(' ');
    var a = parseInt(lines[0]);
    var b = parseInt(lines[1]);
    //加个判断就可以
    if(a== 0&&b== 0){
        break;
    }
    print(a + b);
}

输入数据包括多行,每组数据为一行,每行的第一个整数为整数的个数,n为0的时候停止输入。

var n;
while(n = readline()){
    let c = n.split(' ');
    if (parseInt(c[0]) == 0){
        break;
    }
    else{
        let nums = 0;
        for(var i = 1;i<=parseInt(c[0]);i++){
            nums += parseInt(c[i]);
        }
        console.log(nums);
    }
}

第一行:
数据组数
接下来每行一组数据
求每行的和

var t = readline();
while(t--){
    let data = readline().split(' ');
    var nums = 0;
    for(var i = 1;i<data.length;i++){
         nums += parseInt(data[i]);
    }
    console.log(nums);
}

多行数据,每行表示一组输入数据
第一个是整数个数
接下里的是求和的数

var line;
while(line = readline()){
    c = line.split(' ');
    var nums = 0;
    for(var i = 1;i<=parseInt(c[0]);i++){
        nums += parseInt(c[i]);
    }
    console.log(nums);
}

输入多组数据,每行表示一组输入数据
每组数据求和

var line;
while(line = readline()){
    he = line.split(' ');
    var nums = 0;
    for(var i=0;i<he.length;i++){
        nums += parseInt(he[i]);
    }
    console.log(nums);
}

输入两行,第一行n
第二行为n个空格间隔开的字符串 输出排序后的字符串 空格隔开

var n = readline();
var str = readline();
const arr = str.split(' ').sort().join(' ')
console.log(arr)

多行 每行排序

var str;
while(str = readline()){
    const arr = str.split(' ').sort().join(' ');
    console.log(arr);
}

多行 每行排序 逗号隔开

var str;
while(str = readline()){
    const arr = str.split(',').sort().join(',');
    console.log(arr);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值