A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

四周年论坛活动圆满结束了。至于很多小伙伴说还没有得到技术分。
在这里我要说一下。我每天送出的技术分是有上限的,所以小伙伴们不要着急。
这一两天就能全都给你们了。很多刚开始学习基础的同学现在对这些题掌握的还不是很好。
所以我把答案发上来供大家参考参考。

01、  判断101-200之间有多少个素数,并输出所有素数。?
02、“将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
03、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
04、 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
05、有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
06、给一个不多于5位的正整数。要求:一、它是几位数,二、逆序打印出各位数字。
07、输入三个整数x、y、z,把这三个数由小到大输出。
08、利用递归方法求5!
09、一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
10、 将一个数组逆序输出,(不能使用API的方法)。

活动时间:
即日起——2015年8月1日,截止时间是8月3日。



四周年的题目答案
fourYearTest.rar (13.83 KB, 下载次数: 239)

281 个回复

倒序浏览
xiaodaodan 来自手机 中级黑马 2015-8-1 01:15:41
沙发
我刚关电脑好不。。。
回复 使用道具 举报
第8题,第9题没做

题.zip

5.66 KB, 下载次数: 137

回复 使用道具 举报
360638403 来自手机 中级黑马 2015-8-1 09:13:47
板凳

楼主,记得查阅

本帖最后由 360638403 于 2015-8-1 15:10 编辑

还差5个技术分就可以面试了,,谢谢楼主了,

Test.zip

16.19 KB, 阅读权限: 30, 下载次数: 8

测试答案

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
1-10题答案

黑马论坛答题.rar

5.02 KB, 下载次数: 136

1-10题

评分

参与人数 2技术分 +10 黑马币 +7 收起 理由
qiyongjian + 7 赞一个!
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
祝黑马越办越好,蒸蒸日上!

Test.zip

4.31 KB, 下载次数: 130

点评

哥们,我也是醉了。一共10道题。你交了8道题。还有三个是class文件0.0  发表于 2015-8-3 09:08

评分

参与人数 1技术分 +5 收起 理由
耀阳圣尊 + 5

查看全部评分

回复 使用道具 举报
01、判断101-200之间有多少个素数,并输出所有素数。?

public class Prog01{
        public static void main(String[] args){
                int m = 1;
                int n = 1000;
                int count = 0;
                //统计素数个数
                for(int i=m;i<n;i++){
                        if(isPrime(i)){
                                count++;
                                System.out.print(i+" ");
                                if(count%10==0){
                                        System.out.println();
                                }
                        }
                }
                System.out.println();
                System.out.println("在"+m+"和"+n+"之间共有"+count+"个素数");
        }
        //判断素数
        private static boolean isPrime(int n){
                boolean flag = true;
                if(n==1)
                  flag = false;
                else{
                        for(int i=2;i<=Math.sqrt(n);i++){
                        if((n%i)==0 || n==1){
                                flag = false;
                                break;
                        }
                         else
                           flag = true;
                  }
                }
                return flag;
        }
}
02、将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

public class Prog02{
        public static void main(String[] args){
                int n = 13;
                decompose(n);
        }
        private static void decompose(int n){
                System.out.print(n+"=");
                for(int i=2;i<n+1;i++){
                        while(n%i==0 && n!=i){
                                n/=i;
                                System.out.print(i+"*");
                        }
                        if(n==i){
                                System.out.println(i);
                                break;
                        }
                }
        }
}

03、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

import java.util.Scanner;
public class Prog03{
        public static void main(String[] args){
                System.out.print("请输入一串字符:");
                Scanner scan = new Scanner(System.in);
                String str = scan.nextLine();//将一行字符转化为字符串
                scan.close();
                count(str);
        }
//统计输入的字符数
        private static void count(String str){
                String E1 = "[\u4e00-\u9fa5]";//汉字
                String E2 = "[a-zA-Z]";
                String E3 = "[0-9]";
                String E4 = "\\s";//空格
                int countChinese = 0;
                int countLetter = 0;
                int countNumber = 0;
                int countSpace = 0;
                int countOther = 0;
                char[] array_Char = str.toCharArray();//将字符串转化为字符数组
                String[] array_String = new String[array_Char.length];//汉字只能作为字符串处理
                for(int i=0;i<array_Char.length;i++)
                  array_String[i] = String.valueOf(array_Char[i]);
                //遍历字符串数组中的元素
                for(String s:array_String){
                        if(s.matches(E1))
                          countChinese++;
                        else if(s.matches(E2))
                          countLetter++;
                        else if(s.matches(E3))
                          countNumber++;
                        else if(s.matches(E4))
                          countSpace++;
                        else
                          countOther++;
                }
                System.out.println("输入的汉字个数:"+countChinese);
                System.out.println("输入的字母个数:"+countLetter);
                System.out.println("输入的数字个数:"+countNumber);
                System.out.println("输入的空格个数:"+countSpace);
                System.out.println("输入的其它字符个数:"+countSpace);
        }
}
04、求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

import java.util.Scanner;

public class Prog04{
        public static void main(String[] args){
                System.out.print("求s=a+aa+aaa+aaaa+...的值,请输入a的值:");
                Scanner scan = new Scanner(System.in).useDelimiter("\\s*");//以空格作为分隔符
                int a = scan.nextInt();
                int n = scan.nextInt();
                scan.close();//关闭扫描器
                System.out.println(expressed(2,5)+add(2,5));
        }
        //求和表达式
        private static String expressed(int a,int n){
                StringBuffer sb = new StringBuffer();
                StringBuffer subSB = new StringBuffer();
                for(int i=1;i<n+1;i++){
                  subSB = subSB.append(a);
                  sb = sb.append(subSB);
                  if(i<n)
                    sb = sb.append("+");
                }
                sb.append("=");
                return sb.toString();
        }
        //求和
        private static long add(int a,int n){
                long sum = 0;
                long subSUM = 0;
                for(int i=1;i<n+1;i++){
                        subSUM = subSUM*10+a;
                        sum = sum+subSUM;
                }
                return sum;
        }
}

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

