1、mooc 零基础学习java语言习题答案第一周温度转换(5分)题目内容:写一个将华氏温度转换成摄氏温度的程序,转换的公式就是:F = (9/5)*C + 32其中C表示摄氏温度,F表示华氏温度。程序的输入就是一个整数,表示华氏温度。输出对应的摄氏温度,也就是一个整数。提示,为了把计算结果的浮点数转换成整数,需要使用下面的表达式:(int)x;其中x就是要转换的那个浮点数。注意:除了题目要求的输出,不能输出任何其她内容,比如输入时的提示,输出时的说明等等都不能。这道题目要求转换后的数字,程序就只能输出这个数字,除此之外任何内容都不能输出。输入格式:一个整数。输出格式:一个整数。输入样例:100输
2、出样例:37程序代码import java、util、Scanner;public class Main public static void main(String args) / TODO Auto-generated method stub int F; int C; Scanner in=new Scanner(System、in); F =in、nextInt(); C =(F-32)*5/9; System、out、println(C); in、close(); 第二周1时间换算(5分)题目内容:UTC就是世界协调时,BJT就是北京时间,UTC时间相当于BJT减去8。现在,您的程序
3、要读入一个整数,表示BJT的时与分。整数的个位与十位表示分,百位与千位表示小时。如果小时小于10,则没有千位部分;如果小时就是0,则没有百位部分;如果分小于10分,需要保留十位上的0。如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。有效的输入范围就是0到2359,即您的程序不可能从测试服务器读到0到2359以外的输入数据。您的程序要输出这个时间对应的UTC时间,输出的格式与输入的相同,即输出一个整数,表示UTC的时与分。整数的个位与十位表示分,百位与千位表示小时。如果小时小于10,则没有千位部分;如果小时就是0,则没有百位部分;如果分小于10分,需要保留十
4、位上的0。提醒:要小心跨日的换算。输入格式:一个整数,表示BJT的时与分。整数的个位与十位表示分,百位与千位表示小时。如果小时小于10,则没有千位部分;如果小时就是0,则没有百位部分;如果小时不就是0而且分小于10分,需要保留十位上的0。输出格式:一个整数,表示UTC的时与分。整数的个位与十位表示分,百位与千位表示小时。如果小时小于10,则没有千位部分;如果小时就是0,则没有百位部分;如果小时不就是0而且分小于10分,需要保留十位上的0。输入样例:933输出样例:133程序代码import java、util、Scanner;public class Main public static vo
5、id main(String args) / TODO Auto-generated method stub int UTC; int BJT; int m,h; Scanner in=new Scanner(System、in); BJT =in、nextInt(); m =BJT%100; h =BJT/100-8; if(BJT=0&h24&m60) if(h=11&RS=0&m=1000000) while(m!=0) int p; n=m%10; if(n%2=s%2) p=1; else p=0; s=s+1; /sum=sum+1; f=(int) (f+p*Math、pow(1
6、0, s-2); m=m/10; while(f!=0) int p; p=f%10; sum=(int) (sum+p*Math、pow(2, t); t=t+1; f=f/10; System、out、println(sum); in、close(); 第四周1素数与(5分)题目内容:我们认为2就是第一个素数,3就是第二个素数,5就是第三个素数,依次类推。现在,给定两个整数n与m,0n=m=200,您的程序要计算第n个素数到第m个素数之间所有的素数的与,包括第n个素数与第m个素数。注意,就是第n个素数到第m个素数之间的所有的素数,并不就是n与m之间的所有的素数。输入格式:两个整数,第一个表
7、示n,第二个表示m。输出格式:一个整数,表示第n个素数到第m个素数之间所有的素数的与,包括第n个素数与第m个素数。输入样例:2 4输出样例:15程序代码import java、util、Scanner;public class Main public int IsOrNotprime(int x) int j; int n; n= x/2; for(j=2;j0&n=m&m=200) for(i=2;i=n&j=-100000&n=100000) if(n0;count-) int mid=1; for(int j=1;jcount;j+) mid*=10; if(isZero=1) Syst
8、em、out、print( ); v=n/mid; n%=mid; if(v=0&count=1) v=n; isPut=0; isZero=1; switch(v) case 0: System、out、print(ling); continue; case 1: System、out、print(yi); continue; case 2: System、out、print(er); continue; case 3: System、out、print(san); continue; case 4: System、out、print(si); continue; case 5: Syste
9、m、out、print(wu); continue; case 6: System、out、print(liu); continue; case 7: System、out、print(qi); continue; case 8: System、out、print(ba); continue; case 9: System、out、print(jiu); continue; 第五周1多项式加法(5分)题目内容:一个多项式可以表达为x的各次幂与系数乘积的与,比如:2x6+3x5+12x3+6x+20现在,您的程序要读入两个多项式,然后输出这两个多项式的与,也就就是把对应的幂上的系数相加然后输出。
10、程序要处理的幂最大为100。输入格式:总共要输入两个多项式,每个多项式的输入格式如下:每行输入两个数字,第一个表示幂次,第二个表示该幂次的系数,所有的系数都就是整数。第一行一定就是最高幂,最后一行一定就是0次幂。注意第一行与最后一行之间不一定按照幂次降低顺序排列;如果某个幂次的系数为0,就不出现在输入数据中了;0次幂的系数为0时还就是会出现在输入数据中。输出格式:从最高幂开始依次降到0幂,如:2x6+3x5+12x3-6x+20注意其中的x就是小写字母x,而且所有的符号之间都没有空格,如果某个幂的系数为0则不需要有那项。输入样例:6 25 33 121 60 206 25 32 121 60
11、20输出样例:4x6+6x5+12x3+12x2+12x+40程序代码import java、util、Scanner;public class Main public static void main (String args) Scanner in = new Scanner(System、in); int array = new int101; int max = 0; int times = 0; while(in、hasNext() int x = in、nextInt(); int num = in、nextInt(); arrayx += num; if(x = 0) times
12、+; if(times = 2) break; for(int j = 0;j max) max = j; for(int i = max;i 0; i-) if(arrayi 0) if(i != max) System、out、print(+); if(arrayi != 1) System、out、print(arrayi); System、out、print(x); /幂次为1时不用输出幂次 if(i != 1) System、out、print(i); else if(arrayi 0,正系数先输出+ if(array0 0) System、out、print(+); System、out、print(array0); 第六周1单词长度(5分)题目内容:您的程序要读入一行文本,其中以空格分隔为若干个单词,以、结束。您要
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1