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<number){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+"\t");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+"\t");}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;}}。