JAVA编程题全集(100题及答案) 下载本文

} }

【程序26】 题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 判断第二个字母。 import java.util.*; public class lianxi26 {

public static void main(String[] args) { getChar tw = new getChar();

System.out.println(\请输入星期的第一个大写字母:\ char ch = tw.getChar(); switch(ch) { case 'M':

System.out.println(\ break; case 'W':

System.out.println(\ break; case 'F':

System.out.println(\ break; case 'T': {

System.out.println(\请输入星期的第二个字母:\ char ch2 = tw.getChar();

if(ch2 == 'U') {System.out.println(\

else if(ch2 == 'H') {System.out.println(\ else {System.out.println(\无此写法!\ } }; break; case 'S': {

System.out.println(\请输入星期的第二个字母:\ char ch2 = tw.getChar();

if(ch2 == 'U') {System.out.println(\

else if(ch2 == 'A') {System.out.println(\ else {System.out.println(\无此写法!\ } };

break;

default:System.out.println(\无此写法!\} } }

class getChar{

public char getChar() {

Scanner s = new Scanner(System.in); String str = s.nextLine(); char ch = str.charAt(0); if(ch<'A' || ch>'Z') {

System.out.println(\输入错误,请重新输入\ ch=getChar(); }

return ch; } }

【程序27】

题目:求100之内的素数

//使用除sqrt(n)的方法求出的素数不包括2和3 public class lianxi27 {

public static void main(String[] args) { boolean b =false;

System.out.print(2 + \ System.out.print(3 + \ for(int i=3; i<100; i+=2) {

for(int j=2; j<=Math.sqrt(i); j++) { if(i % j == 0) {b = false; break; } else{b = true;} }

if(b == true) {System.out.print(i + \ } } }

//该程序使用除1位素数得2位方法,运行效率高通用性差。 public class lianxi27a {

public static void main(String[] args) { int[] a = new int[]{2, 3, 5, 7};

for(int j=0; j<4; j++)System.out.print(a[j] + \ boolean b =false;

for(int i=11; i<100; i+=2) { for(int j=0; j<4; j++) {

if(i % a[j] == 0) {b = false; break; } else{b = true;} }

if(b == true) {System.out.print(i + \ }

} }

【程序28】

题目:对10个数进行排序 import java.util.*; public class lianxi28 {

public static void main(String[] args) { Scanner s = new Scanner(System.in); int[] a = new int[10];

System.out.println(\请输入10个整数:\ for(int i=0; i<10; i++) { a[i] = s.nextInt(); }

for(int i=0; i<10; i++) { for(int j=i+1; j<10; j++) { if(a[i] > a[j]) { int t = a[i]; a[i] = a[j]; a[j] = t; } } }

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

System.out.print(a[i] + \ } } }

【程序29】

题目:求一个3*3矩阵对角线元素之和 import java.util.*; public class lianxi29 {

public static void main(String[] args) { Scanner s = new Scanner(System.in); int[][] a = new int[3][3];

System.out.println(\请输入9个整数:\ for(int i=0; i<3; i++) { for(int j=0; j<3; j++) { a[i][j] = s.nextInt(); } }

System.out.println(\输入的3 * 3 矩阵是:\ for(int i=0; i<3; i++) { for(int j=0; j<3; j++) {

System.out.print(a[i][j] + \

}

System.out.println(); }

int sum = 0;

for(int i=0; i<3; i++) { for(int j=0; j<3; j++) { if(i == j) { sum += a[i][j]; } } }

System.out.println(\对角线之和是:\} }

【程序30】

题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。 //此程序不好,没有使用折半查找插入 import java.util.*; public class lianxi30 {

public static void main(String[] args) {

int[] a = new int[]{1, 2, 6, 14, 25, 36, 37,55}; int[] b = new int[a.length+1];

int t1 =0, t2 = 0; int i =0;

Scanner s= new Scanner(System.in); System.out.print(\请输入一个整数:\ int num = s.nextInt(); if(num >= a[a.length-1]) { b[b.length-1] = num;

for(i=0; i

} else {

for(i=0; i= a[i]) { b[i] = a[i]; } else { b[i] = num; break; } }

for(int j=i+1; j