java循环练习题
for循环练习题
1、实现⼀个课程名称和课程代号的转换器:输⼊下表中的课程代号,输出课程的名称。⽤户可以循环进⾏输⼊,如果输⼊n就退出系统。(使⽤do-while循环实现)
import java.util.Scanner;public class ClassName {
public static void main(String []args){Scanner input=new Scanner(System.in) ;String ke=\"\";do{
System.out.println(\"请输⼊课程代码:\");ke =input.nextLine();if(ke.equals(\"1\")){
System.out.println(\"使⽤Java语⾔理解程序逻辑\");}else if(ke.equals(\"2\")){
System.out.println(\"使⽤HTML语⾔开发商业站点\");}else if(ke.equals(\"3\")){
System.out.println(\"使⽤SQL Server管理和查询数据\");}else if (ke.equals(\"4\")){
System.out.println(\"使⽤C#开发数据库应⽤程序\");}else if (ke.equals(\"n\")){
System.out.println(\"~~退出系统~~\");break;}else {
System.out.println(\"输⼊有误\");}}
while (true);}}
2、本⾦10000元存⼊银⾏,年利率是千分之三。每过1年,将本⾦和利息相加作为新的本⾦。计算5年后,获得的本⾦是多少?(使⽤for循环实现)public class Deposit {
public static void main(String[]args){double money=10000;
System.out.println(\"您的存款是:\"+ money);for(int i=1;i<=5;i++ ){
money*=1+0.003;}
System.out.println(\"5年后,您获得的本⾦是\"+money+\"元\");}}
3、求整数1~100的累加值,但要求跳过所有个位为3的数。(使⽤for循环实现)public class Qiuhe {
public static void main (String []args){int i=0,n=0;
for (int a=0;a<10;a++){for(int b=0;b<9;b++){if (b!=3) {i=a*10+b;n+=i;}}}n+=100;
System.out.println(n);}}
4、在屏幕上打印出n⾏的⾦字塔图案,如,若n=5,则图案如下:************************
public class Pyamid {
public static void main(String []args){for(int i=1;i<5;i++){for (int n=1;n<=5-i;n++){System.out.print(\" \");}
for(int m=1;m<=2*i-1;m++){System.out.print(\"*\");}
System.out.println();}}}
5、幸运猜猜猜:游戏随机给出⼀个0~99(包括0和99)的数字,然后让你猜是什么数字。你可以随便猜⼀个数字,游戏会提⽰太⼤还是太⼩,从⽽缩⼩结果范围。经过⼏次猜测与提
⽰后,最终推出答案。在游戏过程中,记录你最终猜对时所需要的次数,游戏结束后公布结果。
猜测次数最多20次。提⽰:
(1)产⽣0~99之间的随机数字:int number = (int)(Math.random()*100)
(2)使⽤for循环结构,其中循环计数器counter同时也记录你猜测的次数(3)计算积分可以使⽤switch结构import java.util.*;public class Caicaikan {
public static void main(String[] args) {int s=0;
int number = (int)(Math.random()*100);Scanner scanner=new Scanner(System.in);
System.out.println(\"请输⼊⼀个0~99(包括0和99)的数字:\");do{
int i=scanner.nextInt(); s++;if(i==number){if(s==1){
System.out.println(\"您太有才了!\");
System.out.println(\"这次游戏,您共⽤了\"+s+\"次,就猜对了!\");break;}
if(s<=6&&s>=2){
System.out.println(\"这么快就猜出来了,您真聪明!\");System.out.println(\"这次游戏,您共⽤了\"+s+\"次,就猜对了!\");break;}if(s>=7){
System.out.println(\"恭喜您,猜对了!\");
System.out.println(\"这次游戏,您共⽤了\"+s+\"次,就猜对了!\");break;}break;} else{if(i>number){
System.out.println(\"对不起,您猜⼤了!\"); }if(i
System.out.println(\"对不起,您猜⼩了!\");}}}
while(s<20);
System.out.println(\"欢迎您下次再玩⼉!\");}}
6、打印9*9乘法表
⽅法⼀:
public class Chengfabiao {
public static void main(String []args){for(int i=1,j=1;i<=9;j++){
System.out.print(j+\"*\"+i+\"=\"+i*j+\"\\");if (j==i){i++;
j=0;
System.out.println();}}⽅法⼆:
for(int x=1;x<=9;x++){for(int y=1;y<=x;y++){
System.out.print(y+\"*\"+x+\"=\"+x*y+\"\\");}
System.out.println();}}}
7、某个公司采⽤公⽤电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:每位数字都加上5,然后⽤和除以10的余数代替该数字,再将第⼀位和第四位交换,第⼆位和第三位交换。import java.util.Scanner;public class EncryptedDelivery {public int input1() {
System.out.print(\"请输⼊⼀个四位数:\");Scanner sc = new Scanner(System.in);int number = sc.nextInt();return number;}
public void change(int number) {// 分解出位数int a, aa, aaa, aaaa;a = number % 10;aa = number / 10 % 10;aaa = number / 100 % 10;aaaa = number / 1000;// 代替数字a = (a + 5) % 10;aa = (aa + 5) % 10;aaa = (aaa + 5) % 10;aaaa = (aaaa + 5) % 10;// 第⼀位和第四位交换
int temp;temp = a;a = aaaa;aaaa = temp;// 第⼆位和第三位交换temp = aa;aa = aaa;aaa = temp;
System.out.println(\"交换后的数为\" + aaaa + aaa + aa + a); }public static void main(String[] args) {
EncryptedDelivery test = new EncryptedDelivery();int number = test.input1();test.change(number);}
private int input() {
// TODO Auto-generated method stubreturn 0;}}
因篇幅问题不能全部显示,请点此查看更多更全内容