收藏 分销(赏)

华南农业大学农科Java上机实验.doc

上传人:人****来 文档编号:4362107 上传时间:2024-09-13 格式:DOC 页数:15 大小:72.54KB
下载 相关 举报
华南农业大学农科Java上机实验.doc_第1页
第1页 / 共15页
华南农业大学农科Java上机实验.doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述
实验1 创建、编译与运行Java程序 17268 计算两个整数得与 从键盘输入两个整数,计算并输出两个整数得与。 import java、util、Scanner; public class Main { public static void main(String[] args) { int a,b; Scanner input = new Scanner(System、in); a=input、nextInt(); b=input、nextInt(); int c = a + b; System、out、println(c); } } 17269 输出两个整数中得较大得值 从键盘输入两个整数,判断并输出两个整数中较大得值。 import java、util、Scanner; public class Main { public static void main(String[] args) { int a,b; Scanner input = new Scanner(System、in); a=input、nextInt(); b=input、nextInt(); if(a>b) System、out、println(a); else System、out、println(b); } } 实验2 基本数据类型、运算与表达式 18135 在显示屏上显示指定字符 要求编写一个程序,在显示屏上显示如下内容。注:类名必须为Main(大写M) C:\ABC、TXT is "file" public class Main { public static void main(String[] args) { System、out、print("C:\\ABC、TXT is \"file\""); } } 18136 计算圆得面积 由键盘输入圆得半径,计算并输出圆得面积,结果保留2位小数。注:类名必须为Main(大写M) import java、util、Scanner; import java、text、DecimalFormat; public class Main { public static void main(String[] args) { double a,b,c; Scanner input = new Scanner(System、in); a = input、nextDouble(); b = 3、14159; c = a*a*b; System、out、println(new DecimalFormat("#、##")、format(c)); } } 18138 输出三位整数得各位数字 从键盘输入一个3位得整数,要求按照:个位、十位与百位得顺序输出三个数字。输出时,每个数字占单独得一行。注:类名必须为Main(M大写) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int cr = input、nextInt(); int b, c, d; b = cr / 100; c = cr /10 %10; d = cr % 10; System、out、println(""+ d); System、out、println(""+ c); System、out、println(""+ b); } } 实验3 选择结构程序设计 18139 判断点就是否在圆上 由键盘输入一个点得坐标, 要求编程判断这个点就是否在单位圆上,点在圆上输出Y, 不在圆上输出N。使用小数点后3位精度进行判断。注:类名必须用Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); double x = input、nextDouble(); double y = input、nextDouble(); double distance = Math、sqrt(x * x + y * y); if (Math、abs(distance - 1、0)< 0、001){ System、out、println("Y"); }else { System、out、println("N"); } } } 18140 求数得位数 由键盘输入一个不多于9位得正整数,判断并输出它就是几位数。注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int a,place; a = input、nextInt(); if(a>99999999){ place=9; }else if(a>9999999){ place=8; }else if(a>999999){ place=7; }else if(a>99999){ place=6; }else if(a>9999){ place=5; }else if(a>999){ place=4; }else if(a>99){ place=3; }else if(a>9){ place=2; }else{ place=1; } System、out、println(place); } } 18141 数得排序 由键盘输入三个整数a、b、c,按从小到大得顺序输出这三个数。注:类名必须就是Main(M大写) import java、util、Scanner; public class Main { public static void main(String[] args) { int a,b,c,temp; Scanner input = new Scanner(System、in); a = input、nextInt(); b = input、nextInt(); c = input、nextInt(); if(a>b){ temp = a; a = b; b = temp; }if(a>c){ temp = a; a = c; c = temp; }if(b>c){ temp = b; b = c; c = temp; } System、out、println(a + "," + b + "," + c); } } 18142 数得整除 由键盘输入5个整数,逐个判断它们能否被27整除,能得输出“YES”,不能得输出“NO”(注意,输出时,一个判断结果占一行,5个数得判断共占5行)。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { int a,b,c,d,e; Scanner input = new Scanner(System、in); a = input、nextInt(); b = input、nextInt(); c = input、nextInt(); d = input、nextInt(); e = input、nextInt(); if(a % 27 == 0){ System、out、println("YES"); }else { System、out、println("NO"); }if(b % 27 == 0){ System、out、println("YES"); }else{ System、out、println("NO"); }if(c % 27 == 0){ System、out、println("YES"); }else{ System、out、println("NO"); }if(d % 27 == 0){ System、out、println("YES"); }else{ System、out、println("NO"); }if(e % 27 == 0){ System、out、println("YES"); }else{ System、out、println("NO"); } } } 18143 正负奇偶判断 由键盘输入非零整数x,判断该数正负,正数输出positive,负数输出negative,接着判断该数得奇偶性,奇数输出odd,偶数输出even。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { int x; Scanner input = new Scanner(System、in); x = input、nextInt(); if(x>0){ System、out、println("positive"); }else { System、out、println("negative"); }if(x % 2 == 0){ System、out、println("even"); }else{ System、out、println("odd"); } } } 18144 简单四则运算器 下面程序就是实现一个简单得四则运算器(输出结果保留2位小数)。输入时依次输入:第1个实数、运算符、第2个实数,程序根据运算符进行运算并输出结果。 在程序中得空白处填写恰当得代码,运行通过后在评判系统中提交。 import java、util、Scanner;  public class Main {      public static void main(String[] args) {          float a, b, result;          char operator;          Scanner input = new Scanner(System、in);          a = input、nextFloat();         operator = input、next()、charAt(0);          b = input、nextFloat();        switch (operator) {              case '+': result=a + b;break;             case '-':  result=a - b;break;             case '*':   result=a * b;break;            case '/': result=a / b;break;              default:                  System、out、println("error");                  return;          }          System、out、printf("%、2f\n", result);      }  } 实验4 循环结构程序设计 18145 计算阶乘 输入正整数n,计算n!,结果用长整型数表示(注n!=1*2*3*、、、*n) 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input= new Scanner(System、in); int num = 1; int x; x = input、nextInt(); for(int i = x;i > 0;i--){ num = num * i; } System、out、println(num); } } 18146 计算数列与 有数列1,3,5,7,9,11,…… ,现要求由键盘输入n,计算输出该数列得前n项与。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input= new Scanner(System、in); int sum = 0; int n; n = input、nextInt(); for(int i = 1;i <= n;i++){ sum = sum + i * 2 - 1; } System、out、println(sum); } } 18147 求最大公约数 由键盘输入两个正整数m、n(m、n用长整数表示),计算它们得最大公约数。 注:类名必须就是Main(大写M import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input= new Scanner(System、in); int m = input、nextInt(); int n = input、nextInt(); int max , min; if(m > n){ max = m; min = n; }else{ min = m; max = n; } int gcd; for(gcd= min;gcd >= 1;gcd--){ if(max % gcd == 0 && min % gcd == 0){ break; } } System、out、println(gcd); } } 18148 输出最小值 从键盘输入十个整数,输出最小值。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int[] a = new int[10]; for(int i = 0;i<a、length;i++){ a[i]= input、nextInt(); } int min = a[0]; for(int i = 0;i<a、length;i++){ if(a[i]<min) min=a[i]; } System、out、print(min); } } 18149 求素数 输出2到200之间(包括2、200)得所有素数。 注:要求1行1个素数,按由小到大得顺序输出。 提示:采用双重循环,外层循环产生2到200之间得数,内层循环对数进行判断就是否为素数。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input= new Scanner(System、in); int n = 0; for (int i = 2;i < 200;i++){ int squareRoot = (int) Math、sqrt(i); int k; for (k = 2;k <= squareRoot;k++){ if (i % k == 0){ break; } } if (k > squareRoot){ n++; System、out、printf("%d", i); System、out、println(); } } } } 18150 打印菱形 由键盘输入正数n,要求输出2*n+1行得菱形图案。要求菱形顶部无空行,菱形左边紧靠屏幕左侧。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int i,j,m,k,n; n = input、nextInt(); for(i = 1;i<=n+1;i++){ for(j = 1;j<=n-i+1;j++){ System、out、print(" "); } for(j = 1;j<=2*i-1;j++){ System、out、print("*"); } System、out、println(); } for(m = 1;m<=n;m++){ for(k = 1;k<=m;k++){ System、out、print(" "); } for(k = 1;k<=2*(n-m)+1;k++){ System、out、print("*"); } System、out、println(); } } } 实验5 数组与字符串  18152 数组得逆序输出 写一个程序,首先从键盘输入一个正整数n表示个数,然后输入n个整数,存放到数组中,最后把这些整数逆序输出。 输出时,两个整数之间用一个空格隔开。注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int n = input、nextInt(); int []a; a = new int[n]; for(int i = 0;i<a、length;i++){ a[i]=input、nextInt(); } for(int i = n-1;i>=0;i--){ System、out、print(a[i]+" "); } } } 18153 冒泡排序 编写一个程序,首先从键盘输入一个正整数n表示个数,然后输入n个整数,存放到数组中。 使用冒泡排序算法对该数组进行从大到小得排序,并输出排序之后得结果。输出时,两个整数之间用一个空格隔开。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int length = input、nextInt(); int[]array = new int[length]; for(int i = 0;i<array、length;i++){ array[i]= input、nextInt(); } for(int i = 0;i<array、length-1;i++){ for(int j = 0;j<array、length-1;j++){ if (array[j]<array[j + 1]){ int temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; } } } for (int v :array){ System、out、print(v + " ") ; } } } 18154 字符串中数字字符个数统计 编写程序,从键盘输入一行字符串,统计其中数字字符出现得次数。 说明:数字字符就是指0-9这10个字符。输入得字符串可能包含空格。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); String[] list = new String[3]; int sum = 0; for(int i = 0;i<3;i++){ list[i]=input、next(); } for(int i = 0;i<3;i++){ for(int k = 0;k<list[i]、length();k++){ char ch = list[i]、charAt(k); if(ch>='0'&&ch<='9') sum = sum+1; } } System、out、print(sum); } } 18155 输出矩阵 编写程序,首先从键盘输入两个正整数m与n。m表示二维整型数组得行数,n代表二维整型数组得列数。 然后输入整个二维数组,并输出它得转置数组。注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int m,n; m = input、nextInt(); n = input、nextInt(); int[][]list; list = new int[m][n]; for(int i = 0;i<list、length;i++){ for(int k = 0;k<list[i]、length;k++){ list[i][k] = input、nextInt(); } } for(int k = 0;k<n;k++){ for(int i = 0;i<list、length;i++){ System、out、print(list[i][k]+" "); } System、out、println(); } } } 18156 二维数组得最大值 编写程序,首先从键盘输入两个正整数m与n。m表示二维整型数组得行数,n代表二维整型数组得列数。 然后输入整个二维数组,然后找出数组中得最大值,输出该值及其行下标与列下标。 提示:如果最大值有多个,则输出第1个。 import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int m,n; m = input、nextInt(); n = input、nextInt(); int[][]array = new int[m][n]; int max = array[0][0]; int x = 0,y=0; for (int i = 0;i<array、length;i++) { for (int j = 0; j < array、length; j++) { array[i][j] = input、nextInt(); if (array[i][j] > max) { max = array[i][j]; x = i; y = j; } } } System、out、println("array" + "[" + x + "]" + "[" + y +"]" + "=" +max); } } 18157 投票程序 现在有三个候选人竞选班长,她们得姓名分别就是“Alan”、“Mike”与“Tom”。 编写一个程序。首先输入一个整数n代表总票数,然后输出n个姓名,每行输入一个姓名。 程序根据输入得姓名为候选人统计得票数,如果有非候选人姓名得选票,则计为废票。 输出投票结果,每行一个候选人。 import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int n = input、nextInt(); int a = 0,b = 0,c = 0,d = 0; String name1 = "Alan"; String name2 = "Mike"; String name3 = "Tom"; String[] list = new String[n]; for(int i = 0;i<list、length;i++) list[i]=input、next(); for(int i = 0;i<list、length;i++){ if(list[i]、equals(name1)) a = a+1; else if(list[i]、equals(name2)) b = b+1; else if(list[i]、equals(name3)) c = c+1; else d = d+1; } System、out、println("Alan:"+a); System、out、println("Mike:"+b); System、out、println("Tom:"+c); System、out、println("invalid:"+d); } } 18158 不相同得整数问题 编写程序,输入若干个整数,统计其中互不相同得整数得个数。要求如下: 首先输入一个整数n代表要输入得整数个数;然后输入n个整数,统计并输出这n个整数中互不相同得整数得个数。 注:类名必须就是Main(大写M) import java、util、Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System、in); int n = input、nextInt(); int sum = 0; int[] list = new int[n]; for(int i = 0;i<list、length;i++) list[i]=input、nextInt(); for(int i = 0;i<list、length;i++){ int j; for(j = 0;j<i;j++){ if (list[i] == list[j]){ break; } } if(j == i){ sum = sum + 1; } } System、out、print(sum); } } 实验6 方法 18159 求两个正整数得最大公约数 下面程序实现由键盘输入两个正整数x,y,计算并输出两个整数得最大公约数。 请在空白处补充填写计算最大公约数
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服