黑马程序员技术交流社区
标题:
裘-样+循环+break和continue+案例
[打印本页]
作者:
裘-样
时间:
2015-9-13 21:30
标题:
裘-样+循环+break和continue+案例
package com.itheima.javaday4;
/*
今天讲的是for循环和while以及do...while循环。
重点是记住格式,多敲几遍代码就行了。
1.循环的组成
A:循环体。
B:初始化条件。
C:判断条件。
D:控制条件。
2.for
for(初始化条件;判断条件;控制条件)
{
循环体;
}
3.while
初始化条件;
while(判断条件)
{
循环体;
控制条件;
}
4.do...while(了解)
初始化条件;
do{
循环体;
控制条件;
}while(判断条件);
5.break和continue
break:跳出当前循环。
continue:跳出本次循环,进行下一次循环。
6.案例:
|--6.1,求1-100之间偶数的和。 //明确范围,一般用for循环
|--6.2,水仙花。 //明确范围,一般用for循环
|--6.3,珠穆朗玛峰。 //不明确范围,一般用while循环
|--6.4,九九乘法表。 //明确范围,一般用for循环
|--6.5,打印三角形的、梯形等图形。//明确范围,一般用for循环
*/
import java.util.*;
class LoopDemo
{
public static void main(String[] args)
{
System.out.println("请输入一个整数:");
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
System.out.println("用while循环求1-"+num+"的和为:"+sumWhile(num));
System.out.println("用do...while循环和continue求1-"+num+"的和为:"+sumDoWhile(num));
System.out.println("用for循环求1-"+num+"的和为:"+sumFor(num));
System.out.println("***************************");
System.out.println("三位数的水仙花数如下:");
flowerFor();
System.out.println("***************************");
System.out.println("请输入纸的厚度:");
double no = sc.nextDouble();
System.out.println("请输入山峰的高度:");
double hight = sc.nextDouble();
System.out.println("需要折叠的次数为:"+count(no,hight));
System.out.println("***************************");
System.out.println("请输入要输出的行数:");
int n = sc.nextInt();
table99(n);
System.out.println("---------------------------");
triangle(n);
System.out.println("---------------------------");
triangle_2(n);
sc.close();
}
//求1-100之间偶数的和。用while
public static int sumWhile(int num){
int sum = 0;//用一个sum变量来实现和的累加。
int i = 1;//初始化条件
while(i<=num){//判断条件
if(i%2 == 0){
sum += i;//循环体
}
i++;//控制条件
}
return sum;//返回值
}
//求1-100之间偶数的和。用do...while和continue
public static int sumDoWhile(int num){
int sum = 0;//用一个sum变量来实现和的累加。
int i = 0;//初始化条件
do{
i++;//控制条件
if(i%2 == 1){
continue;//循环体,跳出本次循环,进行下一次循环
}
sum += i;//循环体
}while(i<=num);//判断条件
return sum;//返回值
}
//求1-100之间偶数的和。用for循环
public static int sumFor(int num){
int sum = 0;
for(int i = 1;/*初始化条件*/i<=100;/*判断条件*/i++/*控制条件*/){
if(i%2 == 0){
sum += i;//循环体
}
}
return sum;
}
//水仙花。范围明确,用for循环。
public static void flowerFor(){
int g,s,b;
for(int i = 100;i<1000;i++){
g = i%10;
s = (i/10)%10;
b = i/100;
if(g*g*g+s*s*s+b*b*b == i)
{
System.out.print(i+" ");
}
}
System.out.println();
}
//珠穆朗玛峰。范围不明确,用While循环。
public static int count(double num,double hight){
int count = 0;
while(num <= hight){
num *= 2;
count++;
}
return count;
}
//九九乘法表。范围明确,用for循环。
public static void table99(int num){
for(int i = 1;i<=num;i++){
for(int j = 1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
}
//打印*图。范围明确,用for循环。
/*
*
**
***
*/
public static void triangle(int num){
for(int i = 0;i<num;i++){
for(int j = 0;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
//打印*图。范围明确,用for循环。
/*
*+ + +
**+ +
***+
*/
public static void triangle_2(int num){
for(int i = 0;i<num;i++){
for(int j = 0;j<=i;j++){
System.out.print("*");
}
for(int k = num-i;k>0;k--){
System.out.print("+ ");
}
System.out.println();
}
}
}
作者:
asdsy222
时间:
2015-9-13 21:48
好的,已经收藏!
作者:
裘-样
时间:
2015-9-13 23:38
asdsy222 发表于 2015-9-13 21:48
好的,已经收藏!
感谢支持
作者:
tianzuishiwo
时间:
2015-9-13 23:51
裘,好样的,加油啊!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2