课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 合作企业 > 企业笔试题 > 10道算数题帮你学习java语句
  • 10道算数题帮你学习java语句

    发布:昆明Java培训      来源:企业笔试题      时间:2015-07-21

  • 【程序1】

    题目:有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数 都是多少

    public class lianxi11 {

    public static void main(String[] args) {

    int count = 0;

    for(int x=1; x<5; x++) {

    for(int y=1; y<5; y++) {

    for(int z=1; z<5; z++) {

    if(x != y && y != z && x != z) {

    count ++;

    System.out.println(x*100 + y*10 + z );

    }

    }

    }

    }

    System.out.println("共有" + count + "个三位数");

    }

    }

    【程序2】

    题目:企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按 10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万 60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润,求应发放奖金总数

    import java.util.*;

    public class lianxi12 {

    public static void main(String[] args) {

    double x = 0,y = 0;

    System.out.print("输入当月利润(万):");

    Scanner s = new Scanner(System.in);

    x = s.nextInt();

    if(x > 0 && x <= 10) {

    y = x * 0.1;

    } else if(x > 10 && x <= 20) {

    y = 10 * 0.1 + (x - 10) * 0.075;

    } else if(x > 20 && x <= 40) {

    y = 10 * 0.1 + 10 * 0.075 + (x - 20) * 0.05;

    } else if(x > 40 && x <= 60) {

    y = 10 * 0.1 + 10 * 0.075 + 20 * 0.05 + (x - 40) * 0.03;

    } else if(x > 60 && x <= 100) {

    y = 20 * 0.175 + 20 * 0.05 + 20 * 0.03 + (x - 60) * 0.015;

    } else if(x > 100) {

    y = 20 * 0.175 + 40 * 0.08 + 40 * 0.015 + (x - 100) * 0.01;

    }

    System.out.println("应该提取的奖金是 " + y + "万");

    }

    }

    【程序3】

    题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少

    public class lianxi13 {

    public static void main(String[] args) {

    for(int x =1; x<100000; x++) {

    if(Math.sqrt(x+100) % 1 == 0) {

    if(Math.sqrt(x+268) % 1 == 0) {

    System.out.println(x + "加100是一个完全平方数,再加168又是一个完全平方数");

    }

    }

    }

    }

    }

    /*按题意循环应该从-100开始(整数包括正整数、负整数、零),这样会多一个满足条件的数-99。

    但是我看到大部分人解这道题目时都把题中的“整数”理解成正整数,我也就随大流了。*/

    【程序4】

    题目:输入某年某月某日,判断这一天是这一年的第几天

    import java.util.*;

    public class lianxi14 {

    public static void main(String[] args) {

    int year, month, day;

    int days = 0;

    int d = 0;

    int e;

    input fymd = new input();

    do {

    e = 0;

    System.out.print("输入年:");

    year =fymd.input();

    System.out.print("输入月:");

    month = fymd.input();

    System.out.print("输入天:");

    day = fymd.input();

    if (year < 0 || month < 0 || month > 12 || day < 0 || day > 31) {

    System.out.println("输入错误,请重新输入!");

    e=1 ;

    }

    }while( e==1);

    for (int i=1; i

    switch (i) {

    case 1:

    case 3:

    case 5:

    case 7:

    case 8:

    case 10:

    case 12:

    days = 31;

    break;

    case 4:

    case 6:

    case 9:

    case 11:

    days = 30;

    break;

    case 2:

    if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) {

    days = 29;

    } else {

    days = 28;

    }

    break;

    }

    d += days;

    }

    System.out.println(year + "-" + month + "-" + day + "是这年的第" + (d+day) + "天。");

    }

    }

    class input{

    public int input() {

    int value = 0;

    Scanner s = new Scanner(System.in);

    value = s.nextInt();

    return value;

    }

    }

    【程序5】

    题目:输入三个整数x,y,z,请把这三个数由小到大输出。

    import java.util.*;

    public class lianxi15 {

    public static void main(String[] args) {

    input fnc = new input();

    int x=0, y=0, z=0;

    System.out.print("输入第一个数字:");

    x = fnc.input();

    System.out.print("输入第二个数字:");

    y = fnc.input();

    System.out.print("输入第三个数字:");

    z = fnc.input();

    if(x > y) {

    int t = x;

    x = y;

    y = t;

    }

    if(x > z) {

    int t = x;

    x = z;

    z = t;

    }

    if(y > z) {

    int t = y;

    y = z;

    z = t;

    }

    System.out.println( "三个数字由小到大排列为: "+x + " " + y + " " + z);

    }

    }

    class input{

    public int input() {

    int value = 0;

    Scanner s = new Scanner(System.in);

    value = s.nextInt();

    return value;

    }

    }

    【程序6】

    题目:输出9*9口诀。

    public class lianxi16 {

    public static void main(String[] args) {

    for(int i=1; i<10; i++) {

    for(int j=1; j<=i; j++) {

    System.out.print(j + "*" + i + "=" + j*i + " " );

    if(j*i<10){System.out.print(" ");}

    }

    System.out.println();

    }

    }

    }

    【程序7】

    题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩 一个桃子了。求第一天共摘了多少。

    public class lianxi17 {

    public static void main(String[] args) {

    int x = 1;

    for(int i=2; i<=10; i++) {

    x = (x+1)*2;

    }

    System.out.println("猴子第一天摘了 " + x + " 个桃子");

    }

    }

    【程序8】

    题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。

    public class lianxi18 {

    static char[] m = { 'a', 'b', 'c' };

    static char[] n = { 'x', 'y', 'z' };

    public static void main(String[] args) {

    for (int i = 0; i < m.length; i++) {

    for (int j = 0; j < n.length; j++) {

    if (m[i] == 'a' && n[j] == 'x') {

    continue;

    } else if (m[i] == 'a' && n[j] == 'y') {

    continue;

    } else if ((m[i] == 'c' && n[j] == 'x')

    || (m[i] == 'c' && n[j] == 'z')) {

    continue;

    } else if ((m[i] == 'b' && n[j] == 'z')

    || (m[i] == 'b' && n[j] == 'y')) {

    continue;

    } else

    System.out.println(m[i] + " vs " + n[j]);

    }

    }

    }

    }

    【程序9】

    题目:打印出如下图案(菱形)

    *

    ***

    *****

    *******

    *****

    ***

    *

    public class lianxi19 {

    public static void main(String[] args) {

    int H = 7, W = 7;//高和宽必须是相等的奇数

    for(int i=0; i<(H+1) / 2; i++) {

    for(int j=0; j

    System.out.print(" ");

    }

    for(int k=1; k<(i+1)*2; k++) {

    System.out.print('*');

    }

    System.out.println();

    }

    for(int i=1; i<=H/2; i++) {

    for(int j=1; j<=i; j++) {

    System.out.print(" ");

    }

    for(int k=1; k<=W-2*i; k++) {

    System.out.print('*');

    }

    System.out.println();

    }

    }

    }

    【程序10】

    题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。

    public class lianxi20 {

    public static void main(String[] args) {

    int x = 2, y = 1, t;

    double sum = 0;

    for(int i=1; i<=20; i++) {

    sum = sum + (double)x / y;

    t = y;

    y = x;

    x = y + t;

    }

    System.out.println("前20项相加之和是: " + sum);

    }

    }

    推荐文章

上一篇:10道经典java编程笔试题

下一篇:六道华为Java笔试经典题

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:11/30

Java--零基础业余班

Java--零基础业余班

开班日期:11/30

Java--周末提升班

Java--周末提升班

开班日期:11/30

Java--零基础周末班

Java--零基础周末班

开班日期:11/30

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56