第三次Java练习题分解.docx

上传人:b****1 文档编号:621956 上传时间:2022-10-11 格式:DOCX 页数:20 大小:26.65KB
下载 相关 举报
第三次Java练习题分解.docx_第1页
第1页 / 共20页
第三次Java练习题分解.docx_第2页
第2页 / 共20页
第三次Java练习题分解.docx_第3页
第3页 / 共20页
第三次Java练习题分解.docx_第4页
第4页 / 共20页
第三次Java练习题分解.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

第三次Java练习题分解.docx

《第三次Java练习题分解.docx》由会员分享,可在线阅读,更多相关《第三次Java练习题分解.docx(20页珍藏版)》请在冰豆网上搜索。

第三次Java练习题分解.docx

第三次Java练习题分解

1.顺序语句练习

6道题.方法1道.数组2道。

类2到

建项目Test+学号

每个题一个包

把每个项目压缩专业班级学号姓名提交

时间3小时

数组:

做题号为偶数的去掉柜子八皇后

方法:

1311131416

类:

1546789141516

异常:

.循环练习

publicclasslx5{

publicstaticvoidmain(Stringargs[]){

System.out.println("50以内的素数:

");

System.out.print("2"+"3");

intc=2;

for(inti=3;i<=100;i++)

for(intj=2;j<=(int)Math.sqrt(i);j++){

if(i%j==0)break;

if(j>=(int)Math.sqrt(i)){

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

c++;

if(c%10==0)

System.out.println();

}

}

}

}

6.(统计正数和负数的个数然后计算这些数的平均值)编写程序,读入未指定个数的整数,分别判断读入的正数和负数的个数,然后计算这些输入值的总和及其平均值(不对0计数),当输入为0时候,表示程序结束。

将平均值以浮点数的形式显示。

(20分)

下面是一个运行示例:

Enteranintvalue,theprogramexitsiftheinputis0:

12-130

Thenumberofpositivesis3

Thenumberofnegativesis1

Thetotalis5

Theaverageis1.25

7.(财务程序):

假设某个大学今年的学费是10000元,学费以每年5%速度增加,编写程序计算10年后的学费以及现在开始的10年后算起,4年内总学费是多少?

(20分)

publicstaticvoidmain(String[]args){

inta=10000;

doublew;

doublesum=0;

doublep;

for(intn=1;n<10;n++){

w=a*Math.pow(1+0.05,n);

sum+=w;

if(n==9){

System.out.println(""+w);

}

if(n==3){

p=a+sum;

System.out.println(""+p);

}

}

}

}

8.编写程序,提示用户输入学生的个数,每个学生的姓名和分数,最后显示得分最高学生的姓名和分数和第二高分学生姓名和分数(20分)

importjava.io.*;

importjava.util.*;

