Java上机程序答案.docx

上传人:b****5 文档编号:8509509 上传时间:2023-01-31 格式:DOCX 页数:36 大小:48.44KB
下载 相关 举报
Java上机程序答案.docx_第1页
第1页 / 共36页
Java上机程序答案.docx_第2页
第2页 / 共36页
Java上机程序答案.docx_第3页
第3页 / 共36页
Java上机程序答案.docx_第4页
第4页 / 共36页
Java上机程序答案.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

Java上机程序答案.docx

《Java上机程序答案.docx》由会员分享,可在线阅读,更多相关《Java上机程序答案.docx(36页珍藏版)》请在冰豆网上搜索。

Java上机程序答案.docx

Java上机程序答案

Java程序的基本结构:

publicclassTest1//定义一个类,名称为Test1

{//类定义的开始

publicstaticvoidmain(String[]args)//定义主程序

{//主程序的开始

//程序代码部分

//程序代码部分

//程序代码部分

}//主程序的结束

}//类定义的结束

Java的基本数据类型:

int整数类型

long长整数类型

float单精度浮点数类型

double双精度浮点数类型

char字符类型

声明变量的方法:

类型名称变量名称1,变量名称2,.....;

例如:

inta,b;

longc,d,e;

floatx,y,z;

doubles,t;

charch1,ch2;

赋值语句结构:

变量名称1=变量名称2;

变量名称=数值;

变量名称=算术表达式;(关系表达式、逻辑表达式)

例如:

s=15/6;

a=3+b*2;

c=a;

d=10;

打印语句:

System.out.print(打印项);

System.out.print(打印项1+打印项2+......+打印项n);

System.out.println(打印项);

System.out.println(打印项1+打印项2+......+打印项n);

例如:

System.out.print(s);

System.out.print(“s=”+s);

System.out.println(a);

System.out.println(“a=”+a);

输入语句:

importsJava.io.*;

publicclassTa1

{

publicstaticvoidmain(Stringargs[])throwsIOException

{

InputStreamReaderread1=newInputStreamReader(System.in);

BufferedReaderinput1=newBufferedReader(read1);

Strings1;

......

s1=input1.readLine();//从键盘读取字符串给变量s1

a=Integer.parseInt(s1);//将s1转换为整数类型数值给变量a

b=Double.parseDouble(s1);//将s1转换为双精度类型数值给变量b

......

}

}

 

条件语句:

格式1:

if(条件关系式)

{

语句块1;

}

 

格式2:

if(条件关系式)

{

语句块1;

}

else

{

语句块2;

}

关系运算符:

等于==

不等于!

=

大于>

大于等于>=

小于<

小于等于<=

逻辑运算符:

非!

与&&

或||

for循环语句:

for(循环变量=初始值;循环变量<=终止值;循环变量=循环变量+步长值)

{

循环体语句;

}

for(循环变量=初始值;循环变量>=终止值;循环变量=循环变量-步长值)

{

循环体语句;

}

for(循环变量=初始值;循环变量<=终止值;循环变量=循环变量*步长值)

{

循环体语句;

}

while循环语句:

当关系表达式成立时,执行循环体中的语句,然后返回重新检验关系表达式是否成立,若不成立则不执行循环体中语句,结束循环。

while(关系表达式)

{

循环体语句块;

}

do...while循环语句:

首先执行循环体中语句块,然后检验关系表达式是否成立,若成立,则继续执行循环体中语句,否则,结束循环。

do

{

循环体语句块;

}while(关系表达式)

数组的声明方法:

数据类型数组名称[]=new数据类型[元素个数];

数据类型数组名称[]={数据集合};

例如:

doubles[]=newdouble[20];

doublet[]={12,34,56,78,98};

数组的输入模块:

inti;

for(i=0;i<20;i=i+1)

{

a[i]=Math.floor(Math.random()*(N-M+1))+M;

}

for(i=0;i<5;i=i+1)

{

s1=input1.readLine();

a[i]=Double.parseDouble(s1);

}

数组的输出模块:

for(i=0;i<20;i=i+1)

{

System.out.println(a[i]);

}

随机函数的使用:

随机函数:

Math.random()

返回[0,1.0)之间的随机数。

0<=Math.random()<1

生面某范围内随机整数:

1.产生0~1这间的随机小数x

x=Math.random();

2.产生[0,n]这间的随机整数x

x=(int)Math.floor((n+1)*Math.random());

3.产生[m,n]范围内的随机整数x

x=(int)Math.floor((n-m+1)*Math.random()+m);

练习:

1.已知一般人平均每磅体重每天需19卡路里,若已知某人的体重(单位:

千克),求此人一天需要多少卡路里?

(1磅约为0.455千克)

ClassCalories

