循环:通过某个条件,重复的执行一段逻辑代码。
附:Java循环基础知识框架思维导图
循环练习题1
- 计算1+2+3+…+100的和
- 计算1+3+5+…+99的和
- 用while/do while 改写1,2题
- 读入一个小于10的整数n,输出它的阶乘n。
- 求100以内所有能被3整除但不能被5整除的数字的和
- “百钱买百鸡” 3文钱买1只公鸡,2文钱买一只母鸡,
1文钱可以买3只小鸡。100文钱买100只鸡,那么各是多少只? - 搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干?
- 编程找出四位整数abcd中满足(ab+cd)(ab+cd)=abcd的数
- 读入一个整数n,输出如下图形,三角
- 输出99乘法表
- 求水仙花数,a^3 + b^3 +c^4=abc;则abc为水仙花数
1.计算1+2+3+...+100的和
//1.计算1+2+3+...+100的和
public class TextAnswer1{
public static void main(String[] args){
int sum =0;
for(int i=1;i<=100;i++){
sum += i;
}
System.out.println("1+2+3+...+100的和为:"+sum);
}
}
2.计算1+3+5+...+99的和
//2.计算1+3+5+...+99的和
public class TextAnswer2{
public static void main(String[] args){
int sum =0;
for(int i=1;i<=99;i+=2){ //或者if判断i%2==1来间隔加
sum += i;
}
System.out.println("1+3+5+...+99的和为:"+sum);
}
}
3.用while/do while 改写1,2题
//3.用while/do while 改写1,2题
public class TextAnswer3{
public static void main(String[] args){
//while 计算1+2+3+4+..+100
int sum1 =0;
int a=1;
while(a <=100){
sum1 += a;
a++;
}
System.out.println("while语句1+2+3+4+..+100的和为:"+sum1);
//while 计算1+3+5+..+99
int sum2 =0;
int b=1;
while(b <=99){
sum2 += b;
b+=2;
}
System.out.println("while语句1+3+5+..+99的和为:"+sum2);
}
}
4.读入一个小于10的整数n,输出它的阶乘n。
//4.读入一个小于10的整数n,输出它的阶乘n。
import java.util.Scanner;
public class TextAnswer4{
public static void main(String[] args){
System.out.println("请输入一个小于10的整数:");
int n =new Scanner(System.in).nextInt();
int sum =1;
if(n<10 && n>0){
for(int i=n;i>0;i--){
sum *= i;
}
System.out.println("它的阶乘值为:"+sum);
}else{
System.out.println("输入的整数不在范围内");
}
}
}
5.求100以内所有能被3整除但不能被5整除的数字的和
//5.求100以内所有能被3整除但不能被5整除的数字的和
public class TextAnswer5{
public static void main(String[] args){
int sum =0;
for(int i=0;i<=100;i++){
if(i%3==0&&i%5!=0){
sum += i;
}
}
System.out.println("100以内所有能被3整除但不能被5整除的数字的和为:"+sum);
}
}
6.“百钱买百鸡” 3文钱买1只公鸡,2文钱买一只母鸡, 1文钱可以买3只小鸡。100文钱买100只鸡,那么各是多少只?
/*6.“百钱买百鸡” 3文钱买1只公鸡,2文钱买一只母鸡,
1文钱可以买3只小鸡。100文钱买100只鸡,那么各是多少只?*/
public class TextAnswer6{
public static void main(String[] args){
int flag=0;
for(int GJ = 0;GJ <= 33;GJ++){
for(int MJ = 0;MJ <= 50;MJ++){
if(GJ*3+MJ*2+(100-GJ-MJ)/3.0==100){
flag+=1;
System.out.println("第"+flag+"种买法\n"+"百钱买百鸡中\n公鸡:"+GJ+"只\n"+"母鸡"+MJ+"只\n"+"小鸡"+(100-GJ-MJ)+"只\n");
}
}
}
}
}
7.搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干?
//7.搬砖问题:36块砖,36人搬,男搬4,女搬3,两个小孩抬1砖,要求一次搬完,问男、女和小孩各若干?
public class TextAnswer7{
public static void main(String[] args){
int flag =0;
for(int man=0;man <=9;man++){
for(int woman=0;woman <=12;woman++){
if(man*4+woman*3+(36-woman-man)/2==36){
flag +=1;
System.out.println("第"+flag+"种搬法\n"+"搬完36块砖36个人一次性搬完需要:\n男:"+man+"人\n"+"女"+woman+"人\n"+"小孩"+(36-woman-man)+"人\n");
}
}
}
}
}
8.编程找出四位整数abcd中满足(ab+cd)(ab+cd)=abcd的数
//8.编程找出四位整数abcd中满足(ab+cd)(ab+cd)=abcd的数
public class TextAnswer8{
public static void main(String[] args){
int a,b,c,d,ab,cd,abcd;
for(int num=1000;num <=9999;num++){
a = num/1000;//千位
b = (num-a*1000)/100;//百位
c =(num-a*1000-b*100)/10;//十位
d=num%10;//个位
ab=(a*10+b);
cd=(c*10+d);
abcd =(ab+cd)*(ab+cd);
if(abcd == num)
System.out.println("四位整数abcd中满足(ab+cd)(ab+cd)=abcd的数有:"+num);
}
}
}
9.读入一个整数n,输出如下图形。
//9.*读入一个整数n,输出如下图形。
/*n=4
*
***
*****
*******
*/
import java.util.Scanner;
public class TextAnswer9{
public static void main(String[] args){
System.out.println("输入一个整数:");
int n =new Scanner(System.in).nextInt();
for(int i=1;i <= n ;i++){
System.out.println("");//n为多少则有多少行,输出行使换行
for(int w=1;w<=n+1-i;w++){//打印空格
System.out.print(" ");
}
for(int j=1;j<=(i*2-1);j++){//打印星星
System.out.print("*");
}
}
}
}
10.输出99乘法表
//10.输出99乘法表
public class TextAnswer10{
public static void main(String[] args){
for(int i=1;i<=9;i++){
System.out.println("");
for(int j=1;j<=i;j++){
System.out.print("\t"+j+"*"+i+"="+i*j);
}
}
}
}
11.求水仙花数,a^3+b^3+c^4=abc;则abc为水仙花数
//11.求水仙花数,a^3+b^3+c^4=abc;则abc为水仙花数
public class TextAnswer11{
public static void main(String[] args){
for(int abc =100;abc <= 999;abc++){
int a=abc/100;
int b=abc/10%10;
int c=abc%10;
if(a*a*a+b*b*b+c*c*c==abc){
System.out.println("三位数中水仙花数有:"+abc);
}
}
}
}