Java编程题集合二Word下载.docx

上传人:b****8 文档编号:22830447 上传时间:2023-02-05 格式:DOCX 页数:25 大小:22.08KB
下载 相关 举报
Java编程题集合二Word下载.docx_第1页
第1页 / 共25页
Java编程题集合二Word下载.docx_第2页
第2页 / 共25页
Java编程题集合二Word下载.docx_第3页
第3页 / 共25页
Java编程题集合二Word下载.docx_第4页
第4页 / 共25页
Java编程题集合二Word下载.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

Java编程题集合二Word下载.docx

《Java编程题集合二Word下载.docx》由会员分享,可在线阅读,更多相关《Java编程题集合二Word下载.docx(25页珍藏版)》请在冰豆网上搜索。

Java编程题集合二Word下载.docx

classrec{

publiclongrec(intn){

longvalue=0;

if(n==1){

value=1;

}else 

{

value=n*rec(n-1);

returnvalue;

}

【程序23】 

有5个人坐在一起,问第五个人多少岁?

他说比第4个人大2岁。

问第4个人岁数,他说比第3个人大2岁。

问第三个人,又说比第2人大两岁。

问第2个人,说比第一个人大两岁。

最后问第一个人,他说是10岁。

请问第五个人多大?

publicclasslianxi23{

intage=10;

for(inti=2;

=5;

age=age+2;

System.out.println(age);

【程序24】 

给一个不多于5位的正整数,要求:

一、求它是几位数,二、逆序打印出各位数字。

//使用了长整型最多输入18位

importjava.util.*;

publicclasslianxi24{

Scanners=newScanner(System.in);

System.out.print("

请输入一个正整数:

"

);

longa=s.nextLong();

Stringss=Long.toString(a);

char[]ch=ss.toCharArray();

intj=ch.length;

System.out.println(a+"

是一个"

+j+"

位数。

按逆序输出是:

for(inti=j-1;

i>

=0;

i--){

System.out.print(ch[i]);

【程序25】 

一个5位数,判断它是不是回文数。

即12321是回文数,个位与万位相同,十位与千位相同。

publicclasslianxi25{

inta;

do{

请输入一个5位正整数:

a=s.nextInt();

}while(a<

10000||a>

99999);

Stringss=String.valueOf(a);

if(ch[0]==ch[4]&

&

ch[1]==ch[3]){

System.out.println("

这是一个回文数"

else{System.out.println("

这不是一个回文数"

//这个更好,不限位数

publicclasslianxi25a{

booleanis=true;

for(inti=0;

j/2;

if(ch[i]!

=ch[j-i-1]){is=false;

if(is==true){System.out.println("

【程序26】 

请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续 

判断第二个字母。

publicclasslianxi26{

getChartw=newgetChar();

请输入星期的第一个大写字母:

charch=tw.getChar();

switch(ch){

case'

M'

:

Monday"

break;

W'

Wednesday"

F'

Friday"

T'

请输入星期的第二个字母:

charch2=tw.getChar();

if(ch2=='

U'

){System.out.println("

Tuesday"

elseif(ch2=='

H'

Thursday"

无此写法!

};

S'

Sunday"

A'

Saturday"

default:

System.out.println("

classgetChar{

publicchargetChar(){

Stringstr=s.nextLine();

charch=str.charAt(0);

if(ch<

'

||ch>

Z'

){

输入错误,请重新输入"

ch=getChar();

returnch;

【程序27】 

求100之内的素数 

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

publicclasslianxi27{

booleanb=false;

System.out.print(2+"

"

System.out.print(3+"

for(inti=3;

100;

i+=2){

for(intj=2;

j<

=Math.sqrt(i);

j++){

if(i%j==0){b=false;

}else{b=true;

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

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

publicclasslianxi27a{

int[]a=newint[]{2,3,5,7};

for(intj=0;

4;

j++)System.out.print(a[j]+"

for(inti=11;

if(i%a[j]==0){b=false;

【程序28】 

对10个数进行排序 

publicclasslianxi28{

Scanners=newScanner(System.in);

int[]a=newint[10];

请输入10个整数:

10;

a[i]=s.nextInt();

for(intj=i+1;

if(a[i]>

a[j]){

intt=a[i];

a[i]=a[j];

a[j]=t;

System.out.print(a[i]+"

【程序29】 

求一个3*3矩阵对角线元素之和 

publicclasslianxi29{

int[][]a=newint[3][3];

请输入9个整数:

3;

a[i][j]=s.nextInt();

输入的3*3矩阵是:

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

System.out.println();

intsum=0;

if(i==j){

sum+=a[i][j];

对角线之和是:

+sum);

【程序30】 

有一个已经排好序的数组。

现输入一个数,要求按原来的规律将它插入数组中。

//此程序不好,没有使用折半查找插入

publicclasslianxi30{

int[]a=newint[]{1,2,6,14,25,36,37,55};

int[]b=newint[a.length+1];

intt1=0,t2=0;

inti=0;

Scanners=newScanner(System.in);

请输入一个整数:

intnum=s.nextInt();

if(num>

=a[a.length-1]){

b[b.length-1]=num;

for(i=0;

a.length;

b[i]=a[i];

}else{

=a[i]){

}else{ 

b[i]=num;

b.length;

b[j]=a[j-1];

for(i=0;

i<

b.length;

System.out.print(b[i]+"

【程序31】

将一个数组逆序输出。

publicclasslianxi31{

inta[]=newint[20];

请输入多个正整数(输入-1表示结束):

inti=0,j;

 

a[i]=s.nextInt();

i++;

}while(a[i-1]!

=-1);

你输入的数组为:

for(j=0;

i-1;

System.out.print(a[j]+"

\n数组逆序输出为:

for(j=i-2;

j>

j=j-1){

【程序32】 

取一个整数a从右端开始的4~7位。

publicclasslianxi32{

请输入一个7位以上的正整数:

if(j<

7){System.out.println("

输入错误!

else{

截取从右端开始的4~7位是:

+ch[j-7]+ch[j-6]+ch[j-5]+ch[j-4]);

}

【程序33】 

打印出杨辉三角形(要求打印出10行如下图) 

10 

…………

publicclasslianxi33{

int[][]a=newint[10][10];

a[i][i]=1;

a[i][0]=1;

for(intj=1;

i;

a[i][j]=a[i-1][j-1]+a[i-1][j];

for(intk=0;

k<

2*(10-i)-1;

k++){

=i;

【程序34】 

输入3个数a,b,c,按大小顺序输出。

importjava.util.Scanner;

publicclasslianxi34{

请输入3个整数:

inta=s.nextInt();

intb=s.nextInt();

intc=s.nextInt();

if(a<

b){

intt=a;

a=b;

b=t;

c){

a=c;

c=t;

if(b<

intt=b;

b=c;

从大到小的顺序输出:

+b+"

+c);

【程序35】 

输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

publicclasslianxi35{

intN=8;

int[]a=newint[N];

intidx1=0,idx2=0;

请输入8个整数:

N;

intmax=a[0],min=a[0];

max){

max=a[i];

idx1=i;

if(a[i]<

min){

min=a[i];

idx2=i;

if(idx1!

=0){

inttemp=a[0];

a[0]=a[idx1];

a[idx1]=temp;

if(idx2!

=N-1){

inttemp=a[N-1];

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 公务员考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1