{

Publicstaticvoidmain(Stringargs[])

{

doublebody=120;

doubleca=body*19/0.455;

System.out.println(“此人一天需:

”+ca+“卡路里”);

}

}

2.身体质量指数(BMI)是衡量身体健康与否的一种标准,一般认为身体质量指数(BMI)在20至25之间是健康的。

计算BMI的公式:

体重除以身高的平方(体重单位为千克,身高单位为米)。

根据自己的实际情况,计算出自己的BMI。

importjava.util.*;

publicclassdemo02{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

doubleweight=br.nextDouble();

doubleheight=br.nextDouble();

doublebmi=weight/Math.pow(height,2);

System.out.println("BMI指数是:

"+bmi);

}

}

3.已知三角形边长分别为33、35、12,利用海伦公式求其面积。

海伦公式:

假设有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:

  S=

  而公式里的p为半周长:

p=(a+b+c)/2

其中,平方根

的表示法:

Math.sqrt(x)

publicclassdemo03{

publicstaticvoidmain(String[]args){

inta=33;

intb=35;

intc=12;

intp=(a+b+c)/2;

doubles=Math.sqrt(p*(p-a)*(p-b)*(p-c));

System.out.println(s);

}

}

4.已知一个圆的半径是20cm,求该圆的周长与面积。

其中,圆周率的表示法:

Math.PI。

publicclassdemo04{

publicstaticvoidmain(String[]args){

intr=20;

doublec=2*Math.PI*r;

doubles=Math.PI*Math.pow(r,2);

System.out.println("圆周长是:

"+c+",圆面积是:

"+s);

}

}

5.当给出X的值时,求下列函数的值:

y=0(x<0)

y=x的平方根(x>=0)

publicclassdemo05{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

doublex=br.nextDouble();

doubley=0;

if(x>=0){

y=Math.sqrt(x);

}

System.out.println(y);

}

}

6.某商场对苹果进行促销,规定购买2公斤以上可以在原价每公斤1.5元的基础上打8折,设计一个程序计算购买X公斤苹果的应付款。

importjava.util.Scanner;

publicclassdemo06{

publicstaticvoidmain(String[]args){

doubleperkgcost=1.5;

Scannerbr=newScanner(System.in);

doublekilogram=br.nextDouble();

doublepay=0;

if(kilogram>2){

pay=kilogram*perkgcost*0.8;

}else{

pay=kilogram*perkgcost;

}

System.out.println("价格是:

"+pay);

}

}

7.如果一个数能被7整除,则输出这个数,否则输出“此数不能整除7”。

importjava.util.Scanner;

publicclassdemo07{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

intnumber=br.nextInt();

if(number%7!

=0){

System.out.println("此数不能整除7");

}else{

System.out.println(number);

}

}

}

8.火车行李托运费,行李重量在50kg以下,每千克按0.10元计,如50kg,超出部分每千克按0.20元计。

importjava.util.Scanner;

publicclassdemo08{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

doubleweight=br.nextDouble();

doubleover=weight-50;

doublefare=0;

if(over>=0){

fare=50*0.1+over*0.2;

}else{

fare=weight*0.1;

}

System.out.println("运费是:

"+fare);

}

}

9.闰年判断:

判断条件是:

该年份能被4但不能被100整除,或能被400整除。

importjava.io.*;

publicclasse04

{

publicstaticvoidmain(Stringargs[])throwsIOException

{

InputStreamReaderreader=newInputStreamReader(System.in);

BufferedReaderinput=newBufferedReader(reader);

System.out.print("Enterthe年份:

");

Strings1=input.readLine();

intx=Integer.parseInt(s1);

if((x%4==0)&(x%100!

=0)||(x%400==0))

System.out.println(x+"是闰年");

else

System.out.println(x+"不是闰年");

}

}

10.通过键盘输入一个数,判断一个数是正数、零还是负数。

importjava.util.Scanner;

publicclassdemo10{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

doublenumber=br.nextDouble();

if(number==0){

System.out.println("输入的是零");

}else{

if(number>0){

System.out.println("输入的是正数");

}else{

System.out.println("输入的是负数");

}

}

}

}

11.输入三个整数,输出其中最大数。

importjava.util.Scanner;

publicclassdemo11{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

inta=br.nextInt();

intb=br.nextInt();

intc=br.nextInt();

inttemp=0;

if(a>b){

temp=a;

}else{

temp=b;

}

if(c>temp){

temp=c;

}

System.out.println("最大的数是:

"+temp);

}

}

12.求解二次方程Ax2+Bx+C=0的根,系数A,B,C由键盘输入

importjava.util.Scanner;

