1.输入三边的长度,求三角形的面积和周长(海伦公式)
import java.util.Scanner;
public class Demo16 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入三角形的三个点的坐标:");
double x1=sc.nextDouble();
double y1=sc.nextDouble();
double x2=sc.nextDouble();
double y2=sc.nextDouble();
double x3=sc.nextDouble();
double y3=sc.nextDouble();
double d1=Math.pow(Math.pow((x2-x1), 2)+Math.pow((y2-y1), 2),0.5);
double d2=Math.pow(Math.pow((x3-x1), 2)+Math.pow((y3-y1), 2),0.5);
double d3=Math.pow(Math.pow((x3-x2), 2)+Math.pow((y3-y2), 2),0.5);
double s=(d1+d2+d3)/2;
double n=s*(s-d1)*(s-d2)*(s-d3);
double m=Math.pow(n, 0.5);
System.out.println("三角形的周长是"+s*2);
System.out.println("三角形的面积是"+m);
}
}
结果:
2.设计一个程序,完成(英雄)商品的购买
展示商品信息(折扣)->输入商品价格->输入购买数量->提示付款
输入付款金额->打印购买小票(扩展)
import java.util.Scanner;
public class Print3 {
public static void main(String[] args) {
System.out.println(" 英雄商城英雄列表 ");
System.out.println("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~\n");
System.out.println("编号 姓名 昵称 价格 库存 描述\n");
System.out.println("1 纳尔 迷失之牙 3500 100 丛林不会原谅盲目与无知\n");
System.out.println("2 锐雯 放逐之刃 4000 100 她是残忍高效的战士\n");
System.out.println("3 薇恩 暗夜猎手 3500 100 这个世界不想人们想象的那么美好\n");
System.out.println("4 扎克 生化魔人 3000 100 即使你没有脊柱,你也必须站起来\n");
System.out.println("5 杰斯 未来守护者 2500 100 武装着睿智与魅力,你的选择没有错\n");
System.out.println("~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~ * ~");
System.out.println("(温馨提示)请输入您要购买的英雄编号:");
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
System.out.println("请支付您的费用");
int money=sc.nextInt();
switch (n) {
case 1:
if (money>=3500) {
System.out.print("购买成功!找您"+(money-3500)+"元");
}
else {
System.out.print("余额不足!");
}
break;
case 2:
if (money>=4000) {
System.out.print("购买成功!找您"+(money-3500)+"元");
}
else {
System.out.print("余额不足!");
}
break;
case 3:
if (money>=3500) {
System.out.print("购买成功!找您"+(money-3500)+"元");
}
else {
System.out.print("余额不足!");
}
break;
case 4:
if (money>=3000) {
System.out.print("购买成功!找您"+(money-3500)+"元");
}
else {
System.out.print("余额不足!");
}
break;
case 5:
if (money>=2500) {
System.out.print("购买成功!找您"+(money-3500)+"元");
}
else {
System.out.print("余额不足!");
}
break;
}
}
}
3.请输入一个数,判断这个数是偶数还是奇数,
如果使用偶数,请判断从1到该数是3的倍数有哪些
如果是奇数,请判断从1到该数是5的倍数有哪些
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = sc.nextInt();
if ((num & 1) == 0) {
for (int i = 1; i <= num; i++) {
if (i % 3 == 0) {
System.out.print(i);
System.out.print(" ");
}
}
System.out.println();
System.out.println(num+"是偶数");
} else {
for (int i = 1; i <= num; i++) {
if (i % 5 == 0) {
System.out.print(i);
System.out.print(" ");
}
}
System.out.println();
System.out.println(num+"是奇数");
}
}
}
4.循环输入某同学S1结业考试的5门课成绩,并计算平均分
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入5门学科成绩:");
double sum = 0;
for (int i = 0; i < 5; i++) {
double a = sc.nextDouble();
sum += a;
}
System.out.print("平均分是" + sum / 5);
}
}
5.请从控制台输入一个数,是质数(素数)还是合数
提示:从2开始,只能被1和它本身除尽的数,是质数(素数)
package oupeng.week2;
import java.util.Scanner;
public class CirculateDemo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个整数:");
int s = sc.nextInt();
int count = 0;
for (int i = 1; i <= s; i++) {
if (s % i == 0) {
count++;
}
}
if (count > 2) {
System.out.println("不是素数");
} else {
System.out.println("是素数");
}
}
}
6.求1~100之间不能被3整除的数之和
package oupeng.week2.HomeWork;
public class HomeWorkDemo3 {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i < 100; i++) {
if (i % 3 != 0) {
sum += i;
}
}
System.out.println(sum);
}
}
7.打印一个表格
根据用户输入的数
1 1*1 1*1*1
2 2*2 2*2*2
....
n n平方 n立方
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo4 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入打印数的范围:");
int min=sc.nextInt();
int max=sc.nextInt();
for (int i=min;i<=max;i++){
System.out.println(i+" "+i+"*"+i+" "+i+"*"+i+"*"+i);
}
}
}
8.请使用循环完成如下图案的打印
只做了前三个
package oupeng.week2.HomeWork;
public class HomeWorkDemo31 {
public static void main(String[] args) {
for (int i=0;i<6;i++){
for (int j=0;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
System.out.println("---------------------------------------------------");
for (int i=0;i<=4;i++){
for (int j=4;j>i;j--){
System.out.print(" ");
}
for (int k=0;k<2*i-1;k++){
System.out.print("*");
}
System.out.println();
}
System.out.println("---------------------------------------------------");
for (int i=1;i<=4;i++){
for (int k=1;k<=i;k++){
System.out.print(" ");
}
for (int j=2*4-1;j>=2*i-1;j--){
System.out.print("*");
}
System.out.println();
}
}
}
9.请在控制台上输入两个数,并且输入一个符号(±*/%),使用switch语句
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo5 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入两个数:");
int a=sc.nextInt();
int b= sc.nextInt();
System.out.println("请输入一个符号:");
String s= sc.next();
switch (s){
case "+":
System.out.println(a+b);
break;
case "-":
System.out.println(a-b);
break;
case "*":
System.out.println(a*b);
break;
case "/":
System.out.println(a/b);
break;
case "%":
System.out.println(a%b);
break;
}
}
}
10.100~1000返回内,能被5和6整除的数
package oupeng.week2.HomeWork;
public class HomeWorkDemo6 {
public static void main(String[] args) {
for (int i=100;i<1000;i++){
if(i%5==0&&i%6==0){
System.out.print(i+" ");
}
}
}
}
11.输入一个年份,判断该年是否是闰年
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo7 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个年份:");
int year = sc.nextInt();
if ((0 == year % 4 && year % 100 != 0) || (0 == year % 400)) {
System.out.println("是闰年");
} else {
System.out.println("不是闰年");
}
}
}
12.健康计划
用户输入身高(m),体重(kg)
计算公式:BMI =身高/ 体重^2
BMI < 18.5:过轻
18.5≤ BMI <24:正常
24 ≤ BMI <27:过重
27 ≤ BMI < 30:轻度肥胖
30 ≤ BMI < 35:中度肥胖
BMI ≥ 35:重度肥胖
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo8 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入您的身高和体重:");
double h=sc.nextDouble();
double w= sc.nextDouble();
double BMI=w/(Math.pow(h,2));
if (BMI>=35){
System.out.println("重度肥胖");
} else if (BMI>=30) {
System.out.println("中度肥胖");
} else if (BMI>=27) {
System.out.println("轻度肥胖");
}else if (BMI>=24) {
System.out.println("过重");
} else if (BMI>=18.5) {
System.out.println("正常");
}
if (BMI<18.5){
System.out.println("过轻");
}
}
}
13.一个自然数与3的和是5的倍数,与3的差是6的倍数,这个自然数最小是几?
package oupeng.week2.HomeWork;
public class HomeWorkDemo9 {
public static void main(String[] args) {
for (int i=0;i<50;i++){
if (((i+3)%5==0)&&(i-3)%6==0){
System.out.println(i);
}
}
}
}
14.在400–500之间求一个数,它被2除余1,被5除余3,被9除余1,这个数是多少?
package oupeng.week2.HomeWork;
public class HomeWorkDemo10 {
public static void main(String[] args) {
for (int i=400;i<=500;i++){
if((i%2==1)&&(i%5==3)&&(i%9==1)){
System.out.println(i);
}
}
}
}
15.有一些四位数,百位数字都是3,十位数字都是6,并且它们既能被2整除,又能被3整除,求这样的四位数中最大的和最小的两数各是几?
package oupeng.week2.HomeWork;
import java.util.TreeSet;
public class HomeWorkDemo11 {
public static void main(String[] args) {
TreeSet a=new TreeSet();
for (int j=0;j<=9;j++) {
for (int i = 1; i <= 9; i++) {
if (((i * 1000 + 360 + j) % 2 == 0) && ((i * 1000 + 360 + j) % 3 == 0)) {
a.add(i * 1000 + 360 + j);
}
}
}
System.out.println("最小值"+a.first());
System.out.println("最大值"+a.last());
}
}
16.编程求一个四位自然数ABCD,它乘以A后变成DCBA
package oupeng.week2.HomeWork;
public class HomeWorkDemo12 {
public static void main(String[] args) {
for (int i=1000;i<=9999;i++){
if((i/1000)*i==(i%10)*1000+(i%100/10)*100+(i/100%10)*10+i/1000) {
System.out.println(i);
}
}
}
}
17.编程求出满足以下条件的三位数:它除以11所得的商等于
它各位数字之和.
package oupeng.week2.HomeWork;
public class HomeWorkDemo13 {
public static void main(String[] args) {
for (int i=100;i<=999;i++){
int bai=i/100;
int shi=i/10%10;
int ge=i%10;
if (bai+shi+ge==i/11){
System.out.println(i);
}
}
}
}
18.某数被80除所得的商,不但是7的倍数,而且用2,3,4,5,6去
除余数都是1,求这 个自然数.
package oupeng.week2.HomeWork;
public class HomeWorkDemo14 {
public static void main(String[] args) {
for (int i=1;i<10000;i++){
int s=80/i;
if (s%7==0&&(i%2==1)&&(i%3==1)&&(i%4==1)&&(i%5==1)&&(i%6==1)){
System.out.println(i);
}
}
}
}
19…有一种最简真分数,它们的分子与分母的乘积都是140,把
所有这样的真分数从小到大打印出来
package oupeng.week2.HomeWork;
public class HomeWorkDemo15 {
public static void main(String[] args) {
int index = 0;
for (int i = 1; i <= 140; i++) {
for (int j = i + 1; j <= 140; j++) {
if (i * j == 140) {
for (int x = 1; x <= i; x++) {
if ((i % x == 0) && (j % x == 0)) {
index++;
}
}
if (index == 1) {
System.out.println("分子与分母的乘积是140的真分数为:\t" + i + "/" + j);
}
index = 0;
}
}
}
}
}
20…一个五位数,若在它的后面写上一个7,得到一个六位数A,
若在它前面写上一个7,得到一个六位数B,B是A的五倍,求此
五位数.
package oupeng.week2.HomeWork;
public class HomeWorkDemo16 {
public static void main(String[] args) {
for (int i=10000;i<100000;i++){
if ((i*10+7)*5==(7*100000+i)){
System.out.println(i);
}
}
}
}
21…验证:任意一个大于9的整数减去它的各位数字之和所得
的差,一定能被9整除.
package oupeng.week2.HomeWork;
public class HomeWorkDemo17 {
public static void main(String[] args) {
System.out.println(isTrue(10));
}
public static boolean isTrue(int num){
if (num<9){
return false;
}
else {
int startNum=num;
int count=0;
while (num!=0){
int temp=num%10;
count+=temp;
num/=10;
}
if ((startNum-count)%9==0){
return true;
}
}
return false;
}
}
22.求水仙花数。
ABC = a3+b3+c^3
package oupeng.week2.HomeWork;
public class HomeWorkDemo19 {
public static void main(String[] args) {
for (int i=100;i<1000;i++){
int ge=i%10;
int shi=i/10%10;
int bai=i/100;
if (i==Math.pow(ge,3)+Math.pow(shi,3)+Math.pow(bai,3)){
System.out.println(i);
}
}
}
}
23.求 a+aa+aaa+…+aaaaaaaaa=?
其中a为1至9之中的一个数,项数也要可以指定。
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo20 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入指定的项数:");
int d=sc.nextInt();
System.out.println("请输入1-9的数:");
int a=sc.nextInt();
int a1=a;
int sum=0;
for (int i=1;i<=d;i++){
sum+= a;
a = 10*a +a1;
}
System.out.println(sum);
}
}
24.求 2/1+3/2+5/3+8/5+13/8…前20项之和?
package oupeng.week2.HomeWork;
public class HomeWorkDemo21 {
public static void main(String[] args) {
double a=2;
double b=1;
double num;
double sum=0;
for (int i=1;i<=20;i++){
num=a/b;
sum+=num;
a+=b;
b=a-b;
}
System.out.println("前20项的和为:"+sum);
}
}
25.根据完整的路径从路径中分离文件路径、文件名及扩展
名
传递一个路径 c://a//b//c.avi,返回该文件的后缀名
package oupeng.week2.HomeWork;
public class HomeWorkDemo22 {
public static void main(String[] args) {
String s = "c://a//b//c.avi";
String[] a = s.split("//");
String s1 = a[a.length - 1];
String[] b = s1.split("\\.");
System.out.println(b[b.length - 1]);
}
}
26.输入一个字符串,判断该字符串是否是回文字符串
package oupeng.week2;
import java.util.Scanner;
//回文
public class StringDemo1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s = sc.next();
int start = 0;
int end = s.length() - 1;
while (start < end) {
if (s.charAt(start) == s.charAt(end)) {
System.out.println("是回文字符串");
return;
}
start++;
end--;
}
System.out.println("不是回文字符串");
}
}
27.去掉字符串中的所有空格
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo24 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一句话:");
String s = sc.nextLine();
System.out.println(DeleteAllSpace(s));
}
public static String DeleteAllSpace(String s) {
String a = s.replaceAll(" ", "");
String s1 = a.trim();
return s1;
}
}
28.将字母全部转换为大写或小写
package oupeng.week2.HomeWork;
import java.util.Locale;
import java.util.Scanner;
public class HomeWorkDemo25 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一串字母:");
String s=sc.nextLine();
System.out.println("转大写:"+s.toUpperCase());
System.out.println("转小写:"+s.toLowerCase());
}
}
29.接收用户输入的一句英文,将其中的单词以反序输
出,“hello c sharp”→“sharp c hello”。
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo26 {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("请输入一句英文:");
String s=sc.nextLine();
D(s);
}
public static void D(String s){
String s1[]=s.split(" ");
int start=0;
int end=s1.length-1;
while(start<end){
String temp=s1[start];
s1[start]=s1[end];
s1[end]=temp;
start++;
end--;
}
for (int i=0;i<=s1.length-1;i++){
System.out.print(s1[i]);
System.out.print(" ");
}
}
}
30.从请求地址中提取出用户名和域名
http://www.163.com?userName=admin&pwd=123456
package oupeng.week2.HomeWork;
public class HomeWorkDemo27 {
public static void main(String[] args) {
String s="http://www.163.com?userName=admin&pwd=123456";
String s1[]=s.split("//");
String s2[]=s1[s1.length-1].split("\\?");
System.out.println("域名:"+s2[0]);
String s3[]= s2[s2.length-1].split("&");
String s4= s3[0].replace("userName=","用户名:");
System.out.println(s4);
}
}
31.让用户输入一句话,找出所有"呵"的位置。
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo28 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一句话:");
String s=sc.nextLine();
Search(s);
}
public static void Search(String s){
for (int i=0;i<=s.length()-1;i++){
if (s.charAt(i)=='呵'){
System.out.print(i+" ");
}
}
}
}
32.让用户输入一句话,判断这句话中有没有邪恶,如果有邪
恶就替换成这种形式然后输出,如:“老牛很邪恶”,输出后变
成”老牛很**”;
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo29 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一段话:");
String s=sc.nextLine();
String s1=s.replace("邪恶","**");
System.out.println(s1);
}
}
33.猜字游戏,计算机随机一个0~100的整数,每次用户输出字猜,
提示如下:
猜大了,重新猜
猜小了,重新猜
猜对了
package oupeng.week2.HomeWork;
import java.util.Scanner;
public class HomeWorkDemo30 {
public static void main(String[] args) {
int s=(int) (Math.random()*100+1);
System.out.println(s);
while (true){
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个数:");
int num=sc.nextInt();
if (num>s){
System.out.print("猜大了,重新猜");
}
else if (num<s){
System.out.print("猜小了,重新猜");
}
else {
System.out.print("猜对了");
break;
}
}
}
}
34.猜拳游戏,石头剪刀布。
随机数生成石头剪刀布(0:石头 1:剪刀 2:布)
package JavaSE练习题;
import java.util.Scanner;
public class Demo24 {
public static void main(String[] args) {
System.out.println("请输入你的选择:0.石头,1.剪刀,2.布");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = (int) (Math.random() * 3);
System.out.println(m);
if (n == 0) {
if (m == 2) {
System.out.println("你输了!");
} else if (m == n) {
System.out.println("平局");
} else {
System.out.println("你赢了!");
}
}
if (n == 1) {
if (m == 0) {
System.out.println("你输了!");
} else if (m == n) {
System.out.println("平局");
} else {
System.out.println("你赢了!");
}
}
if (n == 2) {
if (m == 1) {
System.out.println("你输了!");
} else if (m == n) {
System.out.println("平局");
} else {
System.out.println("你赢了!");
}
}
}
}