Java 循环语句练习题(2)

java

1、循环输出1到100之间所有能被3或能被4整除的数。

package com.hz.loop02;

/**

* 1、循环输出1到100之间所有能被3或能被4整除的数。

* @author ztw

*

*/

public class Practice01 {

public static void main(String[] args) {

for(int i=1;i<=100;i++){

//判断下是否被3或能被4整除,是的话输出

if(i%3==0||i%4==0){

System.out.println(i);

}

}

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

2、循环输出200到300之间所有能被5整除,或能被2整除并且能被3整除的数。

package com.hz.loop02;

/**

* 2、循环输出200到300之间所有能被5整除,或能被2整除并且能被3整除的数。

* @author ztw

*

*/

public class Practice02 {

public static void main(String[] args) {

//输出200到300之间

for(int i=200;i<=300;i++){

//判断是否能被5整除,或能被2整除并且能被3整除的数

if(i%5==0||(i%2==0&&i%3==0)){

System.out.println(i);

}

}

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

3、循环输出1到2000中所有能4整除但不能被100整除的数,或能被400整除的数。

package com.hz.loop02;

/**

* 3、循环输出1到2000中所有能4整除但不能被100整除的数,或能被400整除的数。

* @author ztw

*

*/

public class Practice03 {

public static void main(String[] args) {

//循环输出1到2000

for(int i=1;i<=2000;i++){

//判断所有能4整除但不能被100整除的数,或能被400整除的数

if((i%4==0&&1%100!=0)||i%400==0){

System.out.println(i);

}

}

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

4、计算1+2+3+……+100的结果。

package com.hz.loop02;

/**

* 4、计算1+2+3+……+100的结果。

* @author ztw

*

*/

public class Practice04 {

public static void main(String[] args) {

//定义一个结果变量初始为0

int sum =0;

//i循环+1

for(int i=1;i<=100;i++){

//1-100自加

sum+=i;

}

System.out.println("1+2+3+……+100的结果是:"+sum);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

5、计算1*2*3*……*10的结果。

package com.hz.loop02;

/**

* 5、计算1*2*3*……*10的结果。

* @author ztw

*

*/

public class Practice05 {

public static void main(String[] args) {

////定义一个结果变量初始为1

int sum = 1;

//i循环+1

for(int i=1;i<=10;i++){

//每一次循环+1相乘

sum=sum*i;

}

System.out.println("1*2*3*……*10的结果是:"+sum);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

6、计算1+1/4+1/9+….+1/(20*20)

package com.hz.loop02;

/**

* 6、计算1+1/4+1/9+....+1/(20*20)

* @author ztw

*

*/

public class Practice06 {

public static void main(String[] args) {

//定义两个变量

int number = 1;

double sum = 0;

/*

* 循环自+1,需要注意的是分子必须?.0的模式

*/

while(number<=20){

sum +=1.0/(number*number);

number++;

}

//输出结果

System.out.println(sum);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26

7、输入一个整数放入到变量n中,如果这个整数大于0,那么计算1+2+3+……+(n-1)+n的结果,否则输出“输入的数据有错误

package com.hz.loop02;

import java.util.Scanner;

/**

*

* 7、输入一个整数放入到变量n中,如果这个整数大于0,

* 那么计算1+2+3+……+(n-1)+n的结果,否则输出“输入的数据有错误

* @author ztw

*

*/

public class Practice07 {

public static void main(String[] args) {

int sum = 0;

Scanner sc = new Scanner(System.in);

System.out.println("输入一个整数:");

int n = sc.nextInt();

if(n>0){

for(int i=0;i<=n;i++){

sum+=i;

}

}else{

System.out.println("输入的数据有错误!");

}

System.out.println(sum);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

8、循环输入5个学生的成绩,计算这5个学生的总分,及平均分

package com.hz.loop02;

import java.util.Scanner;

/**

* 8、循环输入5个学生的成绩,计算这5个学生的总分,及平均分

* @author ztw

*

*/

public class Practice08 {

public static void main(String[] args) {

float sum = 0;

float avg = 0;

Scanner sc = new Scanner(System.in);

/*

* 循环输出5个学生的成绩

* 求出总成绩

*/

for(int i=1;i<=5;i++){

System.out.println("输入学生的成绩:");

float sroce = sc.nextFloat();

sum+=sroce;

}

//求平均成绩

avg = sum/5;

System.out.println("总分:"+sum+"平均分:"+avg);

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

9、首先要求用户输入学生的数目放入到变量n中,如果这个数大于0,那么就循环n次接收n个学生的成绩,计算总分及平均分。否则输出“学生的人数不能为负数

package com.hz.loop02;

import java.util.Scanner;

/**

* 9、首先要求用户输入学生的数目放入到变量n中,

* 如果这个数大于0,那么就循环n次接收n个学生的成绩,

* 计算总分及平均分。否则输出“学生的人数不能为负数

* @author ztw

*

*/

public class Practice09 {

public static void main(String[] args) {

int n = 0;

float sum=0;

Scanner sc = new Scanner(System.in);

System.out.println("输入学生的数目:");

n = sc.nextInt();

/*

* 判断变量n是否大于0

* 如果大于0,则进行成绩输入并求和,否则输出”学生的人数不能为负数“

*/

if(n>0){

for(int i=1;i<=n;i++){

System.out.println("输入学生的成绩:");

float sroce = sc.nextFloat();

sum+= sroce;

}

//计算平均成绩

float avg = sum/n;

System.out.println("总分:"+sum+"及平均分:"+avg);

}else{

System.out.println("学生的人数不能为负数");

}

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

10、循环问“老婆,你爱我吗?”,如果回答的是“爱”,那么就结束循环,否则就继续问。用程序描述这个故事

package com.hz.loop02;

import java.util.Scanner;

/**

* 10、循环问“老婆,你爱我吗?”,

* 如果回答的是“爱”,那么就结束循环,

* 否则就继续问。用程序描述这个故事

* @author ztw

*

*/

public class Practice10 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

/*

* 循环问“老婆,你爱我吗?”,

* 如果回答的是“爱”,那么就结束循环,

* 否则就继续问。

*/

for(;;){

System.out.println("老婆,你爱我吗?");

String choice = sc.next();

if(choice.equals("爱")){

System.out.println("循环结束");

//中断,跳出循环

break;

}else{

}

}

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

11、循环输入字符串,将这些输入的字符串都连接起来,至到输入的字符串为“Esc”就结束循环,最后显示这个连接起来的字符串。 
比如:输入abc 输入def 输入Esc 
就输出abcdef

package com.hz.loop02;

import java.util.Scanner;

/**

*

*11、循环输入字符串,将这些输入的字符串都连接起来,至到输入的字符串为“Esc”就结束循环,

*最后显示这个连接起来的字符串。

*比如:输入abc 输入def 输入Esc

*就输出abcdef

* @author ztw

*

*/

public class Practice11 {

public static void main(String[] args) {

String str = "";

Scanner sc = new Scanner(System.in);

//构造一个其中不带字符的字符串缓冲区,初始容量为 16 个字符。

StringBuffer sbuffer = new StringBuffer();

//循环输入输出字符

while(true){

System.out.println("输入字符串:");

str = sc.next();

//判断如果str等于"Esc"

if(str.equals("Esc")){

break;

}

/*

* 按顺序将 str参数中的字符添加到此 StringBuffer 中,

* 并使 StringBuffer 在长度上增加该参数的长度。

*/

sbuffer.append(str);

}

//输出这个连接起来的字符串

System.out.println("连接起来的字符串:"+sbuffer.toString());

}

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40

12、输入年份和月份,打印该该月份的日历,例如:输入2011年9月,就打印2011年9月的日历

package com.hz.loop02;

import java.util.Scanner;

/**

*

*12、输入年份和月份,打印该该月份的日历,例如:输入2011年9月,就打印2011年9月的日历

* @author ztw

*

*/

public class Practice12 {

public static void main(String[] args) {

//定义表示年和月的两个变量

int year,month;

Scanner sc = new Scanner(System.in);

System.out.println("请输入年份:");

year = sc.nextInt();

System.out.println("请输入月份:");

month = sc.nextInt();

//判断输入月份是否合理

if(month<=12&&month>=1){

/*

* 判断输入的年份是否为润年

*/

if(month==1||month==3||month==5||month==7||month==8){

for(int i=1;i<=31;i++){

System.out.print(" "+i+" ");

if(i%7==0){

System.out.println();

}

}

}else if(month==2){

/*

* 判断输入的年份是否为润年

* 闰年二月29天,否则28天

*/

if((year%4==0&&year%100!=0)||year%400==0){

for(int i=1;i<=29;i++){

System.out.print(" "+i+" ");

//一行等于7,就换行

if(i%7==0){

System.out.println();

}

}

}else{

for(int i=1;i<=28;i++){

System.out.print(" "+i+" ");

if(i%7==0){

System.out.println();

}

}

}

}else{

for(int i=1;i<=30;i++){

System.out.print(" "+i+" ");

if(i%7==0){

System.out.println();

}

}

}

}else{

System.out.println("请输入合理的月份!!!");

}

}

}



///


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Scanner;

public class ff {

public static void main(String[] args) {
// 输入年份和月份,打印该该月份的日历,
// 例如:输入2011年9月,就打印2011年9月的日历
// 2011年9月
// 1 2 3 4 5 6 7
// 8
//
//
// 30
//
Scanner s = new Scanner(System.in);
int year, month;
System.out.print("请输入年份:");
year = s.nextInt();
System.out.print("请输入年份:");
month = s.nextInt();

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date tmpDate=new Date();
try {
tmpDate = format.parse(year+"-"+month+"-"+"1");
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Calendar cal = Calendar.getInstance();
cal.setTime(tmpDate);

int space =cal.get(Calendar.DAY_OF_WEEK);

int t;
System.out.println(year + " 年 " + month + " 月");
System.out.println("日\t一\t二\t三\t四\t五\t六");
if (month > 0 && month <= 12) {
// 31天
if (month == 1 || month == 3 || month == 5 || month == 7
|| month == 8 || month == 10 || month == 1) {

for(int j=1;j<space;j++)
{

System.out.print("\t");
}
t=space;
for (int i = 1; i <= 31; i++) {

System.out.print(i + "\t");

if (t % 7 == 0)
System.out.println();
t++;
}
} else if (month == 2) {
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
for (int i = 1; i <= 29; i++) {

}
} else {
for (int i = 1; i <= 28; i++) {

}
}
}
// 30天
else {
for (int i = 1; i <= 30; i++) {

}
}

} else {
System.out.print("月份数字不合法");
}

}

}

 

以上是 Java 循环语句练习题(2) 的全部内容, 来源链接: utcz.com/z/390837.html

回到顶部