浙大Java语言程序设计编程答案

上传人:s9****2 文档编号:471299231 上传时间:2023-04-23 格式:DOC 页数:8 大小:42KB
返回 下载 相关 举报
浙大Java语言程序设计编程答案_第1页
第1页 / 共8页
浙大Java语言程序设计编程答案_第2页
第2页 / 共8页
浙大Java语言程序设计编程答案_第3页
第3页 / 共8页
浙大Java语言程序设计编程答案_第4页
第4页 / 共8页
浙大Java语言程序设计编程答案_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《浙大Java语言程序设计编程答案》由会员分享,可在线阅读,更多相关《浙大Java语言程序设计编程答案(8页珍藏版)》请在金锄头文库上搜索。

1、实验9-1 Method的使用(二)1. 将一个整数逆序输出输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个整数,将它逆序输出。要求定义并调用函数reverse(number),它的功能是返回number的逆序数。例如reverse(12345)的返回值是54321。例:括号内是说明输入4 (repeat=4) 123456 -100 -2 99输出654321-1-299import java.util.Scanner;public class Test50009 public static void main(String args) int ri,r

2、epeat; long n, res; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1;ri=repeat;ri+) n=in.nextInt(); /*-*/ res=reverse(n); System.out.println(res); /*-*/static long reverse(long number) int flag=1; long a=0,digit; if(number0)digit=number%10; /分离出个位数字a=a*10+digit; /形成当前的逆序数number=numbe

3、r/10; return flag*a; 2. 十进制转换二进制输入一个正整数 repeat (0repeat10),做 repeat 次下列运算:输入1 个正整数n,将其转换为二进制后输出。要求定义并调用函数 dectobin(n),它的功能是输出 n 的二进制。例如,调用dectobin(10),输出1010。输出语句:System.out.print(t); /t为某位二进制数例:括号内是说明输入:3 (repeat=3)151000输出:111111001000import java.util.Scanner;public class Test50010 public static v

4、oid main(String args) int ri,repeat; int i,n; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1;ri0); System.out.print(t); /本方法无返回值,需要在方法体中输出结果 说明:本题中方法dectobin(n)的输出虽然与要求有所出入,但上传是正确的。3. 用函数求三个数的最大值输入一个正整数repeat (0repeat10),做repeat次下列运算:输入三个整数a、b和c,输出其中较大的数。要求定义和调用函数max(a, b, c)找出a、b、

5、c中较大的数,函数形参a、b和c的类型是int。输入输出示例:括号内是说明输入3 (repeat=3)输入:5 8 9 (a=5, b=8)-1 -10 -5 (a=-1, b=-10)1 1 1 (a=1, b=1)输出:max(5,8,9)=9max(-1,-10,-5)=-1max(1,1,1)=1import java.util.Scanner;public class Test50011 public static void main(String args) int ri, repeat; int a,b,c,maximun; Scanner in=new Scanner(Syst

6、em.in); repeat=in.nextInt(); for (ri=1; ri= repeat; ri+) a=in.nextInt(); b=in.nextInt(); c=in.nextInt(); /*-*/maximun=maximun(a,b,c); System.out.println(max(+a+,+b+,+c+)=+maximun); /*-*/static int maximun(int a,int b,int c) int max; max=a; if(maxb)max=b; if(maxc)max=c; return max; 实验9-2 一维数组的使用4. 求平

7、均值输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数n (1n10),再输入n个整数,输出平均值。例:括号内是说明输入2 (repeat=2) 3 1 2 -65 12 2 5 4 0 输出aver=-1.0aver=4.6import java.util.Scanner;public class Test60001public static void main(String args)int ri, repeat;int i, n, sum,a;float aver;Scanner in=new Scanner(System.in);repeat=

8、in.nextInt();for(ri=1; ri=repeat; ri+) n=in.nextInt(); a=new intn; for(i=0; in; i+) ai=in.nextInt(); /这个循环输入数组各元素 /*-*/ sum=0; for(i=0; in; i+) /这个循环实现累加 sum+=ai; aver=(float)sum/n; /求平均值,注意要先把sum转换成float,再计算 System.out.println(aver=+aver);5. 求最大值及其下标输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数n (

9、1n10),再输入n个整数,输出最大值极其下标(设最大值惟一,下标从0开始)。例:括号内是说明输入3 (repeat=3) 3 1 6 43 10 8 15 1 2 5 4 0 输出max=6,index=1 (最大值6的下标是1)max=10,index=0 (最大值10的下标是0)max=5,index=2 (最大值5的下标是2)import java.util.Scanner;public class Test60002 public static void main(String args) int ri, repeat; int i, index, n, a; Scanner in=

10、new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) n=in.nextInt(); a=new intn ; for(i=0; in; i+) ai=in.nextInt(); /*-*/ index=0; /用index保存最大数的下标,开始假设a0是最大数 for(i=1; in; i+) if(aindexai) index=i; /ai与当前最大数aindex比较,若ai更大,index变为i System.out.println(max=+aindex+,index=+index); 6. 逆序

11、输出输入一个正整数repeat (0repeat10),做repeat次下列运算:输入一个正整数n (1n10),再输入n个整数,按逆序输出这些数。例:括号内是说明输入2 (repeat=2) 4 10 8 1 25 1 2 5 4 0 输出2 1 8 100 4 5 2 1import java.util.Scanner;public class Test60003 public static void main(String args) int ri, repeat; int i, n, temp,a; Scanner in=new Scanner(System.in); repeat=in.nextInt(); for(ri=1; ri=repeat; ri+) n=in.nextInt(); a=new intn; for(i=0; in; i+) ai=in.nextInt(); /*-*/ for(i=0; in/2; i+) /ai与an-1-i交换,注意交换次数 temp=ai; ai=an

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号