华南农业大学农科Java上机实验.docx
《华南农业大学农科Java上机实验.docx》由会员分享,可在线阅读,更多相关《华南农业大学农科Java上机实验.docx(21页珍藏版)》请在冰豆网上搜索。
华南农业大学农科Java上机实验
实验1创建、编译与运行Java程序
17268 计算两个整数得与
从键盘输入两个整数,计算并输出两个整数得与。
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
inta,b;
Scannerinput=newScanner(System、in);
a=input、nextInt();
b=input、nextInt();
intc=a+b;
System、out、println(c);
}
}
17269 输出两个整数中得较大得值
从键盘输入两个整数,判断并输出两个整数中较大得值。
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
inta,b;
Scannerinput=newScanner(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、TXTis"file"
publicclassMain{
publicstaticvoidmain(String[]args){
System、out、print("C:
\\ABC、TXTis\"file\"");
}}
18136 计算圆得面积
由键盘输入圆得半径,计算并输出圆得面积,结果保留2位小数。
注:
类名必须为Main(大写M)
importjava、util、Scanner;
importjava、text、DecimalFormat;
publicclassMain{
publicstaticvoidmain(String[]args){
doublea,b,c;
Scannerinput=newScanner(System、in);
a=input、nextDouble();
b=3、14159;
c=a*a*b;
System、out、println(newDecimalFormat("#、##")、format(c));
}
}
18138 输出三位整数得各位数字
从键盘输入一个3位得整数,要求按照:
个位、十位与百位得顺序输出三个数字。
输出时,每个数字占单独得一行。
注:
类名必须为Main(M大写)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intcr=input、nextInt();
intb,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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
doublex=input、nextDouble();
doubley=input、nextDouble();
doubledistance=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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
inta,place;
a=input、nextInt();
if(a>99999999){
place=9;
}elseif(a>9999999){
place=8;
}elseif(a>999999){
place=7;
}elseif(a>99999){
place=6;
}elseif(a>9999){
place=5;
}elseif(a>999){
place=4;
}elseif(a>99){
place=3;
}elseif(a>9){
place=2;
}else{
place=1;
}
System、out、println(place);
}
}
18141 数得排序
由键盘输入三个整数a、b、c,按从小到大得顺序输出这三个数。
注:
类名必须就是Main(M大写)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
inta,b,c,temp;
Scannerinput=newScanner(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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
inta,b,c,d,e;
Scannerinput=newScanner(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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
intx;
Scannerinput=newScanner(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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intnum=1;
intx;
x=input、nextInt();
for(inti=x;i>0;i--){
num=num*i;
}
System、out、println(num);
}
}
18146 计算数列与
有数列1,3,5,7,9,11,……,现要求由键盘输入n,计算输出该数列得前n项与。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intsum=0;
intn;
n=input、nextInt();
for(inti=1;i<=n;i++){
sum=sum+i*2-1;
}
System、out、println(sum);
}
}
18147 求最大公约数
由键盘输入两个正整数m、n(m、n用长整数表示),计算它们得最大公约数。
注:
类名必须就是Main(大写M
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intm=input、nextInt();
intn=input、nextInt();
intmax,min;
if(m>n){
max=m;
min=n;
}else{
min=m;
max=n;
}
intgcd;
for(gcd=min;gcd>=1;gcd--){
if(max%gcd==0&&min%gcd==0){
break;
}
}
System、out、println(gcd);
}
}
18148 输出最小值
从键盘输入十个整数,输出最小值。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
int[]a=newint[10];
for(inti=0;ia[i]=input、nextInt();
}
intmin=a[0];
for(inti=0;iif(a[i]min=a[i];
}
System、out、print(min);
}
}
18149 求素数
输出2到200之间(包括2、200)得所有素数。
注:
要求1行1个素数,按由小到大得顺序输出。
提示:
采用双重循环,外层循环产生2到200之间得数,内层循环对数进行判断就是否为素数。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intn=0;
for(inti=2;i<200;i++){
intsquareRoot=(int)Math、sqrt(i);
intk;
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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
inti,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)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intn=input、nextInt();
int[]a;
a=newint[n];
for(inti=0;ia[i]=input、nextInt();
}
for(inti=n-1;i>=0;i--){
System、out、print(a[i]+"");
}
}
}
18153 冒泡排序
编写一个程序,首先从键盘输入一个正整数n表示个数,然后输入n个整数,存放到数组中。
使用冒泡排序算法对该数组进行从大到小得排序,并输出排序之后得结果。
输出时,两个整数之间用一个空格隔开。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intlength=input、nextInt();
int[]array=newint[length];
for(inti=0;iarray[i]=input、nextInt();
}
for(inti=0;ifor(intj=0;jif(array[j]inttemp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}}}
for(intv:
array){
System、out、print(v+"");
}}}
18154 字符串中数字字符个数统计
编写程序,从键盘输入一行字符串,统计其中数字字符出现得次数。
说明:
数字字符就是指0-9这10个字符。
输入得字符串可能包含空格。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
String[]list=newString[3];
intsum=0;
for(inti=0;i<3;i++){
list[i]=input、next();
}
for(inti=0;i<3;i++){
for(intk=0;kcharch=list[i]、charAt(k);
if(ch>='0'&&ch<='9')
sum=sum+1;
}
}
System、out、print(sum);
}
}
18155 输出矩阵
编写程序,首先从键盘输入两个正整数m与n。
m表示二维整型数组得行数,n代表二维整型数组得列数。
然后输入整个二维数组,并输出它得转置数组。
注:
类名必须就是Main(大写M)
importjava、util、Scanner;
publicclassMain{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System、in);
intm,n;
m=input、nextInt();
n=input、nextInt();
int[][]list;
list=newint[m][n];
for(inti=0;ifor(intk=0;klist[i][k]=input、nextInt();
}
}
for(intk=0;kfor(inti=0;iSystem、out、print(list[i][k]+"");
}
System、out、println();
}
}}