阶段一:
1、为抵抗洪水,战士连续作战89小时,编程计算共多少天零多少小时?
....
2、小明要到美国旅游,可是那里的温度是以华氏度为单位记录的。
它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度。
提示:摄氏度与华氏度的转换公式为:摄氏度 = 5/9.0*(华氏度-32)保留3位小数
....
3、如何在html页面内添加JS代码。
....
4、如何实现对两个数值变量的值进行互换。
....
5、常见的关系运算符有哪些?关系运算符的结果有什么特点?
....
阶段二:
1、输入一个整数,判断大于0小于0还是等于0
....
2、输入一个数判断是奇数还是偶数,并输出结果
....
3、输入月份显示当月天数 (不用考虑闰年)
....
4、开发一款软件,根据公式(身高-108)* 2=体重,可以有10斤左右的浮动。来观察测试者体重是否合适
提示:输入身高(厘米)算体重(斤),然后判断算出的体重和输入的体重差值在正负10斤以内,可使用Math.abs()
....
5、已知银行整存整取存款不同期限的月息利率分别为:
月息利率=
0.63% 期限=1年
0.66% 期限=2年
0.69% 期限=3年
0.75% 期限=5年
0.84% 期限=8年
输入存款的本金和年限,求到期时能从银行得到的利息与本金的合计。(利息的计算公式为:利息=本金×月息利率×12×存款年限。(switch||else-if)
....
6、有一个函数:
x x < 1
y={ 2X 1<=x<10
3x-11 x
....
7、编程实现以下功能:读入两个运算数(data1和data2)及一个运算符(op),
计算表达式data1 op data2的值,其中op可为+,-,*,/。
....
8、根据一个数字日期,判断这个日期是这一年的第几天 (有点难)
例如: 20160211,计算后结果为42
....
9、输入4个数,按照由小到大的顺序输出 (锻炼逻辑性,难)
....
10、输入1个四位数,求各位数字的平方和。
例如:输入 1234,输出30。
....
11、铁路托运行李规定:行李重不超过50公斤的,托运费按每公斤0.15元计费;如超50公斤,超过部分每公斤加收0.10元。
编一程序完成自动计费工作。
....
12、输入一个四位数,要求将它的千位、百位、十位、个位上的数字按由小到大排列,输出一个新数。
(如:输入 4287 要求输出为 2478)
....
13、输入两门课的成绩,如果两门成绩都在60分以上。则输出“it is pass.”只要有一门低于60分就输出“it is not pass.”,如果输入的任何一门成绩不在0-100范围内则输出“it is error.”。
....
14、打印100–200之间所有能被3或者7整除的数。
....
15、计算100的阶乘。
....
16、求100-999之间的水仙花数。
....
17、打印九九乘法表。
....
阶段三:
1、求1!+2!+3!+…+10!的值
....
2、求2/1,3/2,5/3,8/5,13/8,21/13,… 前20项之和。
....
3、打印出1000-2000年中所有的闰年,并以每行四个数的形式输出。
....
4、打印三角形
*
**
***
****
....
5.篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,
篮球的高度小于0.1米。
....
6、输出100-200之间所有的素数(素数:只能被1和自己本身整除的数)
....
7、求出1-1/2+1/3-1/4⋯…1/20的和
....
8、一个球从100米的高度落下,每次落地后反跳回原高度的一半,在落下,在反弹。
求他在第10次落地时,共经过多少米?第十次反弹多高?
....
9、有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,
第二个里面放2粒,第三个里面放4,棋盘上放的所有芝麻的重量
....
10、输出以下图形 (扩展:尽能力去做)
*
***
*****
*******
*****
***
*
....
阶段四:
1、用函数实现加法
....
2、用函数实现闰年的判断.
....
3、用一个函数实现加减乘除求余
....
4、某公司用电话传递数据(如:6234),需要加密,规则如下
a.每位数字都加上5然后用除以10的余数代替(如:1789)
b.将第一和第四位交换,第二和第三位交换(如:9871)
....
5、一个5位数,判断它是不是回文数。即12621是回文数,个位与万位相同,十位与千位相同。
....
6、用函数判断三个数字的大小,按从小到大顺序输出(提高)
a:10 b:20 c:5
....
阶段五:
1、编写函数,输入n, n为偶数时调用函数求1/2+1/4+… 1/n 4
n为奇数时调用函数求1/1+1/3+…1/n 4
思路:
1.创建一个函数,参数就是n,这个n就是用户输入的数据
2.对n做判断,
如果是偶数:调用求偶数函数
如果是奇数:调用求奇数的函数
方法一:
function qiujioushu(n) {
if (n % 2 == 0) {
return qiuOu(n)
}
else {
return qiuJi(n)
}
}
// 求偶数的函数
function qiuOu(n) {
// 10
var sum = 0
for (var i = 2; i <= n; i += 2) {//12<=10
sum += 1 / i;//1/2+1/4+..1/10
}
return sum;
}
function qiuJi(n) {
// 10
var sum = 0
for (var i = 1; i <= n; i += 2) {//12<=10
sum += 1 / i;//1/2+1/4+..1/10
}
return sum;
}
console.log(qiujioushu(3));
方法二:
简化版代码
function qiujioushu(n){
var sum = 0;//保存偶数之和的
var sum1 = 0;//保存奇数之和的
for(var i=1;i<=n;i++){
if(i%2==0){
sum+=1/i;
}
else{
sum1+=1/i;
}
}
console.log(sum);
console.log(sum1);
}
qiujioushu(2)
2、页面输入数字,点击按钮用函数求阶乘
思路:
阶乘:从当前数字乘到1
function qiujiecheng(){
var t1 = Number(document.getElementById('t1').value);
var result = 1;
for(var i=1;i<=t1;i++){
result*=i;
}
console.log(result);
}
3、常见事件与函数的结合(可将信息打印在控制台, ondblclick 和onchange事件)
4、输入某年某月某日,判断这一天是这一年的第几天?(1980~2020)
思路:
1.给3个输入框,分别代表年月日
2.给一个按钮,点击之后获取计算的结果
3.2020 3 2 1(31)+2(闰年:29平年:28)+当前天数
方法一:
function getDay() {
// 获取年月日输入框里面的值
var year = Number(document.getElementById('year').value);
var month = Number(document.getElementById('month').value);
var day = Number(document.getElementById('day').value);
var result = 0;//用来保存第几天的
var erday = 0;//用来保存二月份的天数的
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
// 是闰年
erday = 29;
}
else {
erday = 28;
}
switch (month) {
case 1: result = day; break;
case 2: result = 31 + day; break;
case 3: result = 31 +erday +day; break;
case 4: result = 31 +erday +31+day; break;
case 5: result = 31 +erday +31+30+day; break;
case 6: result = 31 +erday +31+30+31+day; break;
}
方法二:
// 简化版 result =29+31+1
switch (month) {
case 4: result += 31;
case 3: result += erday;
case 2: result += 31;
case 1: result += day; break;
}
console.log(result);
document.getElementById('result').value = result
}
5、已知某年某月某日是星期几,输入一个年月日(1980~2030),求得该日为星期几。
2019/3/21 周四 ----> 2011 5 13
思路:
1.给3个输入框,分别代表年月日
2.给一个按钮,点击之后获取计算的结果
3.2020 3 2 1(31)+2(闰年:29平年:28)+当前天数
function getDay() {
// 获取年月日输入框里面的值
var year = Number(document.getElementById('year').value);
var month = Number(document.getElementById('month').value);
var day = Number(document.getElementById('day').value);
var result = 0;//用来保存第几天的
var erday = 0;//用来保存二月份的天数的
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
// 是闰年
erday = 29;
}
else {
erday = 28;
}
阶段六:
1、假设你应聘web前端技术开发岗位,如果你会HTML技术,你面试成功,欢迎加入公司,否则你面试不成功,不能加入公司.
function getMianshi() {
// 获取输入框里面的值
var isHui = document.getElementById('isHui').value;
if (isHui == "会") {
document.getElementById('mianshiResult').value = "恭喜,面试成功"
}
else {
document.getElementById('mianshiResult').value = "抱歉,面试失败"
}
}
2、联合国世界卫生组织对年龄的划分标准,44岁以下为青年;45岁至59岁为中年人。60岁至89岁为老年人;90岁以上为长寿老年人。赵红今年99岁了,她属于哪个年龄阶段的。
function getAgeJieduan() {
// 获取用户输入的年龄
var age = Number(document.getElementById("age").value);
var result = "";
if (age <= 44) {
result = "青年";
}
else if (age >= 45 && age <= 59) {
result = "中年";
}
else if (age >= 60 && age <= 89) {
result = "老年";
}
else {
result = "长寿"
}
// 获取结果展示框,并把值赋值上去
document.getElementById("ageResult").value = result;
}
4、我们来做个周计划,周一、二学习理念知识,周三、四到企业实践,周五总结经验,周六、日休息和娱乐
function jihua(week) {
switch (week) {
case 1:
case 2: console.log("学习理念知识"); break;
case 3:
case 4: console.log("到企业实践"); break;
case 5: console.log("总结经验"); break;
case 6:
case 7: console.log("休息和娱乐"); break;
}
}
jihua(6)
5、我们有1,2,3…10不同面值的钱,使用for语句完成合计,看看我们一共有多少钱?
思路:
1.先获取1-10这10个数字(循环)
2。定义求和变量
3.将10个数字累加求和赋值给求和变量
function diwuti() {
var sum = 0;
for (var i = 1; i <= 10; i++) {
sum += i;//sum=sum+i
}
console.log(sum);
}
diwuti()
6、使用while循环,完成从盒子里取球的动作,每次取一个,共6个球。需要取几次。
function quQiu() {
// var num = 6;//代表球的数量
// var count=0;//取得次数
// // 只要盒子里面有球,就执行程序
// while(num>0){
// count++;
// num--;
// }
// console.log("总共需要取",count,"次");
var count = 0;
for (var i = 6; i > 0; i--) {
count++
}
console.log("总共需要取", count, "次");
}
quQiu()
7、输出1到15的所有奇数和
思路:
1.先得到1-1这15个数字,利用循环
2。对每个数字做判断,看是不是奇数
3.如果是就累加求和
function jishuhe() {
var sum = 0;
for (var i = 1; i <= 15; i++) {
if (i % 2 != 0) {
sum += i
}
}
console.log("1-15技术之和:", sum);
}
jishuhe()
8、输出1到15的所有偶数,输出1到100的所有奇数
function dibati() {
for (var i = 1; i <= 15; i++) {
if (i % 2 == 0) {
console.log(i);
}
}
console.log('======');
for (var i = 1; i <= 100; i++) {
if (i % 2 != 0) {
console.log(i);
}
}
}
dibati()
9、输出1到15的所有奇数和
....
10、输出1到30的所有7的倍数的数字以及个数
function dishiti() {
var count = 0;
for (var i = 1; i <= 30; i++) {
if (i % 7 == 0) {
console.log(i);
count++;
}
}
console.log("总个数:", count);
}
console.log("===================");
dishiti()
11、输出1到30的所有7的倍数的数字的和
function shiyiti() {
var sum = 0;
for (var i = 1; i <= 30; i++) {
if (i % 7 == 0) {
sum += i;
}
}
console.log("能被7整除的数字之和", sum);
}
shiyiti()
12、打印100-200之间所有能被3或者7整除的数
function shierti() {
for (var i = 100; i <= 200; i++) {
if (i % 3 == 0 || i % 7 == 0) {
console.log(i);
}
}
}
shierti()
13、编写一个函数,在页面上输出一个N行M列(参数数值随便写)的div,
div的内容填充当前的行和列,如(第一行第一列),
可以在css里面添加div的宽100高100再加个边框。
function shisanti(n, m) {
// 如果是双层循环,外层代表行,内层代表列
// alert:弹框
// console.log():只能在控制台查看,给程序员做测试用的
// document.write:输出在网页上的,可以去创建一些标签
for (var i = 1; i <= n; i++) {
for (var j = 1; j <= m; j++) {
document.write("<div>" + i + "行" + j + "列</div>")
}
document.write("<br>")
}
}
shisanti(3, 3);
14、编写函数get(num, k),
函数功能是: 0-num值之间,k是从num从右到左的第几个数,
假如num给20,k为18,0-20之间, 18是从20开始倒着数的第3个
20 21 22 23 24 25
25-20+1
num-k+1
function shisiti(num, k) {
var count = 0;
for (var i = num; i >= k; i--) {//17>=18
count++;//3
}
console.log("k是从num从右到左的第", count, "个数");
// console.log("k是从num从右到左的第",num-k+1,"个数");
}
shisiti(20, 18)
15、编写一个函数add(n),n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数求1/1+1/3+…+1/n
。。。
16、求m-n之间数字的和
。。。
17、编写一个函数,计算任意两个数字之间所能组成的奇数个数,数字必须是个位数(难)
1-3
11 12 13
21 22 23
31 32 33
function shiqiti(m, n) {//m=1 n=3
var count = 0;
for (var i = m; i <= n; i++) {//i=2;2<=3
for (j = m; j <= n; j++) {//j=1;1<=3
// console.log(i,j);//11 12 13 21 22 23
if (i != j) {
var str = "" + i + j;
str = Number(str);
if (str % 2 != 0) {
console.log(str);
count++
}
}
}
}
console.log("总共:", count, "个");
}
console.log('====================');
shiqiti(1, 3)