原生js入门级测试题及答案
01、屏幕打印2000到3000之间的所有的数。
<script type="text/javascript">
for (var i = 2000; i < 3001; i++){
document.write(i+"<br />")
}
</script>
02、求450到550之间所有奇数的和。
<script type="text/javascript">
var num = 0;
for (var i = 451; i < 550; i+=2) {
num += i
}
document.write("450到550之间所有奇数的和为:" + num)
</script>
03、找出200以内,既能整除3又能整除5的所有数。
<script type="text/javascript">
for (var i = 0; i < 201; i++) {
if(i % 3 == 0 && i % 5 == 0){
document.write(i+"<br />")
}
}
</script>
04、如果输入一个数,则弹出对话框“您输入的是偶数”,否则弹出“您输入的是奇数”
<script type="text/javascript">
var oBtn = document.getElementById("btn")
oBtn.onclick = function(){
var oInputVal = parseInt(document.getElementById("num").value)
if(oInputVal % 2 == 0){
alert("您输入的是偶数")
}else{
alert("您输入的是奇数")
}
}
</script>
05、页面弹出输入框,只有当用户输入Alice和Bob这两个名字时,才会向用户问好“你好”。
<script type="text/javascript">
var name = prompt("请输入你的姓名")
if(name == "Alice" || name == "Bob"){
alert("你好")
}
</script>
06、先后弹出三个输入框,第一个提示:输入一个数字,第二个提示:输入一个+-*/中的任意运算符,第三个提示:输入一个数字,最后弹出他们的运算结果。
<script type="text/javascript">
var one = parseInt(prompt("请输入一个数字"));
var two = prompt("请输入一个运算符");
var three = parseInt(prompt("请输入一个数字"));
var num;
if(two == "+"){
num = one + three
}else if(two == "-"){
num = one - three
}else if(two == "*"){
num = one * three
}else if(two == "/"){
num = one / three
}
alert(num)
</script>
07、屏幕打印1到1000所有能整除11并且不能整除17的数的和。
<script type="text/javascript">
var num = 0;
for(var i = 0 ; i < 1001 ; i++){
if(i % 11 == 0 && i % 17 != 0){
num += i
}
}
document.write(num)
</script>
08、写程序屏幕打印出x,y的值(正整数):x+y=10,3x+4y=36。
<script type="text/javascript">
for (var x = 1; x <= 10; x++) {
for (var y = 1; y <= 10; y++) {
if (x + y === 10 && 3 * x + 4 * y === 36) {
document.write("x的值为" + x + '<br>' + "y的值为" + y)
}
}
}
</script>
09、如何利用JS生成一个table?行和列由用户自己输入决定。
<body>
<p>请输入行与列</p>
<input type="text" id="row" />行<br />
<input type="text" id="column" />列<br />
<input type="button" value="创建" id="btn">
<div class="box" id="box"></div>
<script type="text/javascript">
var oBtn = document.getElementById("btn");
var oBox = document.getElementById("box");
oBtn.onclick = function(){
var oRow = parseInt(document.getElementById("row").value);
var oColumn = parseInt(document.getElementById("column").value);
var oTable = document.createElement('table');
oTable.setAttribute('border',"1");
for (var i = 1; i <= oRow; i++) {
oTr = document.createElement('tr');
for(var a = 1 ; a <= oColumn ; a++){
oTd = document.createElement('td');
var oText = document.createTextNode(i+"行"+a+"列")
oTd.appendChild(oText)
oTr.appendChild(oTd)
}
oTable.appendChild(oTr)
}
oBox.appendChild(oTable)
}
</script>
</body>
10、求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222。
<script type="text/javascript">
var a = prompt('输入一个数字');
var b = prompt('输入操作次数');
var sum = 0;
var str = '';
for(var i = 0; i < b; i++){
str += a;
sum += Number(str);
}
console.log(sum);
</script>
11、有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和
var a = 2;
var b = 1;
var c = 0;
var num = a+b;
for (var i = 0; i < 20; i++) {
c = b
b = a
a = a+c
num += a+b
console.log(a+"/"+b)
console.log(num)
}
12、一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程 找出1000以内的所有完数。
<script type="text/javascript">
for (var i = 1; i <= 1000; i++){
var sum=0;
for (var j = 1; j < i; j++){
if(i%j==0){
sum+=j;
}
}
if(i==sum){
console.log(sum)
}
}
</script>
13、写程序屏幕打印出a,b,c的值(100以内的正整数):809*a=800*b+9*c+1。
for(var a = 1; a < 100; a++){
for(var b = 1; b < 100; b++){
for(var c = 1; c < 100; c++){
if(809 * a === 800 * b + 9 * c + 1)
console.log(a,b,c);
}
}
}
14、用户输入任意数字,判断是否是闰年,并打印出接下来的20个闰年。
var count = prompt()
for(var a = count; a <= Number(count) + 80; a++){
if(a % 4 === 0 && a !== 100 || a % 400 === 0){
console.log(a);
}
}
15、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5
var num = Number(prompt());
var str = '';
var sum = num;
for(var a = 2; a <= num; a++){
if(num % a === 0 && num !== a){
str += a + '*';
num /= a;
a--;
}else if(num === a){
str += a;
break;
}
}
document.write(sum + '=' + str)
16、编写函数寻找水仙花数(三位数各位数字的立方和恰巧是该数本身)。
for(var b = 100; b < 1000; b++){
var sum = parseInt(b / 100) ;
var sub = parseInt(b / 10 % 10);
var sup = parseInt(b % 10);
if(sum * sum * sum + sub * sub * sub + sup * sup * sup == b){
console.log(sum,sub,sup);
}
}
17、有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
var sum = 0;
for(var i = 1; i <= 4; i++){
for(var j = 1; j <= 4; j++){
for(var k = 1; k <= 4; k++){
if(i !== j && i !== k && j !== k){
console.log(i,j,k);
sum++;
}
}
}
}
console.log(sum);
18、用户输入任意数字,打印所有该数字内的素数。(只能整除1和自己的数)。
var sub = 0;
var sum = Number(prompt());
for(var i = 1; i <= sum; i++){
for(var a = 2; a <=i; a++){
if(i % a === 0){
if(i==a){
console.log(i);
}
break;
}else if(i== a){
console.log(i);
} }
}
19、用户输入任意数字,打印出这个数以内的所有闰年。
var year = prompt()*1;
for (var i=year;i>0;i--){
year -= 4;
if (year%4 == 0 && year%100 !== 0){
document.write(year + "<br/>");
}
}
20、打印9x9乘法表。(正三角和倒三角两种,该题算两道题)
//倒三角
for(var i=1;i<10;i++){
for(var j=i;j<10;j++){
document.write(i+"*"+j+"="+j*i+" ");
}
document.write("<br><br>");
}
//正三角
for(var i=10;i>=1;i--){
for(var j=i;j<10;j++){
document.write(i+"*"+j+"="+j*i+" ");
}
document.write("<br><br>");
}
22、一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
var h = 100;
var sum = 0;
for(var a = 0; a < 10; a++){
sum += h + h / 2;
h /= 2;
console.log(sum);
}
console.log(h);
23、一个6位数,判断它是不是回文数。即123321是回文数,个位与十万位相同,十位与万位相同,百位与千位相同。
var sum = Number(prompt());
var a = parseInt(sum / 100000);
var b = parseInt(sum / 10000 % 10);
var c = parseInt(sum / 1000 % 10);
var d = parseInt(sum / 100 % 10);
var e = parseInt(sum / 10 % 10);
var f = parseInt(sum % 10);
if(a === f && b === e && c === d){
alert('是回文数');
}else{
alert('不是回文数');
}
24、计算从1*1+2*1+2*2+3*1+…+3*3+…+9*1+9*2+…+9*9的值
var c=0;
for(var i=0;i<=9;i++){
for(var j=0;j<=9;j++){
c+=i*j
console.log(c)
}
}
25、猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了 一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
var sum = 1;
for(var i = 1; i < 10; i++){
sum = (sum + 1) * 2
}
alert(sum);
26、一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
for(var a = 0; a < 1000; a++){
for(var b = 1; b < 1000; b++){
for(var c = 1; c < 1000; c++){
if(a + 100 === b * b && a + 1000 + 168 === c * c){
console.log(a,b,c);
}
}
}
}
27、给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
var sum = prompt("请输入一个不多于5位的正整数");
console.log(sum.length);
var gg = parseInt(sum %10);
var ss = parseInt(sum / 10 %10);
var bb = parseInt(sum / 100 %10);
var qq = parseInt(sum / 1000 %10);
var ww = parseInt(sum / 10000 %10);
if (sum.length === 5 ){
console.log(gg,ss,bb,qq,ww);
}else if(sum.length === 4){
console.log(gg,ss,bb,qq);
}else if(sum.length === 3){
console.log(gg,ss,bb);
}else if(sum.length === 2){
console.log(gg,ss);
}else if(sum.length === 1){
console.log(gg);
}
28、企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数。
var lirun = Number(prompt());
var sum = 0;
if(lirun <= 10){
sum= lirun * 0.1;
}else if(10 < lirun < 20){
sum = 1+ (lirun - 10) * 0.075
}else if(20 < lirun < 40){
sum = 1 + 0.75 + (lirun - 20) * 0.05
}else if(40 < lirun < 60){
sum = 1 + 0.75 + 1 + (lirun - 40) * 0.03
}else if(60 < lirun < 100){
sum = 1 + 000.75+1+0.6+(lirun-60)*0.015
}else if(100<lirun){
sum=1+0.075+1+0.6+0.6+(lirun-100)*0.01
}
alert(sum)
29、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问 第三十个月的兔子总数为多少?
var num1 = 1;
var num2 = 0;
var sum = 0; for (i = 1; i <= 30; i++) {
if (i % 2 != 0) {
sum = num1 + num2;
num1 = sum;
} else {
sum = num1 + num2;
num2 = sum;
}
}
alert("30个月之后,兔子的数量为:" + sum);
30、给这个数组按从小到大顺序排列[3,57,879,345,45,3415,66,890,415,62,25,68,9]。
var arr = [3,57,879,345,45,3415,66,890,415,62,25,68,9];
function sortArr(a,b){
return a-b
}
arr.sort(sortArr)
console.log(arr)
31、打印以下图形
1 1 1 1 1 1
1 1 1 1 1
1 1 1 1
1 1 1
1 1
1
for(var j = 6; j >= 0; j--){
for(var i = 1; i <= j; i++){
document.write(1+' ')
}
document.write('<br>')
}
32、
1
1 1
1 1 1
1 1 1 1
1 1 1 1 1
1 1 1 1 1 1
for(var i = 0; i < 6; i++){
for(var j = 0; j <= i; j++){
document.write(1 + ' ');
}
document.write('<br>')
}
33、
1
1 1
1 1 1
1 1 1 1
1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1 1
for(var i = 0; i < 6; i++){
for(var j = 0; j < 6 - i; j++){
document.write(' ');
}
for(var a = 0; a <= i; a++){
document.write('1');
}
document.write('<br>')
}
34、
1 1 1 1 1 1
1 1 1 1 1
1 1 1 1
1 1 1
1 1
1
for(var i = 0; i < 6; i++){
for(var j = 0; j <= i; j++){
document.write(' ');
}
for(var a = 0; a < 6 - i; a++){
document.write('1');
}
document.write('<br>')
}
35、
1 1 1 1 1 1
1 1 1 1 1
1 1 1 1
1 1 1
1 1
1
for(var i = 0; i < 6; i++){
for(var a = 0; a < i * 2; a++){
document.write(' ');
}
for(var j = 0; j < 6 - i; j++){
document.write('1');
}
document.write('<br>')
}
36、
1
1 1
1 1 1
1 1 1 1
1 1 1 1 1
<body style="text-align:center;">
<script type="text/javascript">
for(var i=0;i<5;i++){
for(var j=0;j<i;j++){
document.write("#")
}
document.write("<br>")
}
</script>
</body>
37、
!-!-!-!
!-!-!
!-!
!
!-!
!-!-!
!-!-!-!
for(var i = 0; i < 7; i++){
for(var j = 0; j < (i < 4 ? i : 6 - i); j++){
document.write(' ');
}
for(var b = 0; b < (i < 4 ? 3 - i : - 3 + i); b++){
document.write('!-');
}
document.write('!<br>');
}
38、
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
for(var i = 0; i < 11; i++){
for(var j = 0; j < (i < 6 ? 5 - i : i - 5); j++){
document.write(' ');
}
for(var a = 0; a < (i < 6 ? 1 + i : 11 - i); a++){
document.write('*');
}
document.write('<br>');
}
39、请输入1-7中的任意数字,判断是星期几。(例如:输入5,弹出“星期五”)
var a = prompt();
switch (a) {
case" 1":
alert('星期一');
break;
case" 2":
alert('星期二');
break;
case" 3":
alert('星期三');
break;
case" 4":
alert('星期四');
break;
case" 5":
alert('星期五');
break;
case" 6":
alert('星期六');
break;
case" 7":
alert('星期日');
break;
default:
}
a === '1' ? alert('星期一') :
a === '2' ? alert('星期二') :
a === '3' ? alert('星期三') :
a === '4' ? alert('星期四') :
a === '5' ? alert('星期五') :
a === '6' ? alert('星期六') :
a === '7' ? alert('星期日') : '';
40、一共40道题,答对36道及以上,就是优秀,24道及以上,不到36道的就是合格,其余的为不及格(用三目运算的形式做,答对的题用a表示).
var a = prompt('答对的题数');
if (a>36 && a<=40){
document.write('优秀')
}else if (a>24 && a<=36){
document.write('合格')
}else if (a < 24){
document.write('不合格')
}
原生js入门级测试题及答案的更多相关文章
- 【面试篇】寒冬求职季之你必须要懂的原生JS(中)
互联网寒冬之际,各大公司都缩减了HC,甚至是采取了“裁员”措施,在这样的大环境之下,想要获得一份更好的工作,必然需要付出更多的努力. 一年前,也许你搞清楚闭包,this,原型链,就能获得认可.但是现在 ...
- 原生JS轮播-各种效果的极简实现(二)面向对象版本的实现和优化
之前写了一篇原生JS轮播,不过是非面向对象的,并且也没有添加上自动轮播.这里来写一下如何优化和进阶. 这里简单地介绍一下之前的代码,这是html结构 <body> <div clas ...
- 原生js如何实现图片翻转旋转效果?
原生js如何实现图片翻转旋转效果? 一.总结 1.通过给元素设置style中的transition来实现的. 2.我昨天纠结的效果全部可以通过精读这个代码后实现. 二.原生js如何实现图片翻转旋转效果 ...
- 应该用forEach改变数组的值吗? 原生JS forEach()和map()遍历的异同点
应该用forEach改变数组的值吗? https://segmentfault.com/q/1010000013170900?utm_source=index-hottest 由于js中的数组是引用类 ...
- 用原生js写一个"多动症"的简历
用原生js写一个"多动症"的简历 预览地址源码地址 最近在知乎上看到@方应杭用vue写了一个会动的简历,觉得挺好玩的,研究一下其实现思路,决定试试用原生js来实现. 会动的简历实现 ...
- 原生JS封装Ajax插件(同域&&jsonp跨域)
抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的...简单说说思路,如有不正 ...
- 常用原生JS方法总结(兼容性写法)
经常会用到原生JS来写前端...但是原生JS的一些方法在适应各个浏览器的时候写法有的也不怎么一样的... 今天下班有点累... 就来总结一下简单的东西吧…… 备注:一下的方法都是包裹在一个EventU ...
- 原生JS实现"旋转木马"效果的图片轮播插件
一.写在最前面 最近都忙一些杂七杂八的事情,复习软考.研读经典...好像都好久没写过博客了... 我自己写过三个图片轮播,一个是简单的原生JS实现的,没有什么动画效果的,一个是结合JQuery实现的, ...
- 再谈React.js实现原生js拖拽效果
前几天写的那个拖拽,自己留下的疑问...这次在热心博友的提示下又修正了一些小小的bug,也加了拖拽的边缘检测部分...就再聊聊拖拽吧 一.不要直接操作dom元素 react中使用了虚拟dom的概念,目 ...
随机推荐
- 万恶之源-python的部分内容
1.字符串格式化输出 %占位符: 声明占位的类型%s--字符串 %d%i--整型 %%转义 成为普通的% %s ,%d, %% msg = '%s,学习进度5%%' print(msg%(in ...
- nginx离线部署脚本
#! /bin/bashbasepath=$(cd `dirname $0`; pwd)nginx_path=/usr/localfile_name=nginxecho "--------- ...
- asp.net core 从 3.0 到 3.1
asp.net core 从 3.0 到 3.1 Intro 今天 .net core 3.1 正式发布了,.net core 3.1 正式版已发布,3.1 主要是对 3.0 的 bug 修复,以及一 ...
- 使用python删除N天前的文件
python版本为:2.7 import os import sys import time # Sets how many days old files are deleted DAYS_N = 7 ...
- kube-nginx 和 keepalived 部署安装
目录 简介 nginx 安装配置 下载编译nginx 配置Nginx文件,开启4层透明转发 配置Nginx启动文件 keepalived 安装配置 安装keeplive服务 配置keeplive服务 ...
- kubeadm join 超时报错 error execution phase kubelet-start: error uploading crisocket: timed out waiting for the condition
解决: swapoff -a kubeadm reset systemctl daemon-reload systemctl restart kubelet iptables -F && ...
- C语言I作业10
问题 回答 这个作业属于哪个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/10100 我在 ...
- 小白的springboot之路(一)、环境搭建、第一个实例
小白的springboot之路(一).环境搭建.第一个实例 0- 前言 Spring boot + spring cloud + vue 的微服务架构技术栈,那简直是爽得不要不要的,怎么爽法,自行度娘 ...
- 《Windows内核安全与驱动开发》4.3 时间与定时器
<Windows内核安全与驱动开发>阅读笔记 -- 索引目录 <Windows内核安全与驱动开发>4.3 时间与定时器 一.获取自系统启动以来的毫秒数 /* 函数作用:求自操 ...
- 暗灰色的圆形按钮.html
宝宝 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title& ...