我们先理解题目,找出解题思路:
1、循环: 目标区间在1-1000以内,所以循环最小为1开始,最大循环至1000就停止循环。
2、提取条件:含有7的整数:用循环数求7的模 (%)
理清楚这两个思路即可使用代码实现本题。为了使输出结果更清晰,这里输出时我使用了条件格式(每行输出十位整数)
if (a %10==0 && a!=0){
System.out.println("");
}
代码正式开始
一、while循环
public static void main(String []args){
int a=0,b=0,c=0;
while (a<=1000){
if(a%7==0){
b+=a;
if(c %10==0&&c!=0){
System.out.println(" ");
}
c++;
System.out.print(a+"\t");
b++;
}
a++;
}
System.out.println("");
System.out.println("和为:"+b);
System.out.println("共有"+c+"个");
}
放图
.
二、do-while
public static void main(String[]args){
int a=0,b=0,c=0;
do{
if(a%7==0){
b+=a;
if(c %10==0&&c!=0){
System.out.println(" ");
}
c++;
System.out.print(a+"\t");
b++;
}
a++;
}while (a<=1000);
System.out.println("");
System.out.println("和为:"+b);
System.out.println("共有"+c+"个");
}
}
放图
三、for
public static void main(String[]args){
int a=0,sum=0,b=0;
System.out.println("1-1000中含有7或者7倍数的整数为:");
for (int zhi =1;zhi<=1000;zhi++){
if (zhi%7==0){
sum+=zhi;
if (a %10==0 &&a!=0){
System.out.println("");
}
a++;
System.out.print(zhi+"\t");
b++;
}
}
System.out.println("");
System.out.println("和为:"+sum);
System.out.println("共有"+b+"个");
}
//方法一样,我这边跑着总是少一个
放图
教程到此结束,如有不解的地方都可以私信来问下