- 使用while循环录入班级人数和学员成绩,计算班级学员的平均成绩。
代码如下:
import java.util.Scanner;
class WhileDemo1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入班级号:");
String classNumber = input.next();
System.out.print("请输入改班级的学员总数:");
int num = input.nextInt();
int num1=num;
int j=0,sum=0;
while( num>0) {
j++;
System.out.print("请输入学号" + j + "的成绩:");
int score = input.nextInt();
sum = sum + score;
num--;
}
System.out.println("该班级学员的平均成绩为" + (sum/num1));
}
}
- 第2题
2006年培养学员8万人,每年增长25%,请问按此增长速度,到哪一年培训学员人数将达到20万人?
class WhileDemo2 {
public static void main(String[] args) {
int num = 80000;
double rise = 0.25;
int sum = (int)(num*rise+num);
int i=1;
while( sum != 200000) {
i++;
sum=(int)(num*rise+sum);
}
System.out.println("到第 " + i + " 年培训人员将达到20万人");
}
}
- 使用while循环实现以下功能:
a)将1~20的数字进行累加,累加过程中当某数能被5或被3整除时不能累加,
当累加值大于100时结束累加。
b)输出所有能被累加的数字,如输出:1,2,4,7,8,11,13,14,16,17,19,
c)最后输出累加的结果,如输出:sum=112
提示:灵活使用continue,break
class WhileDemo3 {
public static void main(String[] args) {
int sum = 0;
int i = 0;
System.out.print("能被累加的数字:");
while( i<=20 ) {
i++;
if(i%5==0 || i%3==0)
continue;
System.out.print(i + ",");
sum = sum+i;
if(sum > 100)
break;
}
System.out.println("\n最后的结果sum = " + sum);
}
}
- 使用do-while实现:连续录入学生姓名,输入“q”则系统退出。
import java.util.Scanner;
class DoWhile4 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String name;
do {
System.out.print("请输入学生姓名:");
name = input.next();
}
while (!"q".equals(name));
System.out.println("程序结束");
}
}
- 使用do-while实现:输出摄氏温度与华氏温度的对照表,要求它从摄氏温度0度到250度,每隔20度为一项,对照表中的条目不超过10条。
转换关系: 华氏温度 = 摄氏温度 * 9 / 5.0 + 32
? = 0* 9 / 5.0 + 32
? = 20* 9 / 5.0 + 32
提示:
1、循环操作:计算摄氏温度,并输出对照条目
2、循环条件:条目<=10 && 摄氏温度 <= 250
class DoWhile5 {
public static void main(String[] args) {
int she = 0;
int i = 1;
double hua;
do
{
i++;
hua = she*9/5.0+32;
System.out.println("摄氏温度为:" + she + " 此时华氏温度为:" + hua);
she += 20;
}
while (i<=10 && she<=250);
}
}
- 使用while实现打印99乘法表。
class WhileDoWhile6 {
public static void main(String[] args) {
int i=1;
int j=1;
while( i!= 10 && j!=10) {
if(i <= j) {
System.out.print( i + "*" + j + "=" + i*j + "\t");
}
i++;
if(j < i) {
System.out.println();
i = 1;
j++;
}
}
}
}
- 使用while循环编写一个控制台程序从键盘输入一个4位数的整数并对该整数实现反转输出;如输入:1234,输出4321
import java.util.Scanner;
class While7 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个4位整数:");
int num = input.nextInt();
int val;
System.out.print("反转后的整数是:");
while( num != 0) {
val = num % 10;
System.out.print(val);
num = num / 10;
}
System.out.println();
}
}