
注意:
各循环可互相嵌套
一般不超过三层
外层循环变量变化一次,内层循环变量要变化一遍
1.循环录入某学生5门课的成绩,并计算平均分,如果某分数录入为负,停止录入并提示录入错误.
System.out.println("输入学生姓名 :");
Scanner input=new Scanner(System.in);
String name=input.next();
int i=1;
int sum=0;
double avg=0;
int status=1;
while (i<6) {
System.out.println("输入第"+i+"门课程的成绩:");
i++;
Scanner input1=new Scanner(System.in);
int noe=input1.nextInt();
sum=sum+noe;
if (noe<0) {
System.out.println("抱歉,录入错误,请重新进行录入");
status=0;
break;
}
}
avg=sum/5;
if (status==1) {
System.out.println(name+"的平均分是:"+avg);
}
2. 1~10之间的整数相加,得到累加值大于20的当前数
int num=0;
int sum=0;
while (num<10) {
sum=sum+num;
num++;
if(sum>20) {
break;
}
}
System.out.println(sum);
3.循环录入java课的学生成绩,统计分数大于等于80分的学生比例
System.out.println("输入班级总人数:");
Scanner input=new Scanner(System.in);
int name=input.nextInt();
int i=1;
int sum=0;
double avg;
int status=1;
while (i<name+1) {
System.out.println("输入第"+i+"门课程的成绩:");
i++;
Scanner input1=new Scanner(System.in);
int noe=input1.nextInt();
if(noe<80) {
continue;
}
sum++;
}
avg=(double)sum/(double)name*100;
System.out.println("80分以上学生数:"+sum);
System.out.println("80分以上学生所占比例为:"+avg+"%");
对比break和continue

程序的调试

4.输出一下图形

for(int i=0;i<=6;i++) {
for(int j=0;j<=5;j++) {
System.out.print("*");
}
System.out.println();
}
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 4-i; j++) {
System.out.print(" ");
}
for (int j = 0; j < 6; j++) {
System.out.print("*");
}
System.out.println();//换行
}
for(int i=1;i<=5;i++) {
for(int j=5;j>=i;j--) {
System.out.print(" ");
}for(int v=1;v<i+i;v++) {
System.out.print("*");
}
System.out.println();
}
5.多从循环做出九九乘法表
int num=9;
for(int i=1;i<=num;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+j*i+" ");
}
System.out.println();
}