JavaScript习题带答案.docx
- 文档编号:12148652
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:19
- 大小:96.86KB
JavaScript习题带答案.docx
《JavaScript习题带答案.docx》由会员分享,可在线阅读,更多相关《JavaScript习题带答案.docx(19页珍藏版)》请在冰豆网上搜索。
JavaScript习题带答案
JavaScript习题(带答案)
JavaScript基础练习题
第四章习题一
一、判断题
1.在JavaScript中可以用十六进制形式表示浮点数常量。
2.空字符串("")也是字符串常量。
3.使用单引号对('')表示字符常量,而使用双引号对("")表示字符串常量。
4.在定义JavaScript变量时,一定要指出变量名和值。
5.用var定义一个变量后,如果没有赋予任何值,那么它的值是空值,即null.
6.JavaScript规定在使用任何变量之前必须先使用var声明它。
7.在使用varx=1声明变量x之后,赋值语句x="今天天气真好"将出错。
8.表达式的类型只取决于运算符,与操作数无关。
9.两个整数进行除(/)运算,其结果也为整数。
10.如果有定义vara=true,b;那么allb的结果为true。
二、单选题
1.以下哪个常量值最大?
A.80B.0X65C.095D.0115
2.下面四个变量声明语句中,哪一个变量的命名是正确的?
A.vardefaultB.varmy_bouse C.varmydogD.var2cats
3.下面哪一个语句定义了一个名为pageNumber的变量并将它的值赋为240?
A.varPageNumber=240B.pagenumber=240
C.varpageNumber=240D.varintnamedpageNumber=240
4.下面哪一个字符串变量定义语句是不正确的?
A.varmytext="Hereissometext!
"B.varmytext='Hereissometext!
'
C.varmytext='Hereissometext!
"D.varmytext="Hereis\nsometext!
"
5.下面四个JavaScript语句中,哪一个是合法的?
A.document.write("Johnsaid,''Hi!
"")
B.document.write("Johnsaid,''Hi!
"')
C.document.write("Johnsaid,''Hi!
")
D.document.write("Johnsaid,\''Hi!
\"")
6.下面哪一个不是JavaScript运算符?
A.=B.==C.&&D.$#
7.表达式123%7的计算结果是
A.2B.3C.4D.5
8.表达式"123abe"-"123"的计算结果是_。
A."abc"B.0C."123abc123"D.NaN
9.赋值运算符的作用是什么?
A.给一个变量赋新值B.给一个变量赋予一个新名
C.执行比较运算D.没有任何用处
10.比较运算符的作用是什么?
A.执行数学计算B.处理二进制位,目前还不重要
C.比较两个值或表达式,返回真或假D.只比较数字,不比较字符串
11.下面的哪一个表达式将返回真?
11.
12.
13.循环语句“for(vari=0,j=10;i=j=10;i++,j--);”的循环次数是_______。
(D)
A.0B.1C.10D.无限i=j=10是赋值语句
14.以下哪个while循环判定式最有可能是因程序员失误而写出的代码?
(B)
A.while(x<=7)B.while(x=7)赋值符号C.while(x<7)D.while(x!
=7)
15.语句“vari;while(i=0)i--;”中while的循环次数是______。
(A)
A.0B.1C.5D.无限
16.下述关于循环语句的描述中,_____是错误的.(B)
A.循环体内可以包含有循环语句
B.循环体内必须同时出现break语句和continue语句
C.循环体内可以出现条件语句
D.循环体可以是空语句,即循环体中只出现一个分号;空语句可用于延时
17.下述break语句的描述中,_____是不正确的.(C)
A.break语句用于循环体内,它将退出该重循环
B.break语句用于switch语句,它表示退出该switch语句
C.break语句用于if语句,它表示退出该if语句(break是用于终止循环的,如for循环和while循环。
在没有循环的结构内加上break当然会报错了)
D.break语句在一个循环体内可使用多次
18.有语句“varx=0;while(_____)x+=2:
",要使while循环体执行10次,空白处的循环判定式应写为:
(C)从0开始
A.x<10B.x<=10C.x<20D.x<=20
三、操作题
19.编写程序.通过用户输入的年龄判断是哪个年龄段的人(儿童:
年龄<14;青少年:
14<=年龄<24;青年:
24<年龄<40;中年:
40<=年龄<60;老年:
年龄>=60),并在页面上输出判断结果。
varx=window.prompt("请输入您的年龄",0)
if(x<14){
alert("您是儿童");
}elseif(14<=x<24){
alert("您是青少年");
}elseif(24<=x<40){
alert("您是青年");
}elseif(40<=x<60){
alert("您是中年");
}elseif(60<=x){
alert("您是老年");
}
20.编写程序,艰据用户输入的一个数字(0~6).通过警示对话框显示对应的星期几(0:
星期日;1:
星期一;……6:
星期六;)。
varx=parseInt(window.prompt("输入的一个数字(0~6)",0))
switch(x){
case0:
alert("星期天");
break;
case1:
alert("星期一");
break;
case2:
alert("星期二");
break;
case3:
alert("星期三");
break;
case4:
alert("星期四");
break;
case5:
alert("星期五");
break;
case6:
alert("星期六");
break;
default:
alert("您输入的格式不对");
break;
}
21.编写程序,计算10!
(即1*2*3*·…10)的结果(10的阶乘)。
vari=1;
varsum=1;
do{
sum=sum*i;
i++;
}while(i<=10);
document.write("10!
="+sum);
22.编写程序,计算1!
+2!
+3!
+…..+10!
的结果。
functionfactorial(y){
vari=1;
varproduct=1;
while(i<=y){
product=product*i;
i++;
}
returnproduct;
}
varsum=0;
for(x=1;x<=10;x++){
sum=sum+factorial(x);
}
document.write("1!
+2!
+3!
+…..+10!
="+sum);
23.在页面上输出如下数字图案。
1
12
123
1234
12345
其中,每行的数字之间有一个空格间隔。
for(num=1;num<=5;num++){
for(x=1;x<=num;x++){
document.write(""+x);
}
document.write("
");
}
24.在页面上输出如下图案。
其中,每行的星号"*"之间有一个空格间隔。
for(num=5;num>=1;num--){
for(x=1;x<=num;x++){
document.write(" ");
}
for(y=5-num;y>=0;y--){
document.write("*");
}
document.write("
");
}
25.有一个三位数x,被4除余2,被7除余3,被9除余5,请求出这个数。
26.求所有满足条件的四位数ABCD,它是13的倍数,且第3位数加上第2位数等于第4位数(即:
A=B+C)。
(提示:
对于四位数的整数x,通过Math.floor(x/1000)可求出第4位的数字,其他位数的提取也类似)
第四章习题三
一、判断题
27.在JavaScript中只允许使用预定义的函数.而不能自定义函数。
(否。
)
28.函数定义可以没有函数体。
(否。
函数里可以没用语句(空语句),但是不能没有函数体)
29.因为JavaScript函数有返回值,所以必须在定义函数时指明返回值的类型。
(否。
)
30.JavaScript的函数定义允许嵌套.即在函数中可以定义另一个函数。
(是。
在许多语言里不允许,但JavaScript里可以)
31.在不同函数定义中.允许定义同名的变量。
(是。
)
二、单选题
32.在JavaScript函数的定义格式中,下面各组成部分中,_____是可以省略的。
(D)
A.函数名B.指明函效的一对圆括写()
C.函数体D.函数参效
33.如果有函数定义functionf(x,y){…},那么以下正确的函数调用是_______。
(C)
A.f1,2没有括号B.f
(1)C.f(1,2)D.f(,2)
34.在JavaScript中,定义函数时可以使用_____个参数。
(D)
A.0B.1C.2D.任意
35.在JavaScript中,要定义一个全局变量x,可以_______。
(D)
A.使用关键字public在函数中定义B.使用关键字public在任何函数之外定义
C.使用关链字var在函教中定义D.使用关键宇var在任何函数之外定义
36.在JavaScript中,要定义一个局部变量x,可以______。
(C)
A.使用关健字private在函数中定义B.使用关健字private在任何函数之外定义
C.使用关健字var在函数中定义D.使用关健字var在任何函数之外定义
三、综合题
37.
编写一个函数f(x)=4x2+3x+2,使用户通过提示对话框瑜入x的值,能得到相应的计算结果。
38.编写一个函数Min(x,y)求出x,y这两个数中的最小值,要求x,y的值由用户通过提示对话框输入。
39.编写一个判断某个非负整数是否能够同时被3,5,7整除的函数,然后在页面上输出1~1000之间所有能同时被3,5,7整除的整数,并要求每行显示6个这样的数。
40.在页面上编程输出100~1000之间的所有素数,并要求每行显示6个素数。
41.编写一个非递归函数factorial(n),计算12!
-10!
的结果。
42.编写一个带一个参数(指定显示多少层星号“*”的函数,它在页面止输出的一个5层星号“*”图案类似。
其中,每行的星号“*”之间有一个空格间隔。
43.斐波纳契(Fibonacci)数列的第一项是1,第二项是1,以后各项都是前两项的和。
试用递归函数和非递归函数各编写一个程序,求斐波纳契数列第N项的值。
44.编写函数,用下面的公式计算π的近似值。
在页面上输出当n=100,500,1000,10000时π的近似值。
45.利用全局变量和函数,设计模拟幸运数字机游戏。
设卒运数字为8,每次由计算机随机产生3个1-9之间(包括1和9)的随机数,当这3个随机数中有一个数字为8时,就算赢了一次,要求利用函数计算获胜率。
第六章习题
一、判断题
46.在JavaScript中,只能使用预定义对象,而不能使用自定义对象。
()
47.在JavaScript中,当使用new运算符创建一个对象变量后,一定要使用delete运算符把创建的对象变量撤销。
()
48.要使用任何一个JavaScript对象的方法和属性,必须先使用new运算符创建它。
()
49.在调用Date对象的属性和方法之前,必须先使用new运算符创建一个Date对象。
()
50.不能使用普通的for循环语句遍历数组中的所有元素。
()
二、单选题
51.在JavaScript中,通过下面的_____运算符访问对象的属性和方法。
()
A.加运算符(+)B.点运算符(.)
C.乘运算符(*)D.不能访问
52.对代码"varx=myhouse.kitchen;”的哪种说明正确?
()
A.将字符串”myhouse.kitchen.”赋值给变量x。
B.将myhouse和kitchen的值相加之和赋给对象x。
C.假设myhouse对象存在,它将myhouse对象的kitchen属性值赋给变量x。
D.假设myhouse对象存在,它将kitchen对象的myhouse属性值赋给变量x.
53.下面哪一条语句在页面上显示圆周率π?
()
A.document.write(Math.Pi)B.document.write(Math.pi)
C.document.write(Math.PI)D.document.write(Date.Pi)
54.以下______表达式产生一个0-7之间(含0,7)的随机整数。
()
A.Math.floor(Math.random()*6)B.Math.floor(Math.random()*7)
C.Math.floor(Math.random()*8)D.Math.sqrt(Math.random())
55.以下______语句把日期对象rightnow的星期号赋给变量weekday。
()
A.varweekday=rightnow.getDate();
B.varweekday=rightnow.getDay();
C.varweekday=rightnow.getWeek();
D.varweekday=rightnow.getWeekday();
56.创建字符串对象有哪两种方法?
()
A.使用new运算符创建String对象和直接将字符串赋给变量。
B.使用new运算符创建Array对象和直接将字符串赋给变量。
C.使用new运算符创建Number对象和直接将字符串赋给变量。
D.使用new运算符创建Date对象和直接将字符串赋给变量。
57.以下String对象的_____方法得到指定位置处的字符?
()
A.indexOf()B.charAt()
C.charIsAt()D.indexOfThePosition()
58.执行语句序列“vars="1234567890'';s=s.substr(5,2);”之后,变量s的值是_______。
()
A."52"B."56"C."67"D."78"
59.以下___语句不能创建数组.()
A.varmyarray=newArray;
B.varmyarray=newArray(5);
C.varmyarray=newArray(''hello","hi","greetings");
D.varmyarray=newArray[10];
60.以下______语句将正确访问cool数组中的第5个元素。
()
A.cool[5]B.cool(5)C.cool[4]D.cool(4)
61.Array对象的______属性将返回表示数组长度的数值。
()
A.length属性B.getLength属性C.size属性D.getsize属性
三、综合题
62.编写程序,根据用户输入的数值,计算其平方、平方根和自然对数。
functioncomput(){
x=form1.num1.value;
form1.result1.value=x*x;
form1.result2.value=Math.sqrt(x);
form1.result3.value=Math.log(x);
}
63.使用Math对象的random()方法编制一个产生0~100之间(含0,100)的随机整数的函数。
varx=parseInt(Math.random()*100);
document.write(x);
64.设计一个页面,在页面上显示信息“现在是XXXX年XX月XX日Xx点XX分XX秒(星期X),欢迎您的到访!
“。
today=newDate()
year=today.getFullYear()
month=today.getMonth()+1
date=today.getDate()
hour=today.getHours()
minutes=today.getMinutes()
seconds=today.getSeconds()
day=today.getDay()
alert("现在是"+year+"年"+month+"月"+date+"日"+hour+"时"+minutes+"分"+seconds+"秒(星期"+day+"),欢迎您的到访!
");
65.编制一个从字符串中收集数字字符("0"',"1",…"9")的函数CollectDigits(s),它从字符串s中顺序取出数字,并且合并为一个独立的字符串作为函数的返回值。
例如函数调用CollectDigits("1abc23def4")的返回值是字符串"1234"。
functionCollectDigits(s){
varresult="";
for(i=0;i tmp=s.substring(i).charCodeAt(); if(tmp>=48&&tmp<=57){ result+=String.fromCharCode(tmp); } } alert(result); }
66.编制一个将两个字符串交叉合并的函数Merge(s1,s2),例如Merge("123","abc")的返回结果是"1a2b3c",如果两个字符串的长度不同,那么就将多余部分直接合并到结果字符串的末尾,如Merge("123456",''abc'')的返回结果是”1a2b3c456”。
functionMerge(s1,s2){
varresult="";
for(i=0;i<=s1.length||i<=s2.length;i++){
tmp1=s1.charCodeAt(i);
tmp2=s2.charCodeAt(i);
if(tmp1>0&&tmp2>0){
result+=String.fromCharCode(tmp1).concat(String.fromCharCode(tmp2));
}elseif(tmp1>0){
result+=String.fromCharCode(tmp1);
}elseif(tmp2>0){
result+=String.fromCharCode(tmp2);
}
}
alert(result);
}
67.设计一个程序,它(使用一个数组)接收用户输入的7门课程的成绩,然后在页面上显示其总成绩和平均分,并列出小于60的成绩。
varscore=newArray(7)
varsum=0,avg=0,min60=0;
for(vari=0;i varstr=window.prompt("请输入第"+(i+1)+"个成绩",1); score[i]=parseInt(str); } document.write(score); for(i=0;i sum+=score[i] } document.write(" avg=sum/7; document.write(" document.write(" for(i=0;i if(score[i]<60){ document.write(score[i]+"") } } 68.斐波纳契(Fibonacci)数列的第一项是1,第二项是1,以后各项都是前两项的和。 请按逆序在页面中显示斐波
总成绩为"+sum)
平均分为"+avg)
不及格分数分别为")
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaScript 习题 答案