牛客网JS在线编程常见输入输出练习

好多同学对V8的多行输入示例不是很明白,其实它基于的readline()并不会像JS语言一样后面的会覆盖前面的语句,在这里readline是可以重载的,也就是说每一次调用readline()就会识别一行输入数据,多行输入其实就是写多个readline()即可。
 

固定行数输入:

任意行数输入:

 

注意:readline得到的是字符串,计算需要转化为数字

 

输出
牛客网输出函数用print()和console.log()都可以

多行输入会根据你的print个数来自动折行;或者利用print(lines + ‘\n’);来折行。

 

例一:


 

while(line=readline()){ // readline 得到的是字符串
    let p = line.split(' ');
    let a = parseInt(p[0]); // 单行第一个参数 转化成了数字
    let b = parseInt(p[1]); // 单行第二个参数 转化成了数字
    print(a+b);
}

例二:

let K = parseInt(readline()); // 读取行数 

let inputs = [];

for(let i = 0;i < K; i++){ 

    line = readline()

    let p =line.split(' ');

    inputs.push(p) 
} 

function add (inputs){ // 得到 inputs 后,用函数处理 

    for(let i = 0;i < 2*K; i++){
 
    let a = parseInt(inputs[i]); 

    let b = parseInt(inputs[i+1])
    
    print(a + b);

    i=i+1
    }

} 

add(inputs)


例三;

输入包括两个正整数a,b,输入数据有多组, 如果输入为0 0则结束输入

let inputs = [];

let K=0

while(line = readline()){ 
    
    let p =line.split(' ');

    let a = parseInt(p[0]); 

    let b = parseInt(p[1])

    if(a==0&&b==0)break;

    inputs=inputs.concat(p) 

    K++
} 
function add (inputs){ // 得到 inputs 后,用函数处理 

    for(let i = 0;i < 2*K; i++){
 
    let a = parseInt(inputs[i]); 

    let b = parseInt(inputs[i+1])

    print(a + b);

    i=i+1
    }

} 

add(inputs)

 

例四:
输入数据包括多组。
每组数据一行,每行的第一个整数为整数的个数n(1 <= n <= 100), n为0的时候结束输入。接下来n个正整数,即需要求和的每个正整数。

while(line = readline()){ 

    let add =0
    
    let p =line.split(' ');

    let n = parseInt(p[0]);
 
    if(n==0)break;

    for(let i = 1;i <= n; i++){

       add = add + parseInt(p[i]); 
    }
    print(add);
} 

例五:

输入的第一行包括一个正整数t(1 <= t <= 100), 表示数据组数。
接下来t行, 每行一组数据。
每行的第一个整数为整数的个数n(1 <= n <= 100)。
接下来n个正整数, 即需要求和的每个正整数。

let k=readline()//多写一行读取提示性输入,第一行没用,用readline消耗掉,
while(line = readline()){ 

    let add =0
    
    let p =line.split(' ');

    let n = parseInt(p[0]);
 
    if(n==0)break;

    for(let i = 1;i <= n; i++){

       add = add + parseInt(p[i]); 
    }
    print(add);
} 

多写一行读取提示性输入,第一行没用,用readline消耗掉

 

例六:对输入的字符串进行排序后输出

let k=readline();
let line=readline();
let p=line.split(' ')
print(p.sort().join(' '))

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


版权声明:本文为weixin_45697314原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。