一、前言
在牛客網用JavaScript做前端編程題,真的是無力吐槽了,寫一個輸入輸出折騰了我半天,在此記錄一下,如何使用JavaScript編程語言在牛客網這種平台寫輸入輸出相關的代碼
二、常見方式
2.1 JavaScript(Node 6.11.4)——稍微復雜點
參考:https://blog.csdn.net/qq_30422457/article/details/80765595
1.單行輸入
const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); //單行輸入 rl.on('line',function(data){ var result= data.split(' '); //獲取第一行的內容,存為數組 console.log(result); })
示例:
2.固定行數的多行輸入
var readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); //固定行數的多行輸入 const lines = []; var num=3; //設定輸入行數 var rows=[]; //用於存儲每行的輸入 rl.on('line',function(data){ rows.push(data); //將每次輸入的行數據存入 if(num === rows.length){ //輸入的行數等於num值 console.log(rows); //輸出結果 } });
示例:
3.第一行是接下來輸入數據的行數的多行輸入
const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); var k = -1; //初始化行數為-1,表示還未開始 var rows = []; //用於存儲每行的輸入 rl.on('line',function(data){ if(k === -1){ k = parseInt(data.trim()); //讀取第一行,獲取接下來輸入的行數 }else{ rows.push(data.trim()); //將每次輸入的行數據存入 if(k === rows.length){ //當輸入的行數等於設定的k值時,開始邏輯處理 console.log(rows); //輸出結果 } } });
示例:
2.2 JavaScript(V8 6.0.0)——更簡單一點
注意:在JavaScript(V8 6.0.0)里使用console.log和print是一樣的
1.單行輸入
var line = readline(); var result= line.split(' '); //獲取第一行的內容,存為數組 print(result);
2.固定行數的多行輸入
var line_1 = readline(); var line_2 = readline(); var result_1= line_1.split(' '); //獲取第一行的內容,存為數組 var result_2= line_2.split(' '); //獲取第二行的內容,存為數組 print(result_1,result_2);
3.任意的多行輸入
var line = readline(); while(line){ var lines = line.split(' ') print(lines) }