牛客网编程初学者入门训练题解JavaScript版本
编程初学者入门训练第11-20题解答(js)
本文章尽量用简洁的代码去完成题目要求,话不多说,上代码(因为js语言的限制,所以有些题是骚操作,娱乐而已),后期会不断更新的。
注:有些题找不见了,把有的题写了一下。
代码链接: 编程初学者入门11-20T代码.
11.学生基本信息的输入输出
题目描述:依次输入一个学生的学号,以及3科(C语言,数学,英语)成绩,在屏幕上输出该学生的学号,3科成绩。
输入描述:学号以及3科成绩,学号和成绩之间用英文分号隔开,成绩之间用英文逗号隔开。
输出描述:学号,3科成绩,输出格式详见输出样例。
let str1 = readline();
let str = str1.split(';');
let w1 = str[0];
let s = str[1].split(',');
let s1 = Math.round(s[0]*100)/100;
let s2 = Math.round(s[1]*100)/100;
let s3 = Math.round(s[2]*100)/100;
let res = 'The each subject score of No. ' +w1+ ' is ' + s1.toFixed(2)+', '+s2.toFixed(2)+', '+s3.toFixed(2)+'.'
console.log(res)
12.字符金字塔
题目描述:输入一个字符,用它构造一个三角形金字塔。
输入描述:输入只有一行,一个字符。
输出描述:该字符构成的三角形金字塔。
let str = readline();
for(let i =0;i<5;i++){
let s = '';
for(let j= 4-i;j>0;j--){
s += ' ';
}
for(let k= 0;k<i+1;k++){
s = s + str +' ';
}
console.log(s)
}
13.ASCII码
题目描述:BoBo教KiKi字符常量或字符变量表示的字符在内存中以ASCII码形式存储。BoBo出了一个问题给KiKi,转换以下ASCII码为对应字符并输出他们。
73, 32, 99, 97, 110, 32, 100, 111, 32, 105, 116 , 33
输入描述:无。
输出描述:转换输出题目中给出的所有ASCII到对应的字符。
let a = String.fromCharCode(73);
let b = String.fromCharCode(32);
let c = String.fromCharCode(99);
let d = String.fromCharCode(97);
let e = String.fromCharCode(110);
let w = String.fromCharCode(32);
let v = String.fromCharCode(100);
let f = String.fromCharCode(111);
let g = String.fromCharCode(32);
let h = String.fromCharCode(105);
let i = String.fromCharCode(116);
let k = String.fromCharCode(33);
console.log(a+b+c+d+e+w+v+f+g+h+i+k)
14.出生日期的输入输出
题目描述:输入一个人的出生日期(包括年月日),将该生日中的年、月、日分别输出。
输入描述:输入只有一行,出生日期,包括年月日,年月日之间的数字没有分隔符。
输出描述:三行,第一行为出生年份,第二行为出生月份,第三行为出生日期。输出时如果月份或天数为1位数,需要在1位数前面补0。
let str = readline();
let s = str.split('');
let year = s.slice(0,4).join('');
let month = s.splice(4,2).join('');
let date = s.splice(4,2).join('');
console.log('year='+year)
console.log('month='+month)
console.log('date='+date)
15.按照格式输入并交换输出
题目描述:输入两个整数,范围-2^31~ 2**31-1,交换两个数并输出。
输入描述:输入只有一行,按照格式输入两个整数,范围,中间用“,”分隔。
输出描述:把两个整数按格式输出,中间用“,”分隔。
let str = readline();
let s = str.split(',');
let s1 = s[0].split('=');
let s2 = s[1].split('=');
[s1[1],s2[1]]=[s2[1],s1[1]];
s1 =[s1[0],s1[1]].join('=');
s2 =[s2[0],s2[1]].join('=');
let r = [s1,s2].join(',');
console.log(r)
16.字符串转ASCII码
题目描述:BoBo教KiKi字符常量或字符变量表示的字符在内存中以ASCII码形式存储。BoBo出了一个问题给KiKi,输入一个字符,输出该字符相应的ASCII码。
输入描述:一行,一个字符。
输出描述:一行,输出输入字符对应的ASCII码。
let str = readline();
console.log(str.charCodeAt())
17.计算表达式的值
题目描述:请计算表达式“(-8+22)×a-10+c÷2”,其中,a = 40,c = 212。
输入描述:无。
输出描述:(-8+22)×a-10+c÷2计算之后的结果,为一个整数。。
let a = 40;
let c = 212;
console.log((-8+22)*a-10+c/2)
18.计算带余除法
题目描述:给定两个整数a和b (-10,000 < a,b < 10,000),计算a除以b的整数商和余数。
输入描述:一行,包括两个整数a和b,依次为被除数和除数(不为零),中间用空格隔开。
输出描述:一行,包含两个整数,依次为整数商和余数,中间用一个空格隔开。
let str = readline();
let s = str.split(' ');
let s1 = Number(s[0]);
let s2 = Number(s[1]);
let r1 = Math.floor(s1/s2);
let r2 = s1 -r1*s2;
let list = r1 + ' '+r2;
console.log(list)
19.反向输出四位数
题目描述:将一个四位数,反向输出。
输入描述:一行,输入一个整数n(1000 <= n <= 9999)。
输出描述:针对每组输入,反向输出对应四位数。
let str = readline();
let s = str.split('').reverse().join('');
console.log(s)
御剑江湖载酒行,美人如玉翩若鸿。十年一剑情如梦,赢得生前身后名。
未完待续,loading…