JavaScript习题带答案.docx
- 文档编号:5239165
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:15
- 大小:27.29KB
JavaScript习题带答案.docx
《JavaScript习题带答案.docx》由会员分享,可在线阅读,更多相关《JavaScript习题带答案.docx(15页珍藏版)》请在冰豆网上搜索。
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.下面的哪一个表达式将返回真?
A.(3===3)&&(5 (17<=20) C.(3! =3)||(7<2)D.(1===1)||(3<2) 12.下面的哪一个表达式将返回假? A.! (3<=l)B.(4>=4)&&(5<=2) C.("a"=="a")&&("c"! ="d")D.(2<3)||(3<2) 13.下列各种运算符中,_____优先级最高。 A.+B.&&C.==D.*= 三、综合题 1.随机生成两个小数给变量x.y,然后显示这两个数中的最大值。 (提示: 语句“varx=Math.random();”可为变量生成一个随机小数: 另外,使用条件运算符‘'? : ") 2.如果某年的年份值是4的倍数并且不是100的倍数,或者该年份值是400的倍数,那么这一年就是闰年。 请编制一个页面,该页面显示当天是否处于闰年。 提示: 使用以下语句,可使变量year的值就是当天所属的年份值。 vartoday=newDate();//获取当天日期 varyear=today.getFullYear();//获取当天年份 第四章习题二 一、判断题 11.if语句可以实现多路分支。 (是。 ) 12.一个用switch语句实现的多路分支结构的程序段不能使用if语句实现。 (否。 可用多个if语句,两者是相通的) 13.任何循环语句的循环体至少要执行一次。 (否。 只有Do…while…语句) 14.循环语句是可以嵌套的,不仅相同的循环语句可以嵌套,不同的循环语句也可以嵌套。 (是。 三种循环语句可以任意相互嵌套,个数不限。 但是过多的循环嵌套会使得逻辑混乱,容易出错,所以使用中嵌套三重循环及以下的比较常见。 ) 15.在JavaScript中,任何一种循环结构的程序段,都可以用while循环实现。 (是。 For和while是相通的) 16.break语句可以出现在各种不同循环语句的循环体中。 (是。 ) 17.continue语句只能出现在循环体中。 (是。 ) 18.要排除程序中的锗误只能使用专业化的调试工具。 (否。 ) 二、单选题 19.作为if/else语句的第一行,下列选项中哪一个是有效的? (B) A.if(x=2)B.if(y<7)C.elseD.if(x==2&&) 20.下列关于switch语句的描述中,_____是正确的。 (A) A.switch语句中default子句是可以省略的 B.switch语句中case子句的语句序列中必须包含break语句 C.switch语句中case子句后面的表达式可以是含有变量的整型表达式 D.switch语句中子句的个数不能过多 21.在条件和循环语句中,使用什么来标记语句组? (C) A.圆括号()B.方括号[]C.花括号{}D.大于号>和小于号< 22.下列选项中哪一个可以作为for循环的有效的第一行? (A) A.for(x=1;x<6;x+=1)B.for(x==1;x<6;x+=1) C.for(x=1;x=6;x+=1)D.for(x+=1;x<6;x=1)C、D都是死循环 23.循环语句“for(vari=0,j=10;i=j=10;i++,j--);”的循环次数是_______。 (D) A.0B.1C.10D.无限i=j=10是赋值语句 24.以下哪个while循环判定式最有可能是因程序员失误而写出的代码? (B) A.while(x<=7)B.while(x=7)赋值符号C.while(x<7)D.while(x! =7) 25.语句“vari;while(i=0)i--;”中while的循环次数是______。 (A) A.0B.1C.5D.无限 26.下述关于循环语句的描述中,_____是错误的.(B) A.循环体内可以包含有循环语句 B.循环体内必须同时出现break语句和continue语句 C.循环体内可以出现条件语句 D.循环体可以是空语句,即循环体中只出现一个分号;空语句可用于延时 27.下述break语句的描述中,_____是不正确的.(C) A.break语句用于循环体内,它将退出该重循环 B.break语句用于switch语句,它表示退出该switch语句 C.break语句用于if语句,它表示退出该if语句(break是用于终止循环的,如for循环和while循环。 在没有循环的结构内加上break当然会报错了) D.break语句在一个循环体内可使用多次 28.有语句“varx=0;while(_____)x+=2: ",要使while循环体执行10次,空白处的循环判定式应写为: (C)从0开始 A.x<10B.x<=10C.x<20D.x<=20 三、操作题 29.编写程序.通过用户输入的年龄判断是哪个年龄段的人(儿童: 年龄<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("您是老年"); } 30.编写程序,艰据用户输入的一个数字(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; } 31.编写程序,计算10! (即1*2*3*·…10)的结果(10的阶乘)。 vari=1; varsum=1; do{ sum=sum*i; i++; }while(i<=10); document.write("10! ="+sum); 32.编写程序,计算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); 33.在页面上输出如下数字图案。 1 12 123 1234 12345 其中,每行的数字之间有一个空格间隔。 for(num=1;num<=5;num++){ for(x=1;x<=num;x++){ document.write(""+x); } document.write(" } 34.在页面上输出如下图案。 其中,每行的星号"*"之间有一个空格间隔。 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(" } 35.有一个三位数x,被4除余2,被7除余3,被9除余5,请求出这个数。 36.求所有满足条件的四位数ABCD,它是13的倍数,且第3位数加上第2位数等于第4位数(即: A=B+C)。 (提示: 对于四位数的整数x,通过Math.floor(x/1000)可求出第4位的数字,其他位数的提取也类似) 第四章习题三 一、判断题 37.在JavaScript中只允许使用预定义的函数.而不能自定义函数。 (否。 ) 38.函数定义可以没有函数体。 (否。 函数里可以没用语句(空语句),但是不能没有函数体) 39.因为JavaScript函数有返回值,所以必须在定义函数时指明返回值的类型。 (否。 ) 40.JavaScript的函数定义允许嵌套.即在函数中可以定义另一个函数。 (是。 在许多语言里不允许,但JavaScript里可以) 41.在不同函数定义中.允许定义同名的变量。 (是。 ) 二、单选题 42.在JavaScript函数的定义格式中,下面各组成部分中,_____是可以省略的。 (D) A.函数名B.指明函效的一对圆括写() C.函数体D.函数参效 43.如果有函数定义functionf(x,y){…},那么以下正确的函数调用是_______。 (C) A.f1,2没有括号B.f (1)C.f(1,2)D.f(,2) 44.在JavaScript中,定义函数时可以使用_____个参数。 (D) A.0B.1C.2D.任意 45.在JavaScript中,要定义一个全局变量x,可以_______。 (D) A.使用关键字public在函数中定义B.使用关键字public在任何函数之外定义 C.使用关链字var在函教中定义D.使用关键宇var在任何函数之外定义 46.在JavaScript中,要定义一个局部变量x,可以______。 (C) A.使用关健字private在函数中定义B.使用关健字private在任何函数之外定义 C.使用关健字var在函数中定义D.使用关健字var在任何函数之外定义 三、综合题 47. 编写一个函数f(x)=4x2+3x+2,使用户通过提示对话框瑜入x的值,能得到相应的计算结果。 48.编写一个函数Min(x,y)求出x,y这两个数中的最小值,要求x,y的值由用户通过提示对话框输入。 49.编写一个判断某个非负整数是否能够同时被3,5,7整除的函数,然后在页面上输出1~1000之间所有能同时被3,5,7整除的整数,并要求每行显示6个这样的数。 50.在页面上编程输出100~1000之间的所有素数,并要求每行显示6个素数。 51.编写一个非递归函数factorial(n),计算12! -10! 的结果。 52.编写一个带一个参数(指定显示多少层星号“*”的函数,它在页面止输出的一个5层星号“*”图案类似。 其中,每行的星号“*”之间有一个空格间隔。 53.斐波纳契(Fibonacci)数列的第一项是1,第二项是1,以后各项都是前两项的和。 试用递归函数和非递归函数各编写一个程序,求斐波纳契数列第N项的值。 54.编写函数,用下面的公式计算π的近似值。 在页面上输出当n=100,500,1000,10000时π的近似值。 55.利用全局变量和函数,设计模拟幸运数字机游戏。 设卒运数字为8,每次由计算机随机产生3个1-9之间(包括1和9)的随机数,当这3个随机数中有一个数字为8时,就算赢了一次,要求利用函数计算获胜率。 第六章习题 一、判断题 56.在JavaScript中,只能使用预定义对象,而不能使用自定义对象。 () 57.在JavaScript中,当使用new运算符创建一个对象变量后,一定要使用delete运算符把创建的对象变量撤销。 () 58.要使用任何一个JavaScript对象的方法和属性,必须先使用new运算符创建它。 () 59.在调用Date对象的属性和方法之前,必须先使用new运算符创建一个Date对象。 () 60.不能使用普通的for循环语句遍历数组中的所有元素。 () 二、单选题 61.在JavaScript中,通过下面的_____运算符访问对象的属性和方法。 () A.加运算符(+)B.点运算符(.) C.乘运算符(*)D.不能访问 62.对代码"varx=myhouse.kitchen;”的哪种说明正确? () A.将字符串”myhouse.kitchen.”赋值给变量x。 B.将myhouse和kitchen的值相加之和赋给对象x。 C.假设myhouse对象存在,它将myhouse对象的kitchen属性值赋给变量x。 D.假设myhouse对象存在,它将kitchen对象的myhouse属性值赋给变量x. 63.下面哪一条语句在页面上显示圆周率π? () A.document.write(Math.Pi)B.document.write(Math.pi) C.document.write(Math.PI)D.document.write(Date.Pi) 64.以下______表达式产生一个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()) 65.以下______语句把日期对象rightnow的星期号赋给变量weekday。 () A.varweekday=rightnow.getDate(); B.varweekday=rightnow.getDay(); C.varweekday=rightnow.getWeek(); D.varweekday=rightnow.getWeekday(); 66.创建字符串对象有哪两种方法? () A.使用new运算符创建String对象和直接将字符串赋给变量。 B.使用new运算符创建Array对象和直接将字符串赋给变量。 C.使用new运算符创建Number对象和直接将字符串赋给变量。 D.使用new运算符创建Date对象和直接将字符串赋给变量。 67.以下String对象的_____方法得到指定位置处的字符? () A.indexOf()B.charAt() C.charIsAt()D.indexOfThePosition() 68.执行语句序列“vars="1234567890'';s=s.substr(5,2);”之后,变量s的值是_______。 () A."52"B."56"C."67"D."78" 69.以下___语句不能创建数组.() A.varmyarray=newArray; B.varmyarray=newArray(5); C.varmyarray=newArray(''hello","hi","greetings"); D.varmyarray=newArray[10]; 70.以下______语句将正确访问cool数组中的第5个元素。 () A.cool[5]B.cool(5)C.cool[4]D.cool(4) 71.Array对象的______属性将返回表示数组长度的数值。 () A.length属性B.getLength属性C.size属性D.getsize属性 三、综合题 72.编写程序,根据用户输入的数值,计算其平方、平方根和自然对数。 functioncomput(){ x=form1.num1.value; form1.result1.value=x*x; form1.result2.value=Math.sqrt(x); form1.result3.value=Math.log(x); }
");
");
73.使用Math对象的random()方法编制一个产生0~100之间(含0,100)的随机整数的函数。
varx=parseInt(Math.random()*100);
document.write(x);
74.设计一个页面,在页面上显示信息“现在是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+"),欢迎您的到访!
");
75.编制一个从字符串中收集数字字符("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+=St
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JavaScript 习题 答案
![提示](https://static.bdocx.com/images/bang_tan.gif)