JAVA循环结构学校上机经常遇到的几题 笔记
package homework.class4;import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream;public class HomeWorker {public static void main(String[] args) {// 1. 从键盘循环输入正整数,当输入-1时结束,统计输入的正整数的个数。// home();// 2. 从键盘输入一个整数,判断该数是否素数。素数是只能被1 和本身整除的数。可用穷举法来判断一个数是否是素数。// home1(); // 输出100以内的所有素数 // home2(); // 九九乘法表 // home3(); // 分解质因数 // home4(); // 6.输入某年某月某日,判断这一天是这一年的第几天? // home5(); // 7.输入一个数值,以反向的数值方式进行输出 // home6(); // 8.输入一个数值,根据输入数值打印出如下结果 // 如:输入3 // 3 // 33 // 333 // home7(); // 9 输入年份和月份 第六题的升级版 // 9.输入年份和月份可以显示出当月一共有几天,年份必须大于0,月份必须为1-12之间。 // 执行情况如下 // 请输入年份: // 当年份输入错误后会出现提示,并要求重新输入年份 // 提示内容为: // 您输入的年份有误!(年份必须大于0) // 请重新输入正确的年份: // // 请输入月份: // 当月份输入错误后会出现提示,并要求重新输入月份 // 您输入的月份有误!(月份范围为1-12) // 请重新输入正确的月份: // // 所有输入完成后会显示当年当月有几天,随后询问用户是否要再次查询? // 如果用户选择是,则再次执行程序 // 如果用户选择否,则结束程序 home8();}private static void home8() {Scanner scan = new Scanner(System.in);while (true) { // int year,month,day;int feb = 29;int[] months = {31, feb, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; // List months = Stream.of(lists).collect(Collectors.toCollection(ArrayList::new)); // List months = new ArrayList<>(Arrays.asList(lists));int currentDay;System.out.println("输入年份(大于0):");int year = scan.nextInt();while (true) {if (0 > year) {System.out.println("您输入的年份有误!");System.out.println("请重新输入正确的年份:");year = scan.nextInt();continue;}break;}// 判断是否是闰年// GregorianCalendar:判断年份是否是闰年的方法// 二月boolean leapYear = new GregorianCalendar().isLeapYear(year);feb = leapYear ? 29 : 28; // months.add(1,feb); // System.err.println(months.get(1));months[1] = feb; // System.err.println(months[1]); System.out.println("请输入月份(1-12):");int month = scan.nextInt();while (true) {if (1 > month || month > 12) {System.out.println("您输入的月份有误!(月份范围为1-12)");System.out.println("请重新输入正确的月份: ");month = scan.nextInt();continue;}break;}// currentDay = (int) months.get(month-1);currentDay = months[month - 1];System.out.println("请输入输入日期:");int day = scan.nextInt();while (true) {if (1 > day || day > currentDay) {System.out.println("请输入输入日期,不大于" + currentDay + ":");day = scan.nextInt();continue;}break;}if (1 == month) {System.out.println("这一天是这一年的第" + day + "天");return;}int totalDay = 0;for (int i = 0; i < month - 1; i++) { // totalDay += (int)months.get(i);totalDay += months[i];}totalDay += day;System.out.println("这一天是这一年的第" + totalDay + "天");System.out.println("是否要再次查询?(y/n、任意键退出)");String str = scan.next();if (str.equals("y")){continue;}break;}}private static void home7() {int n = 6,temp=n;for (int i = 1; i < n+1; i++){for (int j = 1;j<=i;j++){System.out.print(n);}System.out.println();}}// 例如:输入54321 输出12345 // 输入879 输出978private static void home6() {int inputVal = 54321, n;for (int i = inputVal; i > 0 ;i /=10){n = i % 10;System.out.print(n);}}private static void home5() { // String str = "2019-12-13"; // String[] split = str.split("-"); // int year = Integer.parseInt(split[0]); // int month = Integer.parseInt(split[1]); Scanner scan = new Scanner(System.in);System.out.println("输入年份:");int year = scan.nextInt();System.out.println("请输入月份(1-12):");int month = scan.nextInt();System.out.println("请输入输入日期:");int day = scan.nextInt();//判断是否是闰年//GregorianCalendar:判断年份是否是闰年的方法boolean leapYear = new GregorianCalendar().isLeapYear(year);// 2月int feb = leapYear?29:28; // System.out.println(feb);int[] months={31,feb,31,30,31,30,31,31,30,31,30,31};int currentDay;while(true){if (1 > month || month > 12){System.out.println("请输入月份(1-12):");month = scan.nextInt();continue;}currentDay = months[month-1];if (1 > day || day > currentDay){System.out.println("请输入输入日期,不大于"+currentDay+":");day = scan.nextInt();continue;}break;}if (1 == month){System.out.println("这一天是这一年的第"+ day +"天");return;}int totalDay = 0;for (int i = 0; i < month-1; i++){totalDay += months[i];}totalDay += day;System.out.println("这一天是这一年的第"+ totalDay +"天");}private static void home4() {int n = 13;if (1 == n){System.out.println(n);return;}for (int i = 2; i <= n; i++){while (n % i == 0){if (i == n){System.out.println(n);break;}else {System.out.print(i + "*");n /= i;}}}}private static void home3() {System.out.println("1\t\t2\t\t3\t\t4\t\t5\t\t6\t\t7\t\t8\t\t9\t");System.out.println("--------------------------------------------------------------------------------");for (int i = 1; i < 10; i++){for (int j = i; j < 10;j++){ // if (i > j){ // System.out.println("\t"); // continue; // }System.out.print(i + "*" + j + "=" + i*j + "\t");}System.out.println();for (int k = 0; k < i; k++){System.out.print("\t\t");}}}/*** 判断一个数是不是素数:只能被1和本身整除* @param n* @return*/private static boolean numberIsPrime(int n) {for (int i = 2; i <= Math.sqrt(n); i++) {if (n % i == 0) {return false;}}return true;}private static void home2() {int tmp = 100;boolean flag = true;// if(tmp<1){ // System.out.print("该数不是质数!"); // return; // } // System.out.println(Math.sqrt(tmp));if (1 == tmp){return;}for (int i = 2; i <= tmp; i++){if (numberIsPrime(i)){System.out.print(i+"\t");}}}private static void home1() {int tmp = 100;boolean flag = true;if(tmp==1){System.out.print("该数是质数!");return;} // System.out.println(Math.sqrt(tmp));// 开根号 // for(int i = 2 ; Math.sqrt(tmp/2) >=i ; i ++ ){for(int i = 2 ; Math.sqrt(tmp) >= i ; i ++ ){if(tmp%i==0){System.out.print("该数不是质数!");flag = false;break;}}if (false){System.out.print("该数是质数!");}}// 1. 从键盘循环输入正整数,当输入-1时结束,统计输入的正整数的个数。private static void home() {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个整数:");int val = scanner.nextInt();int count = 0;while (val != -1){count++;System.out.println("请输入一个整数:");val = scanner.nextInt();}System.out.println(count);} }
转载于:https://www.cnblogs.com/my-ordinary/p/11578973.html
JAVA循环结构学校上机经常遇到的几题 笔记相关推荐
- java 循环结构和常用的类 总结笔记
这里主要总结:Number 类.Character 类.String 类.StringBuffer 和 StringBuilder 类 java循环结构比较简单,这里只总结Java 增强 for 循环 ...
- java循环结构教程
循环的语法我发一下: while( 布尔表达式 ) {//循环内容} do {//代码语句}while(布尔表达式); for(初始化; 布尔表达式; 更新) {//代码语句} 今天录制了一下java ...
- Java 循环结构 for while
Java 循环结构 for, while 及 do-while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: • while ...
- c 结构体在声明时赋值_Java基础知识 初识Java 循环结构进阶 数组 数据类型 各种运算符...
今天给大家带来的是初级Java基础部分的知识:包括初始Java.变量.常量.数据类型.运算符.各种选择结构.循环结构.数组等Java的基础语法部分!最后还有****循环结构的进阶****,步骤超详细, ...
- Java 循环结构 - for, while 及 do...while
顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: while循环 do-while循环 for循环 在Java5中引入了一种主要 ...
- Java循环结构编程练习
继续发些Java学习过程中的编程练习. 1.编程作业 猜字游戏:猜一个介于1到10之间的数字,然后将猜测的值与实际值继续比较,并给出提示,以便能更接近实际值,直到猜中为止. 2.编程要点分析 (1)随 ...
- Java循环结构与条件语句
循环与条件 前言 一.循环结构 1.while循环 2.do...while 3.for循环 3.1 简单for循环 3.1 foreach(增强for循环) 二.条件语句 1.if...else 2 ...
- 猿创征文|java循环结构
java有三种循环结构,分别是for循环结构.while循环结构.do-while选择结构,先来说说for循环. for循环结构 for循环结构的基本写法如下: for(初始化语句;条件判断语句;条件 ...
- Java循环结构—条件循环
文章目录 一.为什么要用循环 (一) 老实用笨方法 (二)采用循环结构方法 1.采用计数循环(for循环) 2.采用条件循环(while循环) 二.条件循环 (二)前测试循环-while循环 1.语法 ...
最新文章
- 只要5分钟用数据可视化带你看遍11月份新闻热点事件
- puppet aix之自动化用户管理
- pmp知识点详解-项目大牛整理_PMP核心知识点—第五章:项目范围管理(1)
- AI:2021年WAIC世界人工智能大会2021年7月9日《可信AI论坛》、《AI引领探索保险科技新价值》、《产研共育·数智未来》等论坛演讲内容分享及解读
- CodeForces - 1295E Permutation Separation(线段树+二维偏序,好题)
- linux配置服务器心得体会,linux 学习 linux上搭建dhcp服务器
- SQL Server需要监控哪些计数器 ---指尖流淌
- Python提取Word文档中所有超链接地址和文本
- 简单理解操作系统中的PV操作
- Magento版本比较:Magento社区版 vs Magento企业版本 vs MEC Magento专业版2
- Android之四大组件、六大布局、五大存储
- 光线跳线转接太多,断网了
- 周志明:终于薅住了这位 “社恐”作者的小辫子
- Pytorch教程[03]transforms
- 【时间之外】浏览器分屏使用技巧
- Java 8计算两个日期之间的月份
- 微信开发者模式php,php 开启微信公众号开发者模式
- beeline执行sql语句_beeline执行sql脚本我世界开挂
- html5指南针,HTML5指北针(指南针)网页应用示例
- Win11找不到wt.exe如何解决?Win11终端打不开怎么办?
热门文章
- html 清除浮动怎么写,清除浮动的css写法有哪些
- 每天一道LeetCode-----有效回文串
- vscode较详细注释的汇编语言hello world 输出程序,第一个汇编程序
- mysql实体_mysql实体关系
- mysql 的 外连查询
- java 如何检测死锁_Java如何查看死锁
- 频域补零上采样_AURIX 学习笔记(12)频域法互相关实现超声测距
- 获取版本号_Windows 10 2004迎来KB4577063更新 版本号升至19041.546
- [BUUCTF-pwn]——[BJDCTF 2nd]r2t3
- x265-bitstream.h