弹窗依次输入3个学生的成绩。并且使用数组保存,打印出所有学生的的成绩与平均成绩
<script>
var score = [];
while (true) {
score.push(parseInt(prompt('依次输入学生的成绩:')))
if (score.length >= 3) break;
}
// 所有成绩的总和
var sum = 0;
// 平均成绩
var res = 0;
for (var i = 0; i < score.length; i++) {
sum += score[i];
}
console.log(sum)
res = sum/score.length;
console.log('所有学生的成绩' +score+ ';平均成绩:' + res);
</script>
一个游戏,前20关是每一关自身的分数,21-30关每一关是10分 31-40关,每一关是20分 41-49关,每一关是30分,50关,是100分。编写一个函数,输入你现在闯到的关卡数,求你现在拥有的分数
<script type="text/javascript">
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 100]
var sum = 0;
var number = parseInt(prompt('输入关卡!'))
// console.log(number);
// s(number);
// console.log(sum)
function s(number) {
for (var i = 0; i < number; i++) {
sum += arr[i];
}
return sum;
}
document.write(s(number) + "分")
</script>
编写一个函数,计算两个数字的和、差、积、商
<script>
// 计算两个数字的和、差、积、商
function fun(a,b){
var n1 = a+b;
var n2 = a-b;
var n3 = a*b;
var n4 = a/b;
return ('和:'+ n1 +' ' + "差:" + n2 +' '+ "积:" + n3 +' '+ "商:" + n4);
}
console.log(fun(3,3))
</script>
封装函数计算任意参数的最大值
<script>
// 使用内置的伪数组 arguments每一个元素就对应着每一个实参
function max(){
var MaxResult = arguments[0];
for(var i = 0; i < arguments.length; i++){
if(arguments[i] > MaxResult){
MaxResult = arguments[i];
}
}
console.log(MaxResult);
}
max(1,2,3,4,5,6,7,8,9,10,123,5465,123)
</script>
编写一个函数,计算三个数字的大小,按从小到大顺序输出
<script>
// 方法一
function Sort(a, b, c) {
var tmp = 0;
if (a > b){
tmp = a;
a = b;
b = tmp;
}
if (a > c){
tmp = a;
a = c;
c = tmp;
}
if (b > c){
tmp = b;
b = c;
c = tmp;
}
console.log ("从小到大的顺序:" + a + "," + b + "," + c)
}
Sort(3,2,1)
// 方法二
function sort(a, b, c) {
var sortArr = [a, b, c].sort(function (n1, n2) {
return n1 - n2;
})
console.log(sortArr);
}
sort(10, 2, 1)
</script>
封装一个函数 计算指定区间的质数个数 例如 100-200之间有多少个质数
<script>
function isNum(a,b){
var arr = [];
for(var i = a; i <= b; i++){
var flag = true;
for(var j = 2; j < i; j++){
if(i%j == 0){
flag = false;
break;
}
}
if(flag){
// console.log(i);
// 将标记为true的数,添加到arr数组内
arr.push(i);
}
}
// 循环结束返回整个质数的数组
return arr;
}
// 接收函数返回的值
var res = isNum(100,200);
console.log(res)
console.log(res.length)
</script>
封装函数生成指定区间的随机整数
<script>
// Math.random()生成0-1之间的一个小数 不包括1
function Random(min,max){
/*
Math.random() * 100 ==> 0 - 100
Math.random() * 100 + 10 ==> 10 -110
Math.random() * (100 - 10) ==> 0 - 90
Math.random() * (100 - 10) + 10 ==> 10 -100
数学公式
不包含结束数字:Math.random() * (最大值-最小值)+最小值
包含结束数字 :Math.random() * (最大值-最小值+1)+最小值
*/
// 随机生成1-16的随机数
// var blue = parseInt(Math.random() * 16) + 1;
return Math.random()*(max-min)+min;
}
var res = Random(10,100);
console.log(res);
</script>
封装一个函数根据日期计算是这一年的第几天 例如: 20220917,计算后结果为259 要求使用数组保存每个月的天数
<script>
function date(num){
// 取年份
var year = parseInt(num/10000);
// 取月份
var month = parseInt((num - year*10000)/100);
// 取天数
var day = parseInt(num - year*10000 - month*100);
// console.log(year,month,day);
switch(month){
case 12:
day +=31
case 11:
day +=30
case 10:
day +=31
case 9:
day +=30
case 8:
day +=31
case 7:
day +=31
case 6:
day +=30
case 5:
day +=31
case 4:
day +=30
case 3:
day +=31
case 2:
day +=((month%4 == 0 && month%100 !=0 || month%400==0)) ? 29:28
default:
break;
}
console.log(day)
}
date(20220917);
</script>