t=x;
x=y;
y=t;
}
while(y!
=0){
if(x==y)returnx;
else{
intk=x%y;
x=y;
y=k;
}
}
returnx;
}
}
【程序7】
题目:
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
packagejava50;
importjava.util.Scanner;
publicclassJava7{
/**
*【程序7】
*题目:
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scanners=newScanner(System.in);
//获取输入的值ss
Stringss=s.nextLine();
//将ss转换为数组的形式;
chara[]=ss.toCharArray();
//定义字母、空格、数字和其它字符的个数。
intkg=0;
intzm=0;
intsz=0;
intqt=0;
//进行判断
for(charaa:
a){
if(aa==''){
kg++;
}elseif(aa>='a'&&aa<='z'||aa>='A'&&aa<'Z'){
zm++;
}elseif(aa>='0'&&aa<='9'){
sz++;
}else{
qt++;
}
}
//输出结果
System.out.println("字母有"+zm+"个;");
System.out.println("空格有"+kg+"个;");
System.out.println("数字有"+sz+"个;");
System.out.println("其它字符"+qt+"个。
");
}
}
【程序8】
题目:
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
packagejava50;
importjava.util.Scanner;
publicclassJava8{
/**
*【程序8】
*题目:
求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
*例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scannerss=newScanner(System.in);
System.out.println("请输入a的值:
");
inta=ss.nextInt();
System.out.println("请输入有几个数相加:
");
intg=ss.nextInt();
ints=0;
for(inti=1;i<=g;i++){
s=s+a;
//System.out.print("a="+a+"");
a=a*10+2;
//System.out.print("s="+s+"");
}
//System.out.println(2+22+222+2222+22222);
System.out.println("结果是"+s);
}
}
【程序9】
题目:
一个数如果恰好等于它的因子之和,这个数就称为"完数"。
例如6=1+2+3.编程 找出1000以内的所有完数。
packagejava50;
publicclassJava9{
/**
*【程序9】
*题目:
一个数如果恰好等于它的因子之和,
*这个数就称为"完数"。
例如6=1+2+3.编程
*找出1000以内的所有完数。
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
for(inti=6;i<1000;i++){
inth=0;
for(intj=1;j<=i;j++){
if(i%j==0){
//if(h!
=0){System.out.print(h+"+");}
h=h+j;
if(h==i){
System.out.println(i);
}
}
}//6=1x2x3;
//24=1x2x3x4;
//28=1x2x4x7x14
}
}
}
【程序10】
题目:
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?
第10次反弹多高?
packagejava50;
publicclassJava10{
/**
*【程序10】 题目:
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在
*第10次落地时,共经过多少米?
第10次反弹多高?
*s=299.609375
h=0.09765625
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
doubleh=100;
doubles=0;
for(inti=1;i<=10;i++){
if(i==1){
s=100;
System.out.println(s);
}else{
s=s+h*2;
System.out.println(s);
}
h=h/2;
System.out.println(h);
}
System.out.println("s===="+s);
System.out.println("第十次反弹"+h+"米");
}
}
【程序11】
题目:
有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?
都是多少?
packagejava50;
publicclassJava11{
/**
*【程序11】 题目:
有1、2、3、4四个数字,
*能组成多少个互不相同且无重复数字的三位数?
都是多少?
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
ints=0;
for(inta=1;a<5;a++){
for(intb=1;b<5;b++){
for(intc=1;c<5;c++){
for(intd=1;d<5;d++){
if(a!
=b&&a!
=c&&a!
=d&&b!
=c&&b!
=d&&c!
=d){
System.out.println(a+""+b+""+c+""+d);
s++;
}
}
}
}
}
System.out.println("共有"+s+"个");
}
}
【程序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%提成,从键盘输入当月利润,求应发放奖金总数?
packagejava50;
importjava.util.Scanner;
publicclassJava12{
/**
*【程序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%提成,从键盘输入当月利润,求应发放奖金总数?
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scanners=newScanner(System.in);
doublelr=s.nextInt();
//150W的时候结果为:
//System.out.println(10*0.1+0.075*10+20*0.05+20*0.03+40*0.015+50*0.01);
if(lr>10){
if(lr>20){
if(lr>40){
if(lr>60){
if(lr>100){
System.out.println(10*0.1+(10*0.075)+(20*0.05)+(20*0.03)+(40*0.015)+(lr-100)*0.01);
}else{
System.out.println(10*0.1+(10*0.075)+(20*0.05)+(20*0.03)+(lr-60)*0.015);
}
}else{
System.out.println(10*0.1+(10*0.075)+(20*0.05)+(lr-40)*0.03);
}
}else{
System.out.println(10*0.1+(10*0.075)+(lr-20)*0.05);
}
}else{
System.out.println(10*0.1+(lr-10)*0.075);
}
}else{System.out.println(0.1*lr);}
}
}
【程序13】
题目:
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
packagejava50;
publicclassJava13{
/**
*【程序13】
*题目:
一个整数,它加上100后是一个完全平方数,
*再加上168又是一个完全平方数,
*请问该数是多少?
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
//做一个循环找小于100000之间的数
for(doublei=-100;i<100000;i++){
//如果这个数的开方%1=0,说明这个数的开方是个整数
if(Math.sqrt(i+100)%1==0){
if(Math.sqrt(i+268)%1==0){
System.out.println((int)i);
}
}
}
}
}
/*按题意循环应该从-100开始(整数包括正整数、负整数、零),这样会多一个满足条件的数-99。
但是我看到大部分人解这道题目时都把题中的“整数”理解成正整数,我也就随大流了。
*/
【程序14】
题目:
输入某年某月某日,判断这一天是这一年的第几天?
packagejava50;
importjava.util.Scanner;
publicclassJava14{
/**
*【程序14】
*题目:
输入某年某月某日,判断这一天是这一年的第几天?
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
Scanners=newScanner(System.in);
System.out.println("请输入年份:
");
intyear=s.nextInt();
System.out.println("请输入月份:
");
intmonth=s.nextInt();
System.out.println("请输入几号:
");
intday=s.nextInt();
intd=0;
if(year<0||month<0||month>12||day<0||day>31){
System.out.println("输入错误,请重新输入!
");
System.exit(0);
}
for(inti=1;i<=month;i++){
switch(month){
case1:
case3:
case5:
case7:
case8: