Java基础习题练习

1、编写程序,判断给定的某个年份是否是闰年。

      闰年的判断规则如下:

      (1)若某个年份能被4整除但不能被100整除,则是闰年。

      (2)若某个年份能被400整除,则也是闰年。

/*** 1,编写程序,判断给定的某个年份是否是闰年。*       闰年的判断规则如下:*       (1)若某个年份能被4整除但不能被100整除,则是闰年。*       (2)若某个年份能被400整除,则也是闰年。*/
package com.demo3;
import java.util.Scanner;public class Practice1 {public static void main(String[] args){System.out.println("请输入年份");int year;   //定义输入的年份名字为“year”Scanner scanner = new Scanner(System.in);year = scanner.nextInt();if(year <0||year>3000){System.out.println("年份有误,程序退出!");System.exit(0);} else if ((year%4==0)&&(year%100!=0)||(year%400==0)) {System.out.println(year+" is bissextitle");}else {System.out.println(year+" is not bissextitle");}}}

2、给定一个百分制的分数,输出相应的等级。

        90分以上        A级

        80~89          B级

        70~79          C级

        60~69          D级

        60分以下        E级

/*** 给定一个百分制的分数,输出相应的等级。*         90分以上        A级*         80~89          B级*         70~79          C级*         60~69          D级*         60分以下        E级*/package com.demo3;import java.util.Scanner;public class Practice2 {public static void main(String[] args){System.out.println("请输入一个分数:");//定义输入的分数为“mark”,且分数会有小数double mark;Scanner scanner = new Scanner(System.in);mark = scanner.nextDouble();//判断是否有输入错误。if(mark<0||mark>100){System.out.println("分数输入有误!");System.exit(0);}/*判断分数的等级90分以上者A级, 80~89分者 B级,70~79分者 C级, 60~69者 D级,60分以下 E级 */if(mark>=90){System.out.println("this mark is grade A");} else if (mark>=80) {System.out.println("this mark is grade B");} else if (mark>=70) {System.out.println("this mark is grade C");} else if (mark>=60) {System.out.println("this mark is grade D");}else {System.out.println("this mark is grade E");}}
}

3、编写程序求 1+3+5+7+……+99 的和值。

/*** 编写程序求 1+3+5+7+……+99 的和值*/
package com.demo3;public class Practice3 {public static void main(String[] args){int number = 1; //初始值1,以后再+2递增上去int sum1 = 0,sum2=0,sum3=0;//1+2+3+4+...+100的值for(int i=1;i<=100;i++){sum1 = sum1+i;}System.out.println("1+2+3+4+...+100值为:"+sum1);for(int j=1;j<100;j+=2){sum2 = sum2+j;}System.out.println("1+3+5+7+...+99值为:"+sum2);for(int t=2;t<=100;t+=2){sum3 = sum3+t;}System.out.println("2+4+6+8+...+100值为:"+sum3);}
}

4、利用for循环打印 9*9  表

1*1=1

1*2=2  2*2=4

1*3=3  2*3=6  3*3=9

1*4=4  2*4=8  3*4=12  4*4=16

1*5=5  2*5=10  3*5=15  4*5=20  5*5=25

1*6=6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36

1*7=7  2*7=14  3*7=21  4*7=28  5*7=35  6*7=42  7*7=49

1*8=8  2*8=16  3*8=24  4*8=32  5*8=40  6*8=48  7*8=56  8*8=64

1*9=9  2*9=18  3*9=27  4*9=36  5*9=45  6*9=54  7*9=63  8*9=72  9*9=81

/*** 利用for循环打印 9*9  表*/
package com.demo3;public class Practice4 {public static void main(String[] args){System.out.println();for(int i=1;i<10;i++){for(int j=1;j<10;j++){if(j>i)break;System.out.print(" "+j+"*"+i+"="+i*j);}System.out.println();}}
}

5、输出所有的水仙花数

所谓水仙花数是指一个数3位数,其各各位数字立方和等于其本身,

   例如: 153 = 1*1*1 + 3*3*3 + 5*5*5

/*** 输出所有的水仙花数,所谓水仙花数是指一个数3位数,其各各位数字立方和等于其本身,*    例如: 153 = 1*1*1 + 3*3*3 + 5*5*5*/
package com.demo3;public class Practice5 {public static void main(String[] args){System.out.println("以下是所有的水仙花数:");int number = 100; //由于水仙花是三位数所以由100起算int i,j,k; //i j k分别为三位数的百位 十位 个位for(int sum;number<1000;number++){i=number/100;j=(number-i*100)/10;k=number-i*100-j*10;sum = i*i*i+j*j*j+k*k*k;if(sum==number){System.out.println(number+"是一个水仙花数");}}}
}

6、求  a+aa+aaa+.......+aaaaaaaaa=?

      其中a为1至9之中的一个数,项数也要可以指定。

/*** 求  a+aa+aaa+.......+aaaaaaaaa=?*       其中a为1至9之中的一个数,项数也要可以指定。*/
package com.demo3;import java.util.Scanner;public class Practice6 {public static void main(String[] args){int a; //定义输入的数字int cnt; //定义最后的一项有多少个数字Scanner scanner = new Scanner(System.in);System.out.println("请输入一个1~9的值进行相加:");a=scanner.nextInt();System.out.println("请问要相加多少项:");cnt= scanner.nextInt();int sum = 0;int a1 = a;//用来保存a1的初始值for(int i=1;i<=cnt;i++){sum = sum+a;a=a*10+a1; //这表示a的下一项//每次 a 的下一项都等于前一项*10,再加上刚输入时的 a ;注意,这时的 a 已经变化了。}System.out.println("此时的值为:"+sum);}
}

7、求 2/1+3/2+5/3+8/5+13/8.....前20项之和?

/*** 求 2/1+3/2+5/3+8/5+13/8.....前20项之和?*/
package com.demo3;public class Practice7 {public static void main(String[] args){double sum=0;double fenzi =2.0,fenmu=1.0; // 初始的分子 (fenZi)=2,分母(fenMu)=1for(int i=1;i<=20;i++){sum = sum+fenzi/fenmu;fenmu = fenzi; //下一项的分母 = 上一项的分子fenzi=fenzi+fenmu; //下一项的分子 = 上一项的分子加分母}System.out.println("2/1+3/2+5/3+8/5+13/8.....前20项之和:"+sum);}
}

8、利用程序输出如下图形:

   *

   * * *

   * * * * *

   * * * * * * *

   * * * * *

   * * *

   *

/*** 利用程序输出如下图形:*    **    * * **    * * * * **    * * * * * * **    * * * * **    * * **    **/package com.demo3;public class Practice8 {public static void main(String[] args){for(int i=1;i<=13;i+=2){for(int j=1;j<=i&&i+j<=14;j++){System.out.print("* ");}System.out.println();//换行}}
}

9、计算圆周率

PI=4-4/3+4/5-4/7.......

  打印出第一个大于 3.1415小于 3.1416的值

/*** 计算圆周率*   PI=4-4/3+4/5-4/7.......*   打印出第一个大于 3.1415小于 3.1416的值*/package com.demo3;public class Practice9 {public static void main(String[] args){double pi = 0; //初始定义值double fenzi = 4; //分子为4double fenmu = 1; //第一个4,可看作分母为1 的分式,以后的分母每次递增2for (int i=0;i<=1000000000;i++){   运行太久,可以减少循环次数会快很多,只是精确度小些pi = pi+fenzi/fenmu;fenzi =-1*fenzi; //每项分子的变化是+4,-4,+4,-4 ....fenmu = fenmu+2; //分母的变化是1,3,5,7, ....   每项递加2}System.out.println(pi);}
}

此输出结果并不精确,圆周率为无限不循环小数;

10、输入一个数据n,计算斐波那契数列(Fibonacci)的第n个值

1  1  2  3  5  8  13  21  34

  规律:一个数等于前两个数之和

//计算斐波那契数列(Fibonacci)的第n个值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/587330.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录第28天 | 93.复原IP地址 、 78.子集 、 90.子集II

一、前言&#xff1a; 参考文献&#xff1a;代码随想录 今天的主题内容是回溯算法&#xff0c;这一章的干货很多&#xff0c;我需要慢慢的品味&#xff0c;不单单只是表象&#xff0c;还需要研究深层原理。 二、复原IP地址 1、思路&#xff1a; &#xff08;1&#xff09;…

通义灵码智能编程助手

通义灵码是阿里云出品的一款基于通义大模型的智能编码辅助工具&#xff0c;提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力&#xff0c;并针对阿里云 SDK/OpenAPI 的使用场景调优&#xff0c;助力开发者…

Git命令(1)[删除,恢复与移动]

文章目录 1.删除文件1.1命令----rm <filename>1.2命令----git rm <filename>1.1命令----git rm <filename> -f 2.恢复文件2.1命令----git restore <filename>2.1命令----git restore --staged <filename> 3.重命名文件3.1命令----mv <oldFile…

网络编程详解(select poll epoll reactor)

1. 客户端服务器建立连接过程 1.1 编写一个server的步骤是怎么样的&#xff1f; int main(){int listenfd, connfd;pid_t childpid;socklen_t clilen;struct sockaddr_in cliaddr, servaddr;listenfd socket(AF_INET, SOCK_STREAM, 0);bzero(&servaddr, sizeof(servaddr…

12313124

c语言中的小小白-CSDN博客c语言中的小小白关注算法,c,c语言,贪心算法,链表,mysql,动态规划,后端,线性回归,数据结构,排序算法领域.https://blog.csdn.net/bhbcdxb123?spm1001.2014.3001.5343 给大家分享一句我很喜欢我话&#xff1a; 知不足而奋进&#xff0c;望远山而前行&am…

中科驭数超低时延网络解决方案入选2023年度金融信创优秀解决方案

近日&#xff0c;由中国人民银行领导、中国金融电子化集团有限公司牵头组建的金融信创生态实验室发布「2023年度第三期金融信创优秀解决方案」&#xff0c;中科驭数超低时延网络解决方案从众多方案中脱颖而出&#xff0c;成功入选&#xff0c;代表了该方案的技术创新和金融实践…

【Python系列】数据遍历

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

糖尿病新世界杂志糖尿病新世界杂志社糖尿病新世界编辑部2023年第24期目录

论著 苦参汤加味坐浴熏洗联合胰岛素对糖尿病患者患炎性外痔的临床疗效探讨 孙孝仁;林星鹏;李密; 1-4 《糖尿病新世界》投稿&#xff1a;yixuebj126.com 尿蛋白、尿微量蛋白指标联合检测在糖尿病患者早期肾损伤中的诊断价值 郑艳斌;卢永芳;徐小华;王跃华; 5-8 血清…

【MySQL系列】使用 ALTER TABLE 语句修改表结构的方法

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

SVM简介 详细推导 核函数 线性可分 非线性可分

注意&#xff1a;由于该文章由jupyter nbconvert导出&#xff0c;若单独执行代码可能出现变量找不到或者没有导入库的情况&#xff0c;正确的做法是将所有的代码片段按顺序放到一个.py文件里面或者按顺序放入一个.ipynb文件的多个代码块中。 SVM(Support Vector Machine) Vap…

yolov5关键点检测-实现溺水检测与警报提示(代码+原理)

基于YOLOv5的关键点检测应用于溺水检测与警报提示是一种结合深度学习与计算机视觉技术的安全监控解决方案。该项目通常会利用YOLOv5强大的实时目标检测能力&#xff0c;并通过扩展或修改网络结构以支持人体关键点检测&#xff0c;来识别游泳池或其他水域中人们的行为姿态。 项…

程序员找不到接单平台?看这篇,全搞定!赶紧收藏!

天空一声巨响&#xff0c;程序员闪亮登场&#xff0c;早九晚五996&#xff0c;一看工资886&#xff01;心寒&#xff01;真正的心寒&#xff01;咱程序员看似风光无限好&#xff0c;只不过只有咱局中人才知道现在工资有多少&#xff0c;养家糊口真的很难诶&#xff01; 但是嘛&…