java试题操作及答案培训资料Word文档下载推荐.docx
- 文档编号:5599342
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:40
- 大小:23.20KB
java试题操作及答案培训资料Word文档下载推荐.docx
《java试题操作及答案培训资料Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《java试题操作及答案培训资料Word文档下载推荐.docx(40页珍藏版)》请在冰点文库上搜索。
break;
if(flag==true){
System.out.print(i+"
"
continue;
/*【程序3】
打印出所有的"
水仙花数"
,所谓"
是指一个三位数,其各位数字立方和等于该数本身。
例如:
*153是一个"
,因为153=1的三次方+5的三次方+3的三次方。
利用for循环控制100-999个数,每个数分解出个位,十位,百位。
publicclassTest3{
for(inti=100;
999;
intg=(i%100)%10;
ints=(i%100)/10;
intb=(i/100);
if(g*g*g+s*s*s+b*b*b==i){
System.out.println(i);
/*【程序4】
将一个正整数分解质因数。
输入90,打印出90=2*3*3*5。
*程序分析:
对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
*
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
*
(2)如果n<
>
k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
*(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
importjava.util.*;
publicstaticvoidmain(String[]args){
intk=2;
请输入一个数:
Scannerinput=newScanner(System.in);
intnum=input.nextInt();
if(num<
=1){
输入的数无效"
return;
if(num==k){
System.out.println(num+"
="
+"
1*"
+num);
}else{
System.out.print(num+"
=1"
while(num>
=k){
if(num%k==0){//判断取余的数是否为0,如果是的话刚打印出k的值;
System.out.print("
*"
+k);
num=num/k;
k=k+1;
//如果说num与K取余不为0话,就K执行+1;
/*【程序5】
利用条件运算符的嵌套来完成此题:
学习成绩>
=90分的同学用A表示,60-89分之间的用B表示,60分以下
*的用C表示。
(a>
b)?
a:
b这是条件运算符的基本例子。
publicclassTest5{
pleaseinputascore:
java.util.Scannerinput=newjava.util.Scanner(System.in);
intscore=input.nextInt();
intx=score/10;
switch(x){
case9:
A"
case8:
B"
case7:
C"
case6:
D"
default:
E"
/*【程序6】
输入两个正整数m和n,求其最大公约数和最小公倍数。
利用辗除法。
publicclassTest6{
//求最大公约数
publicstaticintgy(intm,intn){
while(m%n!
=0){
inttemp=m%n;
m=n;
n=temp;
returnn;
//求最小公倍数
publicstaticintgb(intm,intn){
returnm*n/gy(m,n);
Scannerin=newScanner(System.in);
请输入第一个整数:
intm=in.nextInt();
请输入第二个整数:
intn=in.nextInt();
System.out.println(m+"
"
+n+"
的最大公约数是:
+gy(m,n));
最小公倍数是:
+gb(m,n));
/*【程序7】
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
利用while语句,条件为输入的字符不为'
\n'
.
publicclassTest7{
inti=0;
intj=0;
intk=0;
intm=0;
请输入一行字符:
Stringstr=in.next();
for(int
n=0;
n<
str.length();
n++){//str.length()来决定位数!
elseif(zf=='
'
)//判断空格时有错误
{
j++;
elseif(zf>
='
0'
&
zf<
9'
)
k++;
else
m++;
英文字母的个数是:
+i);
空格的个数是:
+j);
数字的个数是:
其他字符的个数是:
+m);
/*【程序8】
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如
2+22+222+2222+22222(此时共有5个数相加),
*几个数相加有键盘控制。
关键是计算出每一项的值。
intsum=0;
intb=0;
请输入需要相加的数:
请输入几位数相加:
inta=input.nextInt();
=a;
sum=sum*10+num;
b+=sum;
if(i==a){
System.out.print(sum+"
System.out.print(b);
/*【程序9】
一个数如果恰好等于它的因子之和,这个数就称为"
完数"
。
例如6=1+2+3.编程找出1000以内的所有完
*数。
publicclassTest9
publicstaticvoidmain(String[]args)
intsum;
for(inti=2;
1000;
i++)
sum=0;
for(intj=1;
=i/2;
j++)
if(i%j==0)
sum+=j;
if(sum==i)
完数有:
/*【程序10】
一球从100米高度自由落下,每次落地后反跳回原高度的一半;
再落下,求它在第10次落地时,共经过多
*少米?
第10次反弹多高?
publicclassTest10
publicstaticfinaldoublestartLong=100;
//求小球第n次落地时经过的距离
publicstaticdoubleballLeng(intn)
if(n<
=0)
小球没有落地!
doubleballLong=startLong;
doubletemp=startLong;
n;
ballLong=(ballLong/2);
temp+=ballLong*2;
returntemp;
//求小球第n次反弹了多高
publicstaticdoublereboundLong(intn)
if(n==1)
returnstartLong/2;
return(ballLeng(n)-ballLeng(n-1))/4;
//为什么除4}
//求当小球停止跳动时,小球跳动了多少次数
publicstaticvoidzeroRebound()
intm=2;
while(m>
=2)
if((ballLeng(m)-ballLeng(m-1))/4==0)
System.out.println(m);
System.out.println(ballLeng(10));
System.out.println(reboundLong(10));
zeroRebound();
/*【程序11】
有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?
都是多少?
可填在百位、十位、个位的数字都是1、2、3、4。
组成所有的排列后再去掉不满足条件的排列。
publicclassTest11{
intcount=0;
5;
for(intk=1;
k<
k++)
if(i!
=j&
i!
=k&
j!
=k)
count++;
System.out.println(i*100+j*10+k);
由1,2,3,4共可以组成"
+count+"
个互不相同且无重复数字的三位数!
/*【程序12】
题目:
企业发放的奖金根据利润提成。
利润(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%提成,从键盘输入当月利润I,求应发放奖金总数?
1.程序分析:
请利用数轴来分界,定位。
注意定义时需把奖金定义成长整型。
publicclassTest12
doublesum;
//奖金
Scannersc=newScanner(System.in);
请输入当月的利润:
doublelirun=sc.nextDouble();
if(lirun<
=100000)
sum=lirun*0.1;
elseif(lirun<
200000)
sum=lirun*0.075;
400000)
sum=lirun*0.05;
600000)
sum=lirun*0.03;
1000000)
sum=lirun*0.015;
sum=lirun*0.01;
应发的奖金是"
+sum);
/*【程序13】
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
publicclassTest13
for(longi=0;
100000;
if(Math.sqrt((long)(i+100))%1==0&
Math.sqrt((long)(i+268))%1==0)
System.out.println(i+"
加上100后是一个完全平方数,再加上168又是一个完全平方数"
/*【程序14】
输入某年某月某日,判断这一天是这一年的第几天?
publicclassTest14
Scannerin=newScanner(System.in);
请输入年:
intyear=in.nextInt();
请输入月:
intmonth=in.nextInt();
请输入日:
intday=in.nextInt();
switch(month)
case12:
count+=30;
case11:
count+=31;
case10:
case5:
case4:
case3:
count+=28;
case2:
case1:
count+=0;
count+=day;
if(year%4==0&
year%100!
=0&
month>
=3)
count+=1;
System.out.print(year+"
-"
+month+"
+day+"
是一年中的第"
天"
/*【程序15】
输入三个整数x,y,z,请把这三个数由小到大输出。
publicclassTest15
\n请输入第一个数:
intx=in.nextInt();
\n请输入第二个数:
inty=in.nextInt();
\n请输入第三个数:
intz=in.nextInt();
if(x>
=y&
x>
=z)
System.out.print(x);
if(y>
System.out.print(y);
System.out.print(z);
elseif(z>
=y)
elseif(y>
=x&
y>
=x){
z>
=x)
/*【程序16】
输出9*9口诀。
分行与列考虑,共9行9列,i控制行,j控制列。
publicclassTest16
10;
=i;
System.out.print(j+"
+i*j+"
\t"
System.out.println();
/*【程序17】
猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩
*下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时见只剩下一个桃子了。
求第一天共摘了多少。
采取逆向思维的方法,从后往前推断。
publicclassTest17
intnum=1;
num=(num+1)*2;
第一天共摘了"
+num+"
个苹果"
/*题目:
两个乒乓球队进行比赛,各出三人。
甲队为a,b,c三人,乙队为x,y,z三人。
已抽签决定比赛名单。
有人向
队员打听比赛的名单。
a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
publicclassTest18
char[]arr1={'
a'
'
b'
c'
};
char[]arr2={'
x'
y'
z'
for(inti=0;
arr1.length;
for(intj=0;
arr2.length;
if((arr1[i]=='
arr2[j]=='
)||(arr1[i]=='
))
System.out.println(arr1[i]+"
vs"
+arr2[j]);
/*【程序19】
打印出如下图案(菱形)
*
***
******
********
先把图形分成两部分来看待,前四行一个规律,后三行一个规律,利用双重for循环,第一层控制
行,第二层控制列。
publicclassTest19
//上半部分
4;
4-i;
i+1;
System.out.print('
*'
//中部以及下半部分
3;
i;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 试题 操作 答案 培训资料