java基础习题及答案.docx
- 文档编号:3716182
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:14
- 大小:18.74KB
java基础习题及答案.docx
《java基础习题及答案.docx》由会员分享,可在线阅读,更多相关《java基础习题及答案.docx(14页珍藏版)》请在冰豆网上搜索。
java基础习题及答案
程序设计—基础篇习题
1.作图.
(1)
*********
*********
*********
*********
(2)
**********
**********
**********
**********
**********
(3)*
**
**
**
**
**
**
**
*
(4)
1
21
321
4321
54321
654321
7654321
(5)1
121
12321
1234321
123454321
12345654321
(6)****************
******************
******************
******************
******************
******************
(7)杨辉三角形
1
11
121
1331
14641
2.输出101--500之间的所有奇数,奇数之和.
3.输出100--200间不能被3整除的数.
4.输入初值,输出100个不能被3整除的数.
5.求S=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)的值.
6.设S=1*2*3*...*n,求S不大于400000时的最大n.
7.设S=11*22*33*...*nn,求S不大于400000时的最大n.
8.找出1~1000间的全部”同构数”.如果一个数出现在其平方数右端,则称此数为同构数,如1在12=1的右端,5在52=25的右端,25在252=625的右端等.
9.百鸡问题。
“鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?
”
10.利用一维数组,统计一个班学生0-9,10-19,..90-99及100各分数段的人数.
11.插入法排序.排序方法:
设有10个数存放在数组A中,分别用A[1],A[2],..,A[10]表示.
先将A[1]与A[2]比较,若A[2] 再将A[3]与A[1],A[2]比较,按照顺序确定A[3]应放的位置,A[1],A[2],A[1]顺序排列. 依次将后面的数一个一个拿来插入排好序的数列中,直到所有的数按顺序排好. 12.2个按升序(从小到大)排列的数列A[1],A[2],....,A[N]和B[1],B[2],...,B[M]中各元素按其大小关系存放到数组c.同时必须注意对数组A或B残余元素的的追加处理。 13.运动员成绩排名.设有一表格记录了10人参加的男子100M决赛成绩,运动员号码和成绩自行确定,设计一程序,将给定的成绩排名输出。 14.知某班学生M(M<100)人,其N(N<4)门课程.度按平均成绩输出学生平均成绩名次表(要求每个学生的信息包括: 名次,学号(用整型数),平均成绩等)。 15.设计计一个同学通信录程序,用户名用学号(整型数)表示,并记录每个人电话号码及QQ号,可以添加,删除查询。 答案: 1、 (1) publicclassEx1_1{ publicstaticvoidmain(String[]args){ for(inti=1;i<=4;i++) { for(intj=1;j<=12;j++) { if(i>j) System.out.print(""); elseif(i<=j&&j-i<=7) System.out.print("*"); } System.out.println(); } } } (2) publicclassEx1_2{ publicstaticvoidmain(String[]args){ for(inti=1;i<=5;i++) { for(intj=1;j<=16;j++) { if(i>j) System.out.print(""); elseif(i<=j&&j-i<=11) { if(j-i==9-(i-1)*2||j-i==10-(i-1)*2) System.out.print(""); else System.out.print("*"); } } System.out.println(); } } } (3) publicclassEx1_3{ publicstaticvoidmain(String[]args){ for(inti=1;i<=9;i++) { for(intj=1;j<=9;j++) { if(j==6-i||j==4+i||j==i-4||j==14-i) System.out.print("*"); else System.out.print(""); } System.out.println(); } } } (4) publicclassEx1_4{ publicstaticvoidmain(String[]args){ for(inti=1;i<=7;i++) { for(intj=i;j>=1;j--) System.out.print(j+""); System.out.println(); } } } (5) importjava.util.Scanner; publicclassEx1_5{ publicstaticvoidmain(String[]args){ Scannerin=newScanner(System.in); System.out.println("inputthelinenumber: "); intn=in.nextInt(); for(inti=1;i<=n;i++){ for(intj=1;j<=n-i;j++) System.out.print(""); for(intk=1;k System.out.print(k+""); for(intk=i;k>=1;k--) System.out.print(k+""); System.out.println(); } } } (6) publicclassEx1_6{ publicstaticvoidmain(String[]args){ for(inti=1;i<=6;i++){ for(intj=1;j<=6-i;j++) System.out.print(""); System.out.print("********"); for(intj=1;j<=2*i-1;j++) System.out.print(""); System.out.print("********"); System.out.println(); } } } (7) importjava.util.Scanner; publicclassEx1_7{ publicstaticvoidmain(String[]args){ Scannerin=newScanner(System.in); System.out.println("pleaseinputthelinenumber: "); intn=in.nextInt(); int[][]a=newint[n][n]; a[0][0]=1; for(inti=1;i for(intj=0;j if(i==j||j==0) a[i][j]=1; else a[i][j]=a[i-1][j-1]+a[i-1][j]; } for(inti=0;i for(intj=1;j<=n-i;j++) System.out.print(""); for(intk=0;k if(a[i][k]==0) System.out.print(""); elseif(k==0) System.out.print(a[i][k]+""); elseif(i==k) System.out.print(""+a[i][k]); else System.out.print(""+a[i][k]+""); } System.out.println(); } } } 2、 publicclassEx2{ publicstaticvoidmain(String[]args){ /** *输出101--500之间的所有奇数,奇数之和 */ intsum=0,j=0; for(inti=101;i<=500;i++){ if(i%2! =0){ System.out.print(i+""); j++; sum+=i; if(j%8==0) System.out.println(); } } System.out.println(sum); } } 3、 publicclassEx3{ publicstaticvoidmain(String[]args){ /** *输出100--200间不能被3整除的数 */ intj=0; for(inti=100;i<=200;i++) { if(i%3! =0) { System.out.print(i+""); j++; if(j%10==0) System.out.println(); } } } } 4、题目要求不明 5、 importjava.util.Scanner; publicclassEx5{ publicstaticvoidmain(String[]args){ /** *求S=1+(1+2)+(1+2+3)+...+(1+2+3+...+n)的值 */ Scannerin=newScanner(System.in); System.out.println("pleaseinputthen: "); intn=in.nextInt(); intS=0; for(inti=1;i<=n;i++){ for(intj=1;j<=i;j++) S+=j; } System.out.println("S="+S); } } 6、 publicclassEx6{ publicstaticvoidmain(String[]args){ /** *设S=1*2*3*...*n,求S不大于400000时的最大n */ longs=1,i=0; while(s<=400000){ i++; s*=i; } System.out.println(i-1); } } 7、 publicclassEx7{ publicstaticvoidmain(String[]args){ /** *设S=(1^1)*(2^2)*(3^3)*...*(n^n),求S不大于400000时的最大n */ longs=1,i=0; while(s<=400000){ intk=1; i=i+1; for(intj=1;j<=i;j++) k*=i; s*=k; //System.out.println("i: "+i); //System.out.println("s: "+s); } System.out.println(i-1); } } 8、 publicclassEx8{ publicstaticvoidmain(String[]args){ /** *找出1~1000间的全部”同构数”.如果一个数出现在其平方数右端, *则称此数为同构数,如1在1^2=1的右端,5在5^2=25的右端,25在25^2=625的右端等. */ for(inti=1;i<=1000;i++){ intj=i*i; if(j%10==i||j%100==i||j%1000==i) System.out.println(i); } } } 9、 publicclassEx9{ publicstaticvoidmain(String[]args){ /** *百鸡问题。 “鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问鸡翁、鸡母、鸡雏各几何? ” */ inti,j,k; for(i=1;i<=20;i++) for(j=1;j<=33;j++) for(k=0;k<=100;k+=3) if(i+j+k==100&&i*5+j*3+k/3==100) System.out.println("i="+i+",j="+j+",k="+k); } } 10、 importjava.util.Scanner; publicclassEx10{ publicstaticvoidmain(String[]args){ /** *利用一维数组,统计一个班学生0-9,10-19,..90-99及100各分数段的人数 */ Scannerin=newScanner(System.in); System.out.println("pleaseinputtheamountofthestudents"); intn=in.nextInt(); System.out.println("pleaseinputthegrades"); int[]a=newint[n]; for(inti=0;i a[i]=in.nextInt(); int[]x=newint[11]; for(inti=0;i inty=a[i]/10; x[y]++; } for(intj=0;j System.out.print(x[j]+""); } } } 11、 importjava.util.Arrays; publicclassEx11{ publicstaticvoidmain(String[]args){ /** *插入法排序.排序方法: *设有10个数存放在数组A中,分别用A[1],A[2],..,A[10]表示. *先将A[1]与A[2]比较,若A[2] *再将A[3]与A[1],A[2]比较,按照顺序确定A[3]应放的位置,A[1],A[2],A[1]顺序排列. *依次将后面的数一个一个拿来插入排好序的数列中,直到所有的数按顺序排好. */ int[]a={1,25,18,40,23,80,12,18,100,50}; inttemp;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 基础 习题 答案