一、 Java编程题
题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
var a = 100
var b = 100
for(var i = 0; i < 10; i++) {
a= a / 2
b+= a
}
alert(a)
alert(b)
二、 JavaScript编程题
查找字符串"sdddrtkjsfkkkasjdddj"中出现次数最多的字符和次数。
//定义字符串
var a = "sdddrtkjsfkkkasjdddj"
//定义一个变量获取 字符串里面的值
var x
//定义一个空数组向里面添加不重复的字符
var arr = [];
//定义一个空数组将字符串里面的所有字符加到数组里面
var arr1 = [];
//定义一个空数组向里面添加删除操作的次数
var arr2 = [];
//删除的次数
var b = 0;
function show() {
for(var i = 0; i < a.length; i++) {
x= a.slice(i, i + 1)
arr2.push(x);
if(arr.indexOf(x)== -1) {
arr.push(x)
}
}
for(var j = 0; j < arr.length; j++) {
for(var k = 0; k < a.length+1; k++) {
if(arr2.indexOf(arr[j])!= -1) {
arr2.splice(arr2.indexOf(arr[j]),1)
b+= 1;
}
}
arr1.push(b)
b= 0
}
document.getElementById("show").innerHTML= arr
document.getElementById("show1").innerHTML= arr1
}
show()
三、 SQL编程题
员工表emp:员工编号eid,姓名ename,工作职位title,雇佣日期hiretime,工资salary,奖金bonus,部门 depart
部门表dept:部门编号did,名称dname,部门领导leader
员工数据:
1001,’张三’,’销售’,’1999-12-1’,3000.0,1100.0,’102’
1002,’李四’,’研发员’,’1998-2-11’,3500.0,null,’101’
1003,’王五’,’研发员’,’2001-1-15’,4000.0,null,’101’
1004,’赵六’,’美工’,’2001-12-1’,4000.0,null,’101’
1005,’武六奇’,’研发员’,’2001-7-1’,5500.0,null,’101’
1006,’齐八九’,’销售’,’2001-6-16’,3000.0,1500.0,’102’
1007,’钱多多’,’经理’,’2009-11-10’,6500.0,2000.0,’102’
1008,’张一一’,’销售’,’2007-12-10’,3800.0,1000.0,’102’
1009,’李丽丽’,’研发员’,’1999-8-19’,4500.0,null,’101’
1010,’王旺旺’,’销售’,’1999-9-1’,3600.0,1600.0,’102’
1011,’赵有才’,’经理’,’1999-4-30’,7000.0,1800.0,’101’
1012,’李雷’,’出纳’,’2007-10-10’,5000.0,500.0,’103’
1013,’韩梅’,’会计’,’2005-3-1’,6600.0,1000.0,’103’
1014,’张向阳’,’经理’,’2002-6-1’,7000.0,1500.0,’103’
1015,’李向东’,’销售’,’2004-5-1’,4300.0,1000.0,’102’
部门数据:
‘101’,’研发部’,1007
‘102’,’销售部’,1011
‘103’,’财务部’,1014
1、 查询员工姓名及所做工作
2、 查询员工姓名及年薪
3、 查询工资大于4000的员工信息
4、 查询年薪大于20000的员工信息
5、 查询没有奖金的员工
6、 查询工资大于3000同时有奖金的员工信息
7、 查询工资大于3500但是小于5000的员工信息
8、 查询编号是1001、1003、1004的员工信息
9、 查询编号不是1001、1003、1004的员工信息
10、 查询员工姓名是3个字的员工信息
11、 查询姓张的员工信息
12、 查询出员工工资没有包含6和8的员工信息
13、 按照工资由高到低查询员工信息
14、 要求查询出101部门的所有雇员信息,查询的信息按照工资由高到低排序,如果工资相等,则按照雇佣日期由早到晚排序。
15、 查询101部门有多少员工,每月平均发多少工资
16、 查询101部门的所有员工信息,并显示所在部门名称
17、 查询1001员工的部门领导信息
18、 查询部门员工数量,平均工资,最低工资及最低工资的员工姓名
select d.dname,GROUP_CONCAT(e.ename)from emp e
LEFT JOIN dept d
on e.depart = d.did
group by d.dname;
-- 查询员工姓名及所做工作
select ename,title from emp;
-- 查询员工姓名及年薪
select ename ,salary*12 as ‘年薪’ from emp;
-- 查询工资大于4000的员工信息
select * from emp where salary>4000;
-- 查询年薪大于20000的员工信息
select * from emp where salary*12 > 20000;
-- 查询没有奖金的员工
select * from emp where bonus is null;
-- 查询工资大于3000同时有奖金的员工信息
select * from emp where salary>3000 and bonus is not null
-- 查询工资大于3500但是小于5000的员工信息
select * from emp WHERE salary BETWEEN3500 and 5000;
-- 查询编号是1001、1003、1004的员工信息
select * from emp where eid in(1001,1003,1004);
-- 查询编号不是1001、1003、1004的员工信息
select * from emp where eid not in(1001,1003,1004);
-- 查询员工姓名是3个字的员工信息
select * from emp where ename like '___';
-- 查询姓张的员工信息
select * from emp where ename like '张%';
-- 查询出员工工资没有包含6和8的员工信息
select * from emp where salary not like '%6%' and salary not like '%8%';
-- 按照工资由高到低查询员工信息
select * from emp order by salary desc;
-- 要求查询出101部门的所有雇员信息,查询的信息按照工资由高到低排序,如果工资相等,则按照雇佣日期由早到晚排序。
select * from emp where depart=101 order by salary desc,hiretime asc;
-- 查询101部门有多少员工,每月平均发多少工资
select count(*) as "员工数量",avg(salary) as "平均工资" from emp where depart=101;
-- 查询101部门的所有员工信息,并显示所在部门名称
select * from emp
left join dept
on emp.depart=dept.did
where emp.depart=101;
-- 查询1001员工的部门领导信息
select * from emp
where eid=(
select dept.leader
from dept
left join emp
on emp.depart=dept.did
where emp.eid=1001
);
-- 查询部门员工数量,平均工资,最低工资及最低工资的员工姓名
select count(eid),avg(salary),min(salary),ename from emp group by depart;