public class Prog05{
        public static void main(String[] args){
                int count = 0;
                int n = 0;
                for(int i=1;i<5;i++){
                        for(int j=1;j<5;j++){
                                if(j==i)
                                  continue;
                                for(int k=1;k<5;k++){
                                        if(k!=i && k!=j){
                                                n = i*100+j*10+k;
                                          System.out.print(n+" ");
                                          if((++count)%5==0)
                                          System.out.println();
                                        }
                                }
                        }
                }
                System.out.println();
                System.out.println("符合条件的数共:"+count+"个");
        }
}

06、给一个不多于5位的正整数。要求:一、它是几位数,二、逆序打印出各位数字。

public class Prog06{
        public static void main(String[] args){
                int n = Integer.parseInt(args[0]);
                int i = 0;
                int[] a = new int[5];
                do{
                        a[i] = n%10;
                  n /= 10;
                  ++i;
                }while(n!=0);
                System.out.print("这是一个"+i+"位数,从个位起,各位数字依次为:");
                for(int j=0;j<i;j++)
                  System.out.print(a[j]+" ");
        }
}

07、输入三个整数x、y、z,把这三个数由小到大输出。

import java.util.Scanner;
public class Prog07{
        public static void main(String[] args){
                System.out.print("请输入3个整数:");
                Scanner sc = new Scanner(System.in);
                int x = sc.nextInt();
                int y = sc.nextInt();
                int z = sc.nextInt();
                scan.close();
                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);
        }
}
08、利用递归方法求5!

public class Prog08{
        public static void main(String[] args){
                System.out.println(fact(10));
        }
        //递归求阶乘
        private static long fact(int n){
                if(n==1)
                  return 1;
                else
                  return fact(n-1)*n;
        }
}
09、一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。

import java.io.*;
public class Prog09{
        public static void main(String[] args){
                int n = 0;
                System.out.print("请输入一个5位数:");
                BufferedReader bufin = new BufferedReader(new InputStreamReader(System.in));
                try{
                  n = Integer.parseInt(bufin.readLine());
                }catch(IOException e){
                        e.printStackTrace();
                }finally{
                        try{
                          bufin.close();
                        }catch(IOException e){
                                e.printStackTrace();
                        }
                }
                palin(n);
        }
        private static void palin(int n){
                int m = n;
                int[] a = new int[5];
                if(n<10000 || n>99999){
                        System.out.println("输入的不是5位数!");
                        return;
                }else{
                  for(int i=0;i<5;i++){
                          a[i] = n%10;
                          n /= 10;
                  }
                  if(a[0]==a[4] && a[1]==a[3])
                    System.out.println(m+"是一个回文数");
                  else
                    System.out.println(m+"不是回文数");
            }
   }
}

10、将一个数组逆序输出。

public class Prog10{
        public static void main(String[] args){
                int[] A = new int[]{1,2,3,4,5,6,7,8,9,};
                print(A);
                System.out.println();
                int[] B = reverse(A);
                print(B);
        }
        private static int[] reverse(int[] A){
                for(int i=0;i<A.length/2;i++){
                        int temp = A[A.length-i-1];
                        A[A.length-i-1] = A[i];
                        A[i] = temp;
                }
                return A;
        }
        private static void print(int[] A){
                for(int i=0;i<A.length;i++)
                  System.out.print(A[i]+" ");
        }
}
回复 使用道具 举报
Wo丶好期待 发表于 2015-8-1 10:26
01、判断101-200之间有多少个素数,并输出所有素数。?

public class Prog01{

玩了,压缩了,再交一份!!

【黑马论坛四周年庆典】问题答案.rar

11.21 KB, 下载次数: 129

点评

哥们,你提交的时候为什么不直接提交项目,非要把代码粘出来?  发表于 2015-8-3 09:10

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报

新手试试手而已

itheima.rar

13.95 KB, 下载次数: 160

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
青春是你的烟火 来自手机 中级黑马 2015-8-1 10:41:28
10#
你怎么交的?
回复 使用道具 举报
题目答案见附件

答案.rar

4.6 KB, 下载次数: 139

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
谢谢楼主分享
回复 使用道具 举报
已完成了,送分了。。

shero.zip

13.36 KB, 下载次数: 145

问题答案

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
{:2_42:}{:2_42:}

itheima.zip

16.73 KB, 下载次数: 122

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
本帖最后由 熊肃言 于 2015-8-1 15:00 编辑

光这几题就做了差不多三四个小时,仍需努力啊!不过好歹做完了,管理老板记得给技术分哟~

itheimaBBs.rar

15.41 KB, 下载次数: 147

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
应该没问题的吧?

艾维拉小叶.rar

1.63 KB, 下载次数: 142

答题

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
会加油的,我在学基础,努力
回复 使用道具 举报
圣尊就是给力

HeiMaLunTan.zip

16.9 KB, 阅读权限: 100, 下载次数: 3

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
做了6道

六道问题答案.rar

3.02 KB, 下载次数: 122

评分

参与人数 1技术分 +6 收起 理由
耀阳圣尊 + 6

查看全部评分

回复 使用道具 举报
答案已经做出来了

答案.rar

3.32 KB, 下载次数: 136

评分

参与人数 1技术分 +10 收起 理由
耀阳圣尊 + 10

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马