4.8 综合编程练习

练习题

  • 使用循环完成下列编程题
    1.(**)(用do-while循环) 重复以下行为:输入一个字符,赋给字符变量c,并打印出“你输入的是X”(X是字符变量c的值);直到输入’#’才结束。 (10分) [编程填空]
    import java.util.Scanner;
    提示:输入一个字符c,然后循环的条件就是这个字符是否等于’#',如果不等于那么用“你输入的是X”的格式打印该字符,然后重新要求输入一个字符,以此循环。

    特别注意,当输入#的时候,也会打印“你输入的是#”才退出。
    public static void main(String[]args){    Scanner scanner=new Scanner(System.in);    char c;    do{c=scanner.next().charAt(0);                ;            }    while(        );}
    
    2.用do-while循环或while循环)计算1*2+3*4+5*6+…+99*100并打印结果。 (10分) [编程]
    3.(***)(用do-while循环或while循环)输入任意一个整数,赋给整型变量k,按照从低到高逐个打印数的每个位的数字。 (10分) [编程]
    import java.util.Scanner;
    例如输入563862,就依次打印2 6 8 3 6 5。
    提示:将这个数字对10求余,则可以得到个位,打印出个位后,然后除以10,这个数字的个位就被“去掉了”。然后进行若干次这样的处理,就全部位都打印出来了。一直除以10,最终这个数字会变成0,可以根据此设定循环条件。
    4.(****)输入一个整数,赋给整型变量a,判断是否是素数。如果是打印出true,否则打印出false (10分) [编程]
    import java.util.Scanner;
    提示:输入一个数字a,然后建立一个循环,循环变量i从2开始一直到a。
    每次循环都拿a除以i,如果可以整除,那么a不是素数,立刻用break中断,此时i的值必定比a小,因为用了break,循环没有走完就被中断。
    如果每一个i,a都不能整除,并且直到循环结束(也就是说break从来没执行过),那么此时i的值是a,因为循环没有被中断过一直走到底。所以用i==a这个条件来判断是否素数。