publicclassdemo12{

publicstaticvoidmain(String[]args){

Scannerbr=newScanner(System.in);

doublea=br.nextDouble();

doubleb=br.nextDouble();

doublec=br.nextDouble();

doublex1=0;

doublex2=0;

doublex=0;

if(a==0){//A=0

x=-c/b;

System.out.println("此方程式不是一元二次方程,其解为:

"+x);

}else{

doubledelta=Math.pow(b,2)-4*a*c;//delta=b^2-4ac

if(delta<0){//delta<0

System.out.println("此方程式无解!

");

}else{//delta>=0

x1=(-b+Math.sqrt(delta))/(2*a);

x2=(-b-Math.sqrt(delta))/(2*a);

if(x1==x2){

System.out.println("此方程式有一个解为:

"+x1);

}else{

System.out.println("此方程式有两个解为:

"+x1+"和"+x2);

}

}

}

}

}

 

13.显示所有100内的偶数;

publicclassdemo13{

publicstaticvoidmain(String[]args){

intnum;

System.out.println("100以内的偶数有:

");

for(num=0;num<=100;num+=2){

System.out.print(num+"");

}

}

}

14.显示所有100内的奇数;

publicclassdemo14{

publicstaticvoidmain(String[]args){

intnum;

System.out.println("100以内的奇数有:

");

for(num=1;num<=100;num+=2){

System.out.print(num+"");

}

}

}

15.显示所有200-300间的偶数;

publicclassdemo15{

publicstaticvoidmain(String[]args){

intnum;

System.out.println("200到300间的偶数有:

");

for(num=200;num<=300;num+=2){

System.out.print(num+"");

}

}

}

16.显示所有100内有能被7整除的数

publicclassdemo16{

publicstaticvoidmain(String[]args){

intnum;

System.out.println("100以内能被7整除的数有:

");

for(num=1;num<=100;num+=1){

if(num%7==0){

System.out.print(num+"");

}

}

}

}

17.显示所有既能被3整除又能被7整除的两位正整数,数值之间用“:

”隔开。

publicclassdemo17{

publicstaticvoidmain(String[]args){

intnum,tmp=0;

System.out.println("既能被3整除又能被7整除的两位正整数有:

");

for(num=1;num<100;num+=1){

if((num%7==0)&&(num%3==0)){

if(tmp==1){

System.out.print(":

"+num);

}else{

tmp=1;

System.out.print(num);

}

}

}

}

}

18.显示所有能被3整除的两位正奇数,数值之间用“-”隔开。

publicclassdemo18{

publicstaticvoidmain(String[]args){

intnum,tmp=0;

System.out.println("能被3整除的两位正奇数有:

");

for(num=11;num<=100;num+=2){

if(num%3==0){

if(tmp==1){

System.out.print("-"+num);

}else{

System.out.print(num);

tmp=1;

}

}

}

}

}

19.求

之和。

165

publicclassdemo19{

publicstaticvoidmain(String[]args){

inti,j=0;

for(i=3;i<=30;i+=3){

j+=i;

}

System.out.print(j);

}

}

20.求

之和。

1326

publicclassdemo20{

publicstaticvoidmain(String[]args){

inti,j=0;

for(i=1;i<=101;i+=4){

j+=i;

}

System.out.print(j);

}

}

21.求

之和。

110

publicclassdemo21{

publicstaticvoidmain(String[]args){

inti,j=0;

for(i=2;i<=20;i+=2){

j+=i;

}

System.out.print(j);

}

}

22.求

之和。

4.187********962

提示:

算式中每个分数的分母有规律,则用循环变量来描述分母的变化过程,但是每次累加的内容是分母所对应的整个分数。

(如:

若分数的结构是分子为1、分母为x,则分数为1/x)

publicclassdemo22{

publicstaticvoidmain(String[]args){

doublei,j=0;

for(i=2;i<=100;i++){

j+=1/i;

}

System.out.print(j);

}

}

23.求

之和。

17.354641295237272

提示:

若分子为x,则分母为x+1,则分数为:

x/(x+1)

publicclassdemo23{

publicstaticvoidmain(String[]args){

doublei,j=0;

for(i=1;i<=20;i++){

j+=i/(i+1);

}

System.out.print(j);

}

}

24.求

之和。

44200

publicclassdemo24{

publicstaticvoidmain(String[]args){

//TODOAuto-generatedmethodstub

inti,j=0;

for(i=1;i<51;i++){

j+=i*(i+1);

}

System.out.print(j);

}

}

25.求

之积。

3628800

提示:

注意累乘变量的初始值是什么值?

publicclassdemo25{

publicstaticvoidmain(String[]args){

inti,j=1;

for(i=1;i<11;i++){

j*=i;

}

System.out.print(j);

}

}

26.求

之积。

3.7158912E9

publicclassdemo26{

publicstaticvoid

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

当前位置:首页 > 初中教育

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

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