练习题
来源:互联网 发布:京东好还是淘宝好 编辑:程序博客网 时间:2024/06/05 06:17
第一题:
/*
需求:定义一个 int类型变量存放当前月份(month),使用switch进行判断,例如 3月到 5月是打印春季,6月到 8月打印夏季,依次类推打印秋季和冬季,但月份不是 1月到 12月,打印月份非法。
*/
public class dome1
{
publicstatic void main(String[] args)
{
/*
步骤:
第一步:声明一个变量名为month的int类型变量;
第二步:在switch语句{}中添加条件,如:case 1 , case 2 .....case12等.
第三步:month在 switch中查找与它对应的,month为6,所以查找case6
第四步:查找到case 6之后,输出 case后面的语句 ,一直往后运行输出,直到遇到break.
*/
intmonth = 6 ;
switch(month)
{
case3:
case4:
case 5: System.out.println("春季");break;
case6:
case7:
case 8: System.out.println("夏季");break;
case9:
case10:
case 11: System.out.println("秋季");break;
case12:
case1:
case 2: System.out.println("冬季");break;
default: System.out.println("月份非法");
}
}
}
/*
小结:
1)switch()的括号中只能添加 整数数据(除long,之外的int,short,byte,char).
2)本质上switch()只识别int类型的数据,因为 short , byte , char会自动转化成int类型.
3)当找到与表达式相对应的case时,就会输出结果,如果这句case中没有break就会一直往下输出,直到从下面的语句中遇到break,停止输出.
4)default是上面所有的条件都不满足,最后就执行default语句.
5)当default写在最后时,不用添加break,因为已经是最后了,后面就是},所以加不加break都可以,如果default在case与case之间时,那么就必须有break,因为default是最后才输出的,如果没有break,就会在default输出语句的后面又多输出一行.
*/
第二题:
/*
需求:找出 [1, 500]之间偶数的个数。
*/
public class dome2
{
publicstatic void main(String[] args)
{
/*
步骤:
第一步: 定义一个变量名为number的变量记录位置;
定义一个变量名为count的变量 记录偶数个数;
第二步: 因为循环范围是: 1~500,所以执行 while(number<=500)
第三步: 在循环过程中,如果遇到偶数(number%2==0),那么就记录下来count+1 ;
第四步: 然后接着往下查找偶数number+1 ,一直查找到 500 ;
第五步: 最后输出count,count的数值就为偶数的数量.
*/
int number = 1 ; //定位变量(一直等于查找到的数字的位置)
int count = 0 ; //记录有几个偶数
while(number<=500)
{
if(number%2==0) //验证是否是偶数
{
count++;
}
number++;
}
System.out.println(count);
}
}
/*
小结:
1): 定义两个变量: 1.一个是记录查找到的位置. 2.一个是记录偶数的数量.
2): 通过number和 count的自增(++) ,实现1 ~ 100的逐个查找 和 偶数的记录 .
*/
第三题:
/*
需求:打印 [1, 100] 正方形数 即 x*x = b , b就为正方形数,比如 1,4,9,...。
*/
public class dome3
{
publicstatic void main(String[] args)
{
/*
步骤:
第一步:定义一个 位置定位变量 i ,时刻记录着位置;
第二步:执行循环,把满足条件(条件为:i*i<=100)的i*i输出.
*/
inti = 1 ;
/*
方法一:
while(i<=100)
{
if(i*i<=100)
{
System.out.println(i*i);
}
i++;
}
*/
//方法二:
while(i*i<=100)
{
System.out.println(i*i);
i++;
}
}
}
/*
小结:
1)正方形数为 b = i * i ,那么 b就为正方形数 .
2)求[1,100]之间的正方形数,满足的条件为: i*i <= 100 ;
*/
第四题:
/*
需求:求 [1, 500]之间能整除 7的数的总和。
*/
public class dome4
{
publicstatic void main(String[] args)
{
/*
步骤:
第一步:声明一个位置记录变量,改变位置时记录所查找到的位置.
声明一个记录总和的变量.
第二步:执行循环,当满足i%7==0这个条件就sum+=i,当i=501时,循环结束,sum的值就为最后1~500中所有的能被7整除的数的加和.
*/
inti = 1 ;
intsum = 0 ;
while(i<=500)
{
if(i%7==0)
{
sum+=i;
}
i++;
}
System.out.println(sum);
}
}
/*
小结:
(1)设置两个变量:一个记录不同时刻的位置,一个记录不同时刻的加和.
(2) 能被7整除的意思为:取余为零 i%7==0
(3)sum+=i == sum = sum + i;
*/
第五题:
/*
需求:打印所有的水仙花数,所谓水仙花数是指一个三位数,其各位数字的立方之和等于该数本身。
*/
public class dome5
{
publicstatic void main(String[] args)
{
/*
步骤:
第一步:分别对三位数的百位,十位,个位设置变量:a , b , c ;
第二步:a从 1循环到9 , b和 c从 0循环到 9 , a b c随机组合.
第三步:满足条件(a*a*a+b*b*b+c*c*c==a*100+b*10+c)的a,b,c将a*100+b*10+c换算成三位数.
*/
for(inta=1;a<=9;a++)
{
for(intb=0;b<=9;b++)
{
for(intc=0;c<=9;c++)
{
if(a*a*a+b*b*b+c*c*c==a*100+b*10+c)
{
System.out.println(a*100+b*10+c);
}
}
}
}
}
}
/*
小结:
(1) 分别对三位数的百位,十位,个位设置变量:a , b , c ;
(2) 条件为:a*a*a+b*b*b+c*c*c==a*100+b*10+c;
(3) 百位* 100 +十位 * 10 +个位 =最终的数 .
*/
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 练习题
- 图像处理中的神奇的卷积核
- 聚沙成塔--爬虫系列一(环境,开发工具搭建)
- [开源]Android逆向中So模块自动化修复工具+实战一发
- 机器学习——特征工程之主成分分析PCA
- 《TCP/IP详解卷一:协议》数据链路层(一)
- 练习题
- Java提高篇(47)--内省机制
- py copy file
- django 完成excel文件下载,完整例子
- Recourses
- java简单应用—信号报告
- linux下I2C总线驱动架构分析
- mysql本身对性能影响的因素存储引擎、数据库配置、数据库表结构及sql语句
- 三整数排序