JAVA编程习题及答案 - 完全版
更新时间:2023-03-08 05:24:11 阅读量: 综合文库 文档下载
- JaVa编程推荐度:
- 相关推荐
1.test10001显示短句
//程序填空.
//在屏幕上显示一个短句“Programming in Java is fun!”
import java.io.*;
public class Test10001{
public static void main(String args[]){ /*------------------------*/ System.out.println(\ } }
2.test10002显示网格
/*程序填空。
在屏幕上显示如下网格。 +---+---+ | | | | | | +---+---+ */
import java.io.*;
public class Test10002{
public static void main(String args[]){ /*------------------------*/ System.out.println(\ System.out.println(\ | |\ System.out.println(\ | |\ System.out.println(\ } }
3.test10095显示hello world!
import java.io.*;
public class Test10095{
public static void main(String args[]){ /*---------------------------*/
} }
System.out.println(\
4.test10097求两个数的和
/*输入n表示做n次下面的操作: 输入两个正整数,输出它们的和.
例: 输入:
2 //表示n=2,做两次操作 10 11 20 30
输出: sum=21 sum=50 */
import java.util.Scanner; public class Test10097{
public static void main(String args[]){ int n,a,b,i,sum; Scanner in=new Scanner(System.in); n=in.nextInt(); //输入n for(i=1; i<=n; i++){ /*------------*/ a=in.nextInt(); b=in.nextInt(); sum=a+b; System.out.println(\ } } }
5.test20001求两个数的和与差
/*程序填空,不要改变与输入输出有关的语句。 输入整数a和b,计算并输出a、b的和与差。 例: 输入
2 -8
输出
The sum is -6
The difference is 10*/
import java.io.*;
import java.util.Scanner; public class Test20001{
public static void main(String args[]){ int a, b, sum, diff;
Scanner in=new Scanner(System.in); a=in.nextInt(); b=in.nextInt(); /*------------------*/ sum=a+b; diff=a-b;
System.out.println(\
System.out.println(\ } }
6.test20002求平方根
//程序填空,不要改变与输入输出有关的语句。 输入1个实数x,计算并输出其平方根。 例: 输入 1.21
输出
The square root of 1.21 is 1.1
import java.io.*;
import java.util.Scanner; public class Test20002{
public static void main(String args[]){ double x, root;
Scanner in=new Scanner(System.in); x=in.nextDouble(); /*------------------*/ root=Math.sqrt(x);
System.out.println(\ } }
7.test20003华氏温度转换成摄氏温度
/*程序填空,不要改变与输入输出有关的语句。
输入华氏温度f,计算并输出相应的摄氏温度c。c = 5/9(f-32). 例:括号内是说明 输入
17.2 (华氏温度) 输出
The temprature is -8.222222222222223*/
import java.util.Scanner; public class Test20003 {
public static void main(String[] args) { Scanner in=new Scanner(System.in); double f, c;
f=in.nextDouble(); /*------------------*/ c=5*(f-50)/9+10;
System.out.println(\ } }
8.test20004计算旅途时间
程序填空,不要改变与输入输出有关的语句。
输入2个整数time1和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 有效的时间范围是0000到2359,不需要考虑出发时间晚于到达时间的情况。 例:括号内是说明 输入
712 1411(出发时间是7:10,到达时间是14:11) 输出
The train journey time is 6 hrs 59 mins.
import java.util.Scanner; public class Test20004 {
public static void main(String[] args) { Scanner in=new Scanner(System.in); int time1, time2, hours, mins; time1=in.nextInt(); time2=in.nextInt(); /*------------------*/
time1=(time1/100)*60+time10; time2=(time2/100)*60+time20; hours=(time2-time1)/60;
mins=(time2-time1)-hours*60;
System.out.println(\ } }
9.test20005数字加密
程序填空,不要改变与输入输出有关的语句。 输入1个四位数,将其加密后输出。 方法是将该数每一位上的数字加9,
然后除以10取余,做为该位上的新数字,
最后将第1位和第3位上的数字互换,第2位和第4位上的数字互换,组成加密后的新数。 例:括号内是说明 输入 1257
输出
The encrypted number is 4601(每一位上的数字加9除以10取余后,得0146,交换后得到4601)
import java.util.Scanner; public class Test20005 {
public static void main(String[] args) { Scanner in=new Scanner(System.in);
int number, digit1, digit2, digit3, digit4, newnum; int temp; //我自己定义了一个变量 number=in.nextInt(); /*------------------*/ digit1=number/1000;
digit2=(number00)/100;
digit3=((number00)0)/10; digit4=number;
//以下是测试语句,看看我们的想法是不是正确.但是作业在提交时一定要把它注释掉
输出
NO (1不是素数) YES (2是素数) NO (9不是素数) YES (17是素数)*/
import java.util.Scanner; public class Test40013{
public static void main(String args[]){ int ri, repeat; int i, m, n; boolean flag;
Scanner in=new Scanner(System.in); repeat=in.nextInt();
for(ri=1; ri<=repeat; ri++){ m=in.nextInt();
/*--------------------*/ flag=true; if (m==1) flag=false; else { i=2; flag=true;
while(i if(flag) System.out.println(\ else System.out.println(\ } } } 33.求1+1/2!+??+1/n! 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 2 (repeat=2) 2 (n=2) 10 (n=10) 输出: 1.5 1.7182816 import java.util.Scanner; public class T40021{ public static void main(String args[]){ int ri, repeat; int i,n; float s,t=1; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++) { n=in.nextInt(); /*--------------------*/ s=0; t=1; for(i=1;i<=n;i++) { t=t/i; s=s+t; } System.out.println(s); } } } 34.求各位数字的立方和等于它本身的数 /*程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 输出m 和n之间所有满足各位数字的立方和等于它本身的数。 输出语句:System.out.println(i); 例:括号内是说明 输入: 2 (repeat=2) 100 400 (m=100, n=400) 1 100 (m=1, n=100) 输出: 153 (1*1*1+5*5*5+3*3*3=153) 370 (3*3*3+7*7*7=370) 371 (3*3*3+7*7*7+1*1*1=371) 1 */ import java.util.Scanner; public class Test40022{ public static void main(String args[]){ int ri, repeat; int i, digit, m, n, number, sum; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ m=in.nextInt(); n=in.nextInt(); /*------------------*/ for(i=m;i<=n;i++) { int a=i/100; int b=(i-a*100)/10; int c=i; sum=a*a*a+b*b*b+c*c*c; if(sum==i) System.out.println(i); } } } } 35.统计素数并求和 /*程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 输入2 个正整数m和n(1<=m,n<=500),统计并输出m 和n之间的素数的个数以及这些素数的和。 例:括号内是说明 输入: 3 (repeat=2) 1 10 (m=1, n=10) 20 35 (m=20, n=35) 14 16 (m=14, n=16) 输出: count=4, sum=17 (1到10之间有4个素数:2,3,5,7) count=3, sum=83 (20到35之间有3个素数:23, 29, 31) count=0, sum=0 (14到16之间没有素数) */ import java.util.Scanner; public class Test40023 { public static void main(String args[]) { int ri, repeat; int count,i,j,k,m,n,sum; Scanner in = new Scanner(System.in); repeat = in.nextInt(); for (ri = 1; ri <= repeat; ri++) { m = in.nextInt(); n = in.nextInt(); count = 0; sum = 0; boolean f = true; if (m == 1) { m = 2; } for (i = m; i <= n; i++) { f = true; for (j = 2; j <= i / 2; j++) { if (i % j == 0) { f = false; break; } } if (f == true) { count++; sum=sum+i; } } System.out.println(\ } } } 36.统计单词 /*输入一行字符,统计其中单词的个数。各单词之间用空格分隔,空格数可以是多个。 例:括号内是说明 输入 2 (repeat=2) Reold building room 123 Programming is fun 输出 4 3 */ import java.util.Scanner; public class Test40031{ public static void main(String []args ){ int ri, repeat,count, word,i; String line; char c; Scanner in=new Scanner(System.in); repeat=in.nextInt();in.nextLine(); for(ri=1; ri<=repeat; ri++){ line=in.nextLine(); /*---------*/ word=count=0; for(i=0;i System.out.println( count); } } } 37.输出一个整数的各位数字 /*程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 输出语句:System.out.print(digit+\例:括号内是说明 输入 3 (repeat=3) 123456 -600 8 输出 1 2 3 4 5 6 6 0 0 8 */ import java.util.Scanner; public class Test40032{ public static void main(String []args ){ int ri, repeat; int digit; long n, temp, pow; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ n=in.nextLong(); /*---------*/ if(n<0) n=-n; String s=String.valueOf(n); for(digit=0;digit System.out.println(); } } } 38.简单计算器 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 假设计算器只能进行加减乘除运算,运算数和结果都是整数, 4种运算符的优先级相同,按从左到右的顺序计算。 例:括号内是说明 输入 2 (repeat=2) 15 + 2 / 3 = (数字与运算符之间有一空格) 1 + 2 * 10 - 10 / 2 = (数字与运算符之间有一空格) 输出 5 10 */ /*补充知识:in.next()与in.nextline()的区别 in.next只接受一个字,不能接受一个带有空格的字符串,如下: 例如输入: Show me --(回车) 用next()只能得到Show,因为遇到空格表示结束,但是nextline()则要遇到回车才知道结束. 可以看一个例子,演示给大家看,如下: ----------------------------------------- import java.util.Scanner; public class Test60011{ public static void main(String []args) { String s1_1,s1_2,s2; Scanner in=new Scanner(System.in); s1_1=in.next(); System.out.println(s1_1); System.out.println(\ in.nextLine(); // 把剩余的吃掉 s2=in.nextLine(); System.out.println(s2); System.out.println(\ s1_1=in.next(); s1_2=in.next(); System.out.println(s1_1+\ \ } } ------------------------------------------- */ import java.util.Scanner; public class Test40033{ public static void main(String args[]) { int ri, repeat; int op1, op2, res; char operator; Scanner in=new Scanner(System.in); repeat=in.nextInt(); } } for(ri=1; ri<=repeat; ri++){ op1=in.nextInt(); operator =(in.next()).charAt(0); // res=op1; //res看作最后的结果 while(operator!='=') { op2=in.nextInt(); if(operator=='+') res+=op2; else if(operator=='-') res-=op2; else if(operator=='*') res*=op2; else res/=op2; operator =(in.next()).charAt(0); } /*---------*/ System.out.println(res); } 39.求1+1/2!+??1/N! //求1+1/2!+1/3!+....(用方法求n!) import java.util.Scanner; //引入 public class T50001 { public static void main(String[] args) { int ri,repeat; int i,n; double s; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1;ri<=repeat;ri++) { n=in.nextInt(); /*---------------*/ s=0; for(i=1;i<=n;i++) { s=s+1/fact(i); } System.out.println((long)(s*10000+0.5)/10000.0); } } /*---------------*/ } public static double fact(int n) { double t=1; int i; if(n==1) return 1; else { for(i=1;i<=n;i++) { t=t*i; } return t; } } 40.求a+aa+aaa+??(用方法) //求a+aa+aaa+aa?a import java.util.Scanner; public class T50002{ public static void main(String args[]) { int ri, repeat; int i, n,a; long sn; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++) { a=in.nextInt(); n=in.nextInt(); /*------------*/ sn=0; for(i=1;i<=n;i++) { sn=sn+fn(a,i); } System.out.println(sn); } } /*------------*/ public static long fn(int a,int m) { int i; long t=0; for(i=0;i<=m-1;i++) //i仅起到次数作用 { t=t*10+a; } return t; } } 41.统计一个整数中数字的个数 /*程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 它的功能是统计整数number中数字digit的个数。例如,countdigit(10090,0)的返回值是3。 例:括号内是说明 输入: 3 (repeat=3) -21902 2 345543 输出: count=2 (-21902中有2个2) count=1 (有1个2) count=0 (345543中没有2)*/ import java.util.Scanner; public class Test50003{ public static void main(String args[]){ int ri, repeat; int count; long n; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ n=in.nextInt(); /*---------*/ count=countdigit(n,2); System.out.println(\ } } /*------------*/ static int countdigit(long n,int digit) { int count=0; digit=2; String a=String.valueOf(n); int b=a.length(); for(int i=0;i 42.判断素数(用方法) 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 4 (repeat=4) 1 2 9 17 输出 NO (1不是素数) YES (2是素数) NO (9不是素数) YES (17是素数) import java.util.Scanner; public class Test50004 { public static void main(String[] args) { int ri, repeat,n; boolean flag; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++) } { n=in.nextInt(); /*---------*/ flag=prime(n); if(flag) System.out.println(\ else System.out.println(\ } } /*------------*/ public static boolean prime(int m) { boolean t=false; int i; for(i=2;i 43.统计素数并求和 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 统计并输出m 和n之间的素数的个数以及这些素数的和 (素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。 要求定义并调用函数prime(m)判断m是否为素数。 例:括号内是说明 输入: 3 (repeat=3) 1 10 (m=1, n=10) 20 35 (m=20, n=35) 14 16 (m=14, n=16) 输出: count=4, sum=17 (1到10之间有4个素数:2,3,5,7) count=3, sum=83 (20到35之间有3个素数:23, 29, 31) count=0, sum=0 (14到16之间没有素数) import java.util.Scanner; public class Test50005{ public static void main(String args[]){ int ri, repeat; int count, i, m, n, sum; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ m=in.nextInt(); n=in.nextInt(); /*---------*/ System.out.println(\ } } /*------------*/ } 44.输出Fibonacci序列 /*程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 输入2 个正整数m和n(1<=m,n<=10000),输出m 和n之间所有的Fibonacci数。 Fibonacci 序列(第1项起):1 1 2 3 5 8 13 21 ...... 要求定义并调用函数fib(n),它的功能是返回第n项Fibonacci数。 例如,fib(7)的返回值是13。 输出语句:System.out.print(f+\ 例:括号内是说明 输入: 3 (repeat=3) 1 10 (m=1, n=10) 20 100 (m=20, n=100) 1000 6000 (m=1000, n=6000) 输出: 1 1 2 3 5 8 (1到10之间的Fibonacci数) 21 34 55 89 (20到100之间的Fibonacci数) 1597 2584 4181 (1000到6000之间的Fibonacci数) */ import java.util.Scanner; public class Test50006{ public static void main(String args[]){ int ri,repeat; int i, m, n; long f; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri<=repeat; ri++){ m=in.nextInt(); n=in.nextInt(); /*---------*/ for(i=1;i<=n;i++) { f=fib(i); if(f>=m&&f<=n) System.out.print(f+\ } System.out.println(); } } /*------------*/ static int fib(int i) { int a=1,b=1,t,f=1; for(int j=3;j<=i;j++) { f=a+b; t=a+b; a=b; b=t; } return f; } } 45.求完数 /*输入2 个正整数m和n(1<=m,n<=1000),输出m 到n之间的所有完数 (完数就是因子和与它本身相等的数)。 要求定义并调用函数factorsum(number),它的功能是返回number的因子和。 例如,factorsum(12)的返回值是16(1+2+3+4+6)。 输出语句:System.out.print(i+\例:括号内是说明 输入: 2 (repeat=2) 20 500 (m=100, n=400) 1 100 (m=1, n=100) 输出: 28 496 1 6 288*/ import java.util.Scanner; public class Test50007{ public static void main(String args[]){ int ri,repeat; int i, m, n; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1;ri<=repeat;ri++){ m=in.nextInt(); n=in.nextInt(); /*---------*/ for(i=m;i<=n;i++) { factorsum(i); if (factorsum(i)==i) System.out.print(i+\ } System.out.println(); } } /*---------*/ static int factorsum(int n) { int s=0; for(int i=2;i 46.求各位数字的立方和等于它本身的数 程序填空,不要改变与输入输出有关的语句。 输入一个正整数repeat (0 输出m 到n之间的所有满足各位数字的立方和等于它本身的数。 要求定义并调用函数is(number)判断number的各位数字之立方和是否等于它本身。 输出语句:System.out.print(i+\例:括号内是说明
正在阅读:
JAVA编程习题及答案 - 完全版03-08
斜井进正洞挑顶施工方案08-09
天水红石矿业有限公司水洞沟金矿450td采选项目环境影响评价报告05-19
工艺室2013年规范考试复习题11-20
幼儿园20XX年科技节活动方案03-15
日语面试 自我介绍(通用6篇)03-28
汽车总装车间工艺流程03-10
- 清真菜谱
- 我国国民经济和社会发展十二五规划纲要(全文)
- 高三物理机械振动和机械波复习2
- 浙江省公路山岭隧道机械化装备应用指导手册 doc - 图文
- 2018届高三数学文科二轮复习:专题检测(九) 导数的简单应用
- 2015年上海市公务员录用考试《行政职业能力测验》试卷(B类)
- 七年级道德与法制下册
- 大班户外游戏教案
- 病虫害预警 - 图文
- 某养鱼场为了提高经营管理水平
- 汉中市勉县尧柏余热汽机规程 10
- 烹饪试卷
- 事业单位考试公共基础知识专项分类题库训练
- 语文:第2课 走一步,再走一步 课堂导学案(人教版 七上)
- 天汉使用手册
- 人教版小学三年级数学下册教学计划
- 房地产销售管理完全操作手册122页
- 2009年评审通过具有中学高级教师专业技术资格人员名单...
- 《15秋公共关系学》作业1
- 2017最新版监理公司三标一体管理手册
- 习题
- 答案
- 编程
- 完全
- JAVA
- 贵州大学物理练习第二章 牛顿定律试题 学生版
- 自考数据结构历年试题及答案
- 07-005专业技术人员技术职务评聘管理办法
- 塑胶产品的结构设计工艺性 - 图文
- 转盘轴承综合知识介绍
- 2004年下半年全国自考互联网及其应用真题及答案
- 发酵间桩基-施工组织设计
- 山东省地方教材小学六年级传统文化教案
- 2018-2024年中国海鲜加工食品行业市场发展态势及投资前景可行性
- 2019学年北京市延庆县第二协作区八年级上期中物理试卷含答案及解
- 坚持以人为本,加强企业思想政治工作
- 2015年12月大学英语四级真题及解析
- 中国古代的谦辞
- 浅析网络流行语的来源 、特征和发展)
- 二年级作文指导思路
- 2019年高考语文一轮复习 专题2.2 古代诗歌鉴赏(教学
- 江苏大学信息化服务手册(VPN)
- 安徽工业职业技术学院求职简历-古典版韵味 - 图文
- 拉片模板 - 图文
- 水上交通事故原因分析