cs的zz暑假小学期第一周Java入门习题(大佬请自动忽略)
1.编写一个实现12+22+。。。+k^2的程序
package simple;
import java.util.Scanner;
public class simple1 {
public static void main(String[] args) {
System.out.println("请输入k的值:");
Scanner in=new Scanner(System.in);
int k=in.nextInt();
int sum=0;
for (int i = 1; i <= k; i++) {
sum+=(i+1)*(i+1);
}
System.out.println("结果为:" + sum);
}
}
2.用Java描述一个三角形,提供计算三角形面积方法。三角形的三个边长从键盘输入。
package simple;
import java.util.Scanner;
public class simple2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入三角形的三条边长:");
Scanner in=new Scanner(System.in);
double a=in.nextInt();
double b=in.nextInt();
double c=in.nextInt();
double p=(a+b+c)/2;
double area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
System.out.println("三角形的面积为:" + area);
}
}
3.假如今天是星期二,100天后将是星期几?
package simple;
public class simple3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("假如今天是星期二,");
int day=2;
day+=100;
System.out.println("则100天后是星期" + (day%7));
}
}
4.人民币的面值有100元,50元,20元,10元,5元,1元,5角,1角,5分,1分。编写程序实现从键盘输入1万元以内的任意数,然后分解成不同数量的,不同面值的人民币?
package simple;
import java.util.Scanner;
public class simple4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入1万元以内的任意数:");
Scanner in=new Scanner(System.in);
double x=in.nextDouble();
System.out.println(x + "元可分解成:");
int a=(int)(x/100);
System.out.println("100元" + a + "张");
int b=(int)((x%100)/50);
System.out.println("50元" + b + "张");
int c=(int)((x%50)/20);
System.out.println("20元" + c + "张");
int d=(int)(((x%50)-c*20)/10);
System.out.println("10元" + d + "张");
int e=(int)((x%10)/5);
System.out.println("5元" + e + "张");
int f=(int)((x%5)/1);
System.out.println("1元" + f + "张");
int g=(int)((x%1.0)/0.5);
System.out.println("5角" + g + "张");
int h=(int)((x%1.0-g*0.5)/0.1);
System.out.println("1角" + h + "张");
int m=(int)((x%0.1)/0.05);
System.out.println("5分" + m + "张");
int n=((int)(((x%0.1)-m*0.05)/0.01)+1);
System.out.println("1分" + n + "张");
}
}
5.编写程序,提示输入两点(x1,y1)和(x2,y2),然后计算两点之间的距离。
package simple;
import java.util.Scanner;
public class simple5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入 (x1,y1) (x2,y2) 两点的坐标:");
Scanner in = new Scanner(System.in);
double x1=in.nextDouble();
double y1=in.nextDouble();
double x2=in.nextDouble();
double y2=in.nextDouble();
double x= Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
System.out.println("两点间距离为:" + x);
}
}
6.已知三角形的底边和高尺寸分别是56厘米、120厘米,计算该三角形的面积?
package simple;
public class simple6 {
public static void main(String[] args) {
int d=56; int h=120;
int area=(d*h)/2;
System.out.println("三角形的面积为:" + area + "厘米");
}
}
7.从键盘输入三个整数,分别计算它们的平均值、累加和、最大值和最小值。
package simple;
import java.util.Scanner;
public class simple7 {
public static void main(String[] args) {
System.out.println("请输入三个整数:");
Scanner in=new Scanner(System.in);
int a=in.nextInt();
int b=in.nextInt();
int c=in.nextInt();
System.out.println("三个数的平均值为:" + ((a+b+c)/3) );
System.out.println("三个数的累加和为:" + (a+b+c) );
System.out.println("三个数的最大值为:" + ((a>b?a:b)>c?(a>b?a:b):c) );
System.out.println("三个数的最小值为:" + ((a<b?a:b)<c?(a<b?a:b):c) );
}
}
8.已知圆的半径为R,从键盘输入R的值,分别计算圆的面积和周长。
package simple;
import java.util.Scanner;
public class simple8 {
public static void main(String[] args) {
System.out.println("请输入圆的半径R=");
Scanner in=new Scanner(System.in);
double R=in.nextDouble();
System.out.println("圆的面积为:" + (3.14*R*R) );
System.out.println("圆的周长为:" + (2*3.14*R) );
}
}
9.编写程序生成15个随机(int类型)整数?
package simple;
public class simple9 {
public static void main(String[] args) {
System.out.println("下面是随机生成的15个整数:");
for (int i = 0; i < 15; i++) {
System.out.println( (int)( Math.random () * ( 352324 +1) ) );
}
}
}
10.有一三角形的三个顶点A(x,y)、B(x,y)和C(x,y),编写程序从键盘输入三个顶点的坐标,然后计算这个三角形的三个边长和面积?
package simple;
import java.util.Scanner;
public class simple10 {
public static void main(String[] args) {
System.out.println("请输入点 (x1,y1) 的坐标:");
Scanner in = new Scanner(System.in);
double x1=in.nextDouble();
double y1=in.nextDouble();
System.out.println("请输入点 (x2,y2) 的坐标:");
double x2=in.nextDouble();
double y2=in.nextDouble();
System.out.println("请输入点 (x3,y3) 的坐标:");
double x3=in.nextDouble();
double y3=in.nextDouble();
double a= Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
double b= Math.sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
double c= Math.sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
System.out.println("三角形的边长为:"+ (a+b+c) );
double p=(a+b+c)/2;
double area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
System.out.println("三角形的面积为:" + area);
}
}
11.编写程序,提示从键盘输入一个字符串,然后显示字符串的长度及第一个和最后一个字符?
package simple;
import java.util.Scanner;
public class simple11 {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
String str=null;
System.out.println("请输入字符串:");
str=in.nextLine();
System.out.println("字符串的长度为:" + str.length());
System.out.println("字符串第一个和最后一个字符分别为:" + str.substring(0, 1) +"," +str.substring(str.length()-1) );
}
}
12.编写程序,提示从键盘输入两个字符串,然后检测第二个字符串是否包含于第一个串中?例如,字符串“Lambda expressions let you express instances of single-method classes more compactly.”和“express”,其中“express”包含于第一个字符串内。
package simple;
import java.util.Scanner;
public class simple12 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
String str1=null;
String str2=null;
System.out.println("请输入第一个字符串:");
str1=in.nextLine();
System.out.println("请输出第二个字符串:");
str2=in.nextLine();
boolean status = str1.contains(str2);
if(status){
System.out.println("包含");
}
else{
System.out.println("不包含");
}
}
}
13.编写程序生成2016个随机(int类型)整数,然后按“升序”排序?
package simple;
public class simple13 {
public static void main(String[] args) {
int[] nums=new int[2016];
System.out.println("下面是随机生成的2016个整数:");
for (int i = 0; i < 2016; i++) {
int num = (int) ( (int)( Math.random () * ( 352324 +1) ) );
nums[i] = num;
}
for (int i = 1; i < nums.length; i++) {
for (int j = 0; j < i - 1; j++) {
if (nums[j] > nums[i]) {
int temp = nums[j];
nums[j] = nums[i];
nums[i] = temp;
}
}
}
for (int i = 0; i < 2016; i++) {
System.out.println(nums[i]);
}
}
}
14.编写一个Java类实现查找1~n之间的素数?
package simple;
import java.util.Scanner;
public class simple14 {
public static void main(String[] args) {
System.out.println("请输出n的值:");
Scanner in=new Scanner(System.in);
int n=in.nextInt();
boolean isPrime;
for(int i=1;i<n;i++){
isPrime=true;
for(int j=2;j<i;j++){
if(i%j==0){
isPrime=false;
break;
}
}
if(isPrime){
System.out.println( i );
}
}
}
}
15.阶乘函数f(n)=n!,其中n为正整数。试设计一个计算阶乘的方法,并计算f(5)和f(10)的值。
package simple;
import java.util.Scanner;
public class simple15 {
public static void main(String[] args) {
System.out.println("请输入阶乘中n的值:");
Scanner in=new Scanner(System.in);
int n=in.nextInt();
int y=1;
for (int i = 1; i <= n; i++) {
y=y*i;
}
System.out.println("f(n)="+ y );
}
}
16.有整数M,求出小于M的所有素数?
package simple;
import java.util.Scanner;
public class simple16 {
public static void main(String[] args) {
System.out.println("请输入M的值:");
Scanner in=new Scanner(System.in);
int n=in.nextInt();
System.out.println("小于M的所有素数有:");
boolean isPrime;
for(int i=1;i<n;i++){
isPrime=true;
for(int j=2;j<i;j++){
if(i%j==0){
isPrime=false;
break;
}
}
if(isPrime){
System.out.println( i );
}
}
}
}