publicclasslianxi50{

publicstaticvoidmain(String[]args){

  Scannerss=newScanner(System.in);

  String[][]a=newString[5][6];

  for(inti=1;i<6;i++){

   System.out.print("请输入第"+i+"个学生的学号:

");

   a[i-1][0]=ss.nextLine();

   System.out.print("请输入第"+i+"个学生的姓名:

");

   a[i-1][1]=ss.nextLine();

   for(intj=1;j<4;j++){

      System.out.print("请输入该学生的第"+j+"个成绩:

");

      a[i-1][j+1]=ss.nextLine();

      }

System.out.println("\n");

9.使用while循环找出满足n*n大于12000的最小整数(15分)。

publicstaticvoidmain(String[]args){

intn=1;

while(n*n<12000){

n++;

}

System.out.println(""+n);

}

}

11.计算π(25分)

使用下列数列可以近似计算π:

π=4*(1-1/3+1/5-1/7+1/9-1/11+………+1/(2*i-1)-1/2*i+1)

编写程序,显示当i=10000,20000,…..100000的时候π的值。

12.(完全数)如果一个正整数等于除以它本身之外所有其他所有除数之和,就称之为完全数。

例如:

6是第一个完全数,因为6=1+2+3,下一个完全数是28=1+2+4+7+14;1000以下完全数有4个,编写程序找出这四个完全数。

(25分)

publicstaticvoidmain(String[]args){

intsum;

for(inti=1;i<1000;i++)

{

sum=0;

for(intj=1;j<=i/2;j++)

{

if(i%j==0)

{

sum+=j;

}

}

if(i==sum){

System.out.println(""+i);

}

}

}

}

13.(游戏:

石头、剪、子布)对于分支语句练习7的石头-剪子-布程序,修改这个程序,让用户可以连续玩这个游戏,直到用户或者计算机连续赢两次以上。

(25分)

14.(最大数的出现次数)编写程序读取整数,找出他们的最大数,然后计算该数出现的次数。

键入输入0表示结束。

(20分)假定输入是3525550,程序找出最大数5,而5出现的次数是4.

15.假设你投资10000美元买一张CD,年获利率为5.75%,一个月后,这张CD的价值为:

10000+10000*5.75/1200=10047.91

两个月后,这张CD的价值为:

10047.91+10047.91*5.75/1200=10096.06

三个月后,这张CD的价值为:

10096.06+10096.06*5.75/1200=10144.43

以此类推:

编写程序,提示用户输入一个总数(例如10000),年获利率(例如5.75),以及月份数(例如18),然后显示表格,如下面运行示例所示:

Entertheintialdepositamout:

1000

Enterannualpercentageyield:

5.75

Entermaturityperiod(numberofmonth):

18

MonthCDValue

110047.91

210096.06

1710846.56

1810898.54

4.方法练习

1(数学:

五角数)一个五角数被定义为n(3n-1)/2,其中n=1,2….所以开始几个数字就是1,5,12,22,…编写下面方法返回一个五角数

publicintgetPentagonalNumber(intn)

编写测试程序显示前100个五角数,每行显示10个。

2.(求一个整数的各位数字之和)编写一个方法,计算一个整数各位数字之和:

publicintsumDigits(longn)

例如sumDigits(234)返回9

提示:

用求余运算符%提取数字,用除号/提取取出来的数字,反复循环(234%10=4234/10=23)

3.(回文整数)编写两个方法

publicintreverse(intnum)//返回反向倒置数//reverse(456)return654

publicBooleanisPalindrome(intnumber)

使用reverse方法实现isPalindrome。

如果一个数字的反向倒置数和他顺向数一样,这个数字称作回文,编写测试程序,提示用户输入一个整数,然后报告这个数字是否回文。

4.(显示模式)编写方法显示如下模式

 

1

21

321

nn-1321

5(回文素数)回文素数,是指一个数既是回文又是素数。

例如131,313,757,编写程序显示前100个回文素数,每行显示10个数并且准确对齐。

例如:

2357….

313353373383

6.(反素数)反素数是指将一个数字逆向之后也是一个素数的非回文素数,例如:

17是个素数,71也是素数,所以17和71是反素数。

编写程序显示前100个反素数,每行显示10个数并且准确对齐。

7.(梅森素数),如果一个素数可以写成2P-1的形式,其中p是某个正整数,那么这个素数就是梅森素数,编写程序写出p<=31的所有梅森素数,然后显示如下输出结果:

P2P-1

23

37

531

….

8.(游戏:

)掷骰子游戏是赌场非常流行的骰子游戏,编写程序玩这个游戏的另一种玩法,如下所示:

掷两个骰子,每个骰子有六个面,分别表示值1,2….6,检查这两个骰子的和,如果和为2,3,或者12(称为掷骰子),你就输了;如果是7或者11(称为自然),你就赢了,但如果和是其他数字,例如4,5,6,8,9或者10,就确定了一个点,继续掷骰子,直到掷出一个7或者掷出和刚才相同的点数,如果掷出是7,你就输了,如果掷出的点数和你前一次掷出的点数相同,你就赢了。

程序扮演一个独立的玩家,下面是运行示例。

Yourolled5+6=11

Youwin

Yourolled1+2=3

Youlose

Yourolled4+4=8

Pointis8

Yourolled6+2=8

Youwin

Yourolled3+2=5

Pointis5

Yourolled2+5=7

Youlose

10.(摄氏度和华氏度之间的转换)编写一个类,包含下面两个方法:

//转换摄氏温度到华氏温度

PublicdoublecelsiusToFahrenheit(doublecelsius)

//转换华氏温度到摄氏温度

PublicdoublefahrenheitTocelsius(doublefahrenheit)

转换公式如下:

华氏温度=(9.0/5)*摄氏温度+32

摄氏度华氏度华氏度摄氏度

40.0104.0120.048.89

39.0102.2110.043.33

...

32.089.640.04.44

31.087.830.0-1.11

Publicstaticvoidmain(Stringargs){

printChars(“1”,”z”,10);

publicstaticvoidprintChar(charch1,charch2,intnumberPerLine){

for(inti=ch1;m=1;i<=ch2;i++;m++){

if(m%numberPerLine=

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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