循环嵌套详细讲解及练习题
程序员文章站
2022-05-04 11:44:24
7.14课后作业1.正三角形public class HollowRhombusText { public static void main(String[] args) { for (int i=1;i<=5;i++){ for (int j=5;j>=i-1;j--) System.out.print(" "); for(int j=1;j<=i;j++)...
嵌套循环及练习题:
嵌套循环:
①在一个循环语句内部再嵌套一个或多个循环,称为嵌套循环。
②while、do-while与for循环可以任意嵌套多层。
③各循环可互相嵌套,一般嵌套不超过三层。
④外层循环变量变化一次,内层循环变化一轮。
break语句和continue语句:
①break用于强行退出循环,不执行循环中剩余的语句。
②break在if里边不能单独使用,在任何循环语句的主体部分,均可用break控制循环的流程。
③一个break只能结束一个作用域内的代码
④ continue 语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。
注意事项:
- continue用在while,do-while中,continue 语句立刻跳到循环首部,越过了当前循环的其余部分。
- continue用在for循环中,跳到for循环的迭代因子部分。
结构:eg:
a. while(条1){
操作1
while(条2){
操作2
}
}
b. do{
操作1
do{
操作2
}while(条2)
}while(条1);
c. for(条1){
操作1
for(条2){
操作2
}
}
d.while(条1){
操作1
for(条2){
操作2
}
}
1.正三角形
public class HollowRhombusText {
public static void main(String[] args) {
for (int i=1;i<=5;i++){//定义外侧循环,确定行数
for (int j=5;j>=i-1;j--)//递减,并打印空格
System.out.print(" ");
for(int j=1;j<=i;j++)
System.out.print(" *");//打印*递增
System.out.println(" ");//换行
}
2.实心菱形
package homeWork;
public class RhombusText {
public static void main(String[] args) {
//先打印出一个高四行的正三角形
for (int i = 1; i <= 4; i++) {//定义竖行高度
for (int j = 1; j <= 4; j++) {//定义横行长度
if(i + j < 5 ){
System.out.print(" ");//横向打出空格
}else{
System.out.print(" "+"*");//横向打出*
}
}
System.out.println();
//上半部分
}
for(int i = 5; i >=1 ; i--){//与上半部分相似
for(int j = 1; j <= 5; j++){
if(i + j < 6 ){
System.out.print(" ");
}else {
System.out.print( "*" + " " );
}
}
System.out.println();
}
}
}
3.空心菱形
package homeWork;
public class regularTriangle {
public static void main(String[] args) {
for(int i=6;i>=1;i--){ //菱形的上半部分
for(int j=1;j<=11;j++){
if(i==j||j==12-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
for(int i=2;i<=6;i++){ //菱形的下半部分
for(int j=1;j<=11;j++){
if(i==j||j==12-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
4.1~10之间的整数相加,得到累加值大于20的当前数,并最后输出1-10之间的整数和:
package homeWork;
/**
* 1~10之间的整数相加,得到累加值大于20的当前数,并最后输出1-10之间的整数和
*/
public class NumberText {
public static void main(String[] args) {
int sum=0;//定义累加器
for(int i=1;i<=10;i++){
sum+=i;//遍历循环,并累加
if(sum>20){//判断
System.out.println(sum);
}
}
System.out.println("1-10之间的整数和:"+sum);
}
}
5.录入5名学生的java成绩,计算平均值,计算成绩大于80分的比例;如果录入负数,停止录入并提示错误。
package homeWork;
import java.util.Scanner;
/**
* 5.录入5名学生的java成绩,计算平均值,计算成绩大于80分的比例;如果录入负数,停止录入并提示错误
*/
public class coreText {
public static void main(String[] args) {
int agv;//平均数
int JavaCore = 0;//Java成绩
double People=0;//人数
while (true){
int sum=0;//总分数
boolean flage=true;
System.out.println("请输入五位同学的JAVA成绩(整数):");
for(int i=1;i<=5;i++){
JavaCore = new Scanner( System.in ).nextInt();//接受录入的Java成绩。
if(JavaCore>=80){
People++;
}
sum+=JavaCore;//录入总成绩
if(JavaCore<0){
System.out.println("输入的格式不对");
flage=false;
break;
}
}
if(flage){
agv=sum/5;
System.out.println("平均值:"+agv);
System.out.println("计算成绩大于80分的比例"+(People/5*100+"%"));
break;
}else {
System.out.println("录入错误,请重新输入五位同学的成绩:");
}
}
}}
6.九九乘法表
package homeWork;
public class MultiplicationTableText {
public static void main(String[] args) {
for (int i=1;i<=9;i++){//定义行数1....9
for (int j=1;j<=i;j++){//定义列
System.out.print("\t"+j+"*"+i+"="+i*j);
}
System.out.println("\t");
}
}
}
本文地址:https://blog.csdn.net/weixin_44947939/article/details/107351870
上一篇: Linux基础操作笔记
下一篇: Navicat Premium安装