完成李老师3~4题的编程题:
1、输出1到1000中能被7整除或者以7结尾的数
package com.li;
public class Test1 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//3、输出1到1000中能被7整除或者以7结尾的数
int i = 1;
int result1 = 0; //存放能被7整除的数
int result2 = 0; //存放以7结尾的数
System.out.print("1到1000能被7整除的数有:");
do{
result1 = i%7==0?i:0; //如果被7除余0,则能被7整除,用if实现可能会更好
if(result1 != 0){
System.out.print(result1 + ",");
}
}while(++i<=1000); //i递增,并作为判断条件
System.out.print("/n/n1到1000能被7整除的数有:");
i = 1;
while(i<=1000){
result2 = i%10==7?i:0; //如果被10除余7,则尾数为7,用if实现会更直观
i++;
if(result2 != 0)
System.out.print(result2 + ",");
}
/*
* 注意:我觉得三目运算符也不宜多用,因为它会降低程序的可读性,
* 多增加几行代码会使程序的结构变得非常清晰。
* 在这我只是为了练习李老师讲过的内容。
*/
}
}
2、输出1到1000中能被7整除或者以7结尾的数,每行显示5个
package com.li;
public class Test2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//4、输出1到1000中能被7整除或者以7结尾的数,每行显示5个
System.out.println("1到10000中能被7整除的数如下:");
for(int i=1,j=0;i<1000;i++){
if(i%7==0){
j++; //控制显示个数的变量
System.out.print(i + "/t");
if(j%5==0){ //每5个数换一次行
System.out.println();
}
}
if(i==999)
System.out.println("共计:" + j + "个/n");
}
System.out.println("1到1000中以7结尾的数如下:");
for(int i=1,j=0;i<1000;i++){
if(i%10==7){
System.out.print(i + "/t");
if(++j % 5 == 0) //每5个数换一次行,同时j递增
System.out.println();
}
if(i==999)
System.out.println("共计:" + j + "个");
}
}
}
3、输出1到1000中能被7整除或者以7结尾的数,每行显示5个,每5行后面添加一个空白行
package com.li;
public class Test3 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//5、输出1到1000中能被7整除或者以7结尾的数,每行显示5个,每5行后面添加一个空白行
System.out.println("1到10000中能被7整除的数如下:");
for(int i=1,j=0;i<1000;i++){
if(i%7==0){
j++; //控制显示个数的变量
System.out.print(i + "/t");
if(j%5==0){ //每5个数换2次行
System.out.println("/r");
}
}
if(i==999)
System.out.println("共计:" + j + "个/n");
}
System.out.println("1到1000中以7结尾的数如下:");
for(int i=1,j=0;i<1000;i++){
if(i%10==7){
System.out.print(i + "/t");
if(++j % 5 == 0) //每5个数换2次行,同时j递增
System.out.println("/r");
}
if(i==999)
System.out.println("共计:" + j + "个");
}
}
}