java实训报告Word格式.docx
《java实训报告Word格式.docx》由会员分享,可在线阅读,更多相关《java实训报告Word格式.docx(22页珍藏版)》请在冰豆网上搜索。
k<
n;
k++){
if(n%k==0)break;
elsea=a+1;
}
if(a>
0){System.out.print(n+"
"
);
a=0;
}
程序运行结果:
【程序2】
打印出所有的"
水仙花数"
,所谓"
是指一个三位数,其各位数字立方和等于该数本身。
例如:
153是一个"
,因为153=1的三次方+5的三次方+3的三次方。
publicclassshixun2{
inti=153,a,b,c;
for(i=100;
i<
999;
i++){
a=i%10;
b=i/10%10;
c=i/100%10;
if(a*a*a+b*b*b+c*c*c==i){
System.out.print(i+"
是水仙花数!
"
+””);
}}}}
【程序3】
利用条件运算符的嵌套来完成此题:
学习成绩>
=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
publicclassshixun{
inti=60,j;
System.out.print("
当分数是60时"
j=i<
90?
1:
0;
if(j==0){System.out.print("
A"
elseif(i>
=60){System.out.print("
B"
else{System.out.print("
C"
【程序4】
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
importjava.io.*;
publicclassshixun{
publicstaticvoidmain(String[]args)throwsIOException{
inti;
intLetterCount=0,SpaceCount=0,NumberCount=0,OtherCount=0;
BufferedReadera=newBufferedReader(newInputStreamReader(System.in));
System.out.println("
请输入一个字符串:
Stringstr=a.readLine();
char[]ch=str.toCharArray();
for(i=0;
i<
str.length();
if(Character.isLetter(ch[i])){
LetterCount++;
}elseif(Character.isSpaceChar(ch[i])){
SpaceCount++;
}elseif(Character.isDigit(ch[i])){
NumberCount++;
else{OtherCount++;
字符的个数为:
+LetterCount);
空格的个数为:
+SpaceCount);
数字的个数为:
+NumberCount);
其他字符个数为:
+OtherCount);
【程序5】
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
publicstaticvoidmain(Stringargs[])throwsIOException{
inti,n,k=0,j=0;
Stringa;
BufferedReaderbuf;
buf=newBufferedReader(newInputStreamReader(System.in));
a=buf.readLine();
n=Integer.parseInt(a);
for(i=0;
j=j*10+2;
k+=j;
System.out.print("
2+22+222+...n="
+k);
【程序6】
有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?
都是多少?
publicstaticvoidmain(Stringarg[]){
inta,b=0,c=0,d=0;
for(a=1;
a<
=4;
a++){
for(b=1;
b<
b++)
for(c=1;
c<
c++)
if(a!
=b&
&
b!
=c&
a!
=c)
{System.out.print(a+"
+b+"
+c+"
d+=1;
}System.out.println("
System.out.println("
总共能组成"
+d+"
个数"
【程序7】
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
publicstaticvoidmain(String[]args){
100000以内的:
intcount=0;
for(doublei=1;
i<
100000;
if(Math.sqrt(i+100)%1==0){
if(Math.sqrt(i+168)%1==0){
count++;
}}
}}
【程序8】
企业发放的奖金根据利润提成。
利润(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,求应发放奖金总数?
利润是:
doubleb=Integer.parseInt(str);
doublee=0;
if(b<
=100000)e=b/10;
elseif(b<
=200000)e=(b-100000)*0.075+10000;
=400000)e=(b-200000)*0.05+100000*0.075+10000;
=600000)e=(b-400000)*0.03+200000*0.05+100000*0.075+10000;
=1000000){e=(b-600000)*0.015+200000*0.03+200000*0.05+
100000*0.075+10000;
elseif(b>
1000000){e=(b-1000000)*0.01+400000*0.015+
200000*0.03+200000*0.05+
奖金是"
+e);
【程序9】
输入三个整数x,y,z,请把这三个数由小到大输出。
importjava.util.*;
publicstaticvoidmain(String[]args){
intx,y,z,temp=0;
Scannerin=newScanner(System.in);
请输入第一个数:
x=in.nextInt();
请输入第二个数:
y=in.nextInt();
请输入第三个数:
z=in.nextInt();
if(x>
y){temp=x;
x=y;
y=temp;
if(y>
z){temp=y;
y=z;
z=temp;
排序后的顺序为:
+x+"
"
+y+"
+z);
【程序10】
输出9*9口诀。
inti,j,a=1;
for(i=1;
10;
for(j=a;
j<
j++){
x"
+j+"
="
+i*j);
}a++;
【程序11】
求1+2!
+3!
+...+20!
的和
inti,j,k=1,sum=0;
=20;
for(j=1;
=i;
j++){
k=k*j;
sum+=k;
k=1;
System.out.print(sum);
【程序12】
有5个人坐在一起,问第五个人多少岁?
他说比第4个人大2岁。
问第4个人岁数,他说比第3个人大2岁。
问第三个人,又说比第2人大两岁。
问第2个人,说比第一个人大两岁。
最后问第一个人,他说是10岁。
请问第五个人多大?
inte=10;
for(inti=1;
5;
i++)
e=e+2;
第五个人的岁数是:
【程序13】
给一个不多于5位的正整数,要求:
一、求它是几位数,二、逆序打印出各位数字。
intnum=0,i;
intm=4,n=0;
请输入五位以内的数(不足五位数以空格补齐):
if(Character.isDigit(ch[i])){num++;
这个数的位数是:
+num);
你向输出为:
n=i+m;
System.out.print(ch[n]);
m=m-2;
【程序14】
一个5位数,判断它是不是回文数。
即12321是回文数,个位与万位相同,十位与千位相同。
inta,b,c,d,e,f;
Scannerm=newScanner(System.in);
请输入一个五位数:
a=m.nextInt();
b=a%10;
c=a/10%10;
d=a/100%10;
e=a/1000%10;
f=a/10000%10;
if(b==f&
c==e){System.out.print("
这个数是回数"
这个数不是回数"
【程序15】
请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。
publicstaticvoidmain(Stringarg[])throwsIOException{
BufferedReaderbuf=newBufferedReader(newInputStreamReader(System.in));
请输入要查询的周的前两个字母:
Stringstr=buf.readLine();
intb=0;
if(str.equals("
mo"
)){System.out.println("
星期一"
tu"
星期二"
we"
星期三"
th"
星期四"
fr"
星期五"
sa"
星期六"
su"
星期日"
【程序16】
求100之内的素数
for(n=1;
101;
elsea++;
}}}
【程序17】
对10个数进行排序
publicstaticvoidmain(Stringarg[])
{
intb[]={3,7,2,4,5,1,8,9,13,11};
inti,j;
for(j=0;
if(b[j]<
b[i]){
intt=b[j];
b[j]=b[i];
b[i]=t;
}System.out.print("
由小到大排序为:
i++){System.out.print(b[i]+"
【程序18】
有一个已经排好序的数组。
现输入一个数,要求按原来的规律将它插入数组中。
inta[]={1,2,4,5,6,7,8,9};
请输入要插入的数:
intn=in.nextInt();
for(inti=0;
a.length;
if(a[i]>
=n){intt=a[i];
a[i]=n;
n=t;
i++){System.out.print(a[i]);
System.out.print(n);
【程序19】
将一个数组逆序输出。
publicclassshixun1{
inta[]={1,2,3,4,5,6,7,8,9,10},m=9,t,i;
数组逆序输出为:
t=a[i+m];
a[i+m]=a[i];
a[i]=t;
m-=2;
i++){System.out.print(a[i]+"
}}
【程序20】
输入3个数a,b,c,按大小顺序输出。
inta,b,c,t=0;
a=in.nextInt();
b=in.nextInt();
c=in.nextInt();
intn[]={a,b,c};
3;
for(intj=0;
j++)
if(n[i]>
n[j])
{t=n[i];
n[i]=n[j];
n[j]=t;
}}
for(inti=0;
i++){System.out.print(n[i]+"
【程序21】
输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
inta[]={2,4,6,8,9,3,7,1,0,10,5},max=a[0],min=a[0],t,b=0,c=0;
11;
max){max=a[i];
b=i;
elseif(a[i]<
min){min=a[i];
c=i;
t=a[0];
a[0]=a[b];
a[b]=t;
t=a[10];
a[10]=a[c];
a[c]=t;
【程序22】
有五个学生,每个学生有3门课的成绩,从键盘输入以上数据(包括学生号,姓名,三门课成绩),计算出平均成绩,况原有的数据和计算出的平均分数存放在磁盘文件"
stud"
中。
publicclassshixun
{
String[]num=newString[5];
String[]name=newString[5];
float[][]score=newfloat[5][3];
float[]sum=newfloat[5];
publicstaticvoidmain(String[]args)throwsIOException{
shixunstud=newshixun();
stud.input();
stud.output();
publicvoidinput()throwsIOException
BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
booleanflag