1、对学生成绩划分等级,如果学生成绩在60分以下则成绩等级为F,如果成绩在60~70分之间则评定为D,如果成绩在70~80分之间则评定为C,如果学生成绩在80~90分之间的则评定为B,如果学生成绩在90~100分之间则评定为A,如果学生成绩为100分,则评定为S级。
public class One_Performance {
public static void main(String[] args) {
/*
对学生成绩划分等级,如果学生成绩在60分以下则成绩等级为F,
如果成绩在60~70分之间则评定为D,如果成绩在70~80分之间则
评定为C,如果学生成绩在80~90分之间的则评定为B,如果学生成
绩在90~100分之间则评定为A,如果学生成绩为100分,则评定为
S级。
* */
//打印成绩
Scanner sc = new Scanner(System.in);
System.out.println("请输入成绩:");
int score = sc.nextInt();
if(score>0&&score<60){
System.out.println("成绩为F");
}else if(score<70){
System.out.println("成绩为D");
}else if (score<80){
System.out.println("成绩为C");
}else if (score<90){
System.out.println("成绩为B");
}else if (score<100){
System.out.println("成绩为A");
}else if (score == 100){
System.out.println("成绩为S");
}
}
}
2、如果是性别(sex)为true并且薪水大于8000就输出高富帅,否则就是穷属丝,如果sex为false,并且薪水大于8000,输出白富美否则就是女席丝
public class Two_Sex {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("性别为:");
boolean sex = sc.nextBoolean();//true为男 false为女
System.out.println("薪资为:");
double salary = sc.nextDouble();
if (sex == true){
if (salary > 8000){
System.out.println("高富帅");
}else {
System.out.println("穷屌丝");
}
}else {
if (salary > 8000){
System.out.println("白富美");
}else {
System.out.println("女屌丝");
}
}
}
}
3、输入1-7,判断是周几,并且输出"今天是星期 * "
public class Three_Week {
public static void main(String[] args) {
// switch-case
Scanner sc = new Scanner(System.in);
System.out.println("请输入:");
int week = sc.nextInt();
switch (week){
case 1:
System.out.println("今天是周一");
break;
case 2:
System.out.println("今天是周二");
break;
case 3:
System.out.println("今天是周三");
break;
case 4:
System.out.println("今天是周四");
break;
case 5:
System.out.println("今天是周五");
break;
case 6:
System.out.println("今天是周六");
break;
case 7:
System.out.println("今天是周日");
break;
default:
System.out.println("输入的日期有误");
}
}
}
4、根据指定的月份,打印该月份所属的季节。
(12、1、2为冬季;3、4、5为春季;6、7、8为夏季、9、10、11位秋季)
public class Four_Season {
public static void main(String[] args) {
//根据指定的月份,打印该月份所属的季节。
//(12、1、2为冬季;3、4、5为春季;6、7、8为夏季、9、10、11位秋季)
Scanner sc = new Scanner(System.in);
System.out.println("请输入月份:");
int mouth = sc.nextInt();
switch(mouth){
case 12:
case 1:
case 2:
System.out.println("冬季");
break;
case 3:
case 4:
case 5:
System.out.println("春天");
break;
case 6:
case 7:
case 8:
System.out.println("夏天");
break;
case 9:
case 10:
case 11:
System.out.println("秋天");
break;
default:
System.out.println("输错了,重新输入");
}
}
}
5、指定一个年月日日期,判断这一天是这一年中的第几天?【难】
public class Five_WhichDay {
public static void main(String[] args) {
/*
* 指定一个年月日日期,判断这一天是这一年中的第几天?
* */
Scanner sc = new Scanner(System.in);
System.out.println("输入年:");
int year1 = sc.nextInt();
System.out.println("输入月:");
int month = sc.nextInt();
System.out.println("输入日:");
int day = sc.nextInt();
int today = 0;//today是该年中的第几天
//选择结构/分支结构 if else/switch case
if(month<1||month>12&&day>31||day<1){//合法性
System.out.println("你给定的值不合法,请从新输入");
}
if (month==1){
today = day;
}else if(month==2){
today=31+day;
}else if(month == 3){
today = 31+day+28;
}else if(month == 4){
today = 31*2+28+day;
}else if(month==5){
today=31*2+30+28+day;
}else if(month==6){
today=31*3+30+28+day;
}else if(month==7){
today=31*3+30*2+28+day;
}else if(month==8){
today=31*4+30*2+28+day;
}else if(month==9){
today=31*5+30*2+28+day;
}else if(month==10){
today=31*5+30*3+28+day;
}else if(month==11){
today=31*6+30*3+28+day;
}else if(month==12){
today=31*6+30*4+28+day;
}
//输出该天是该年中的第几天
if(year1%4==0&&year1%100!=0||year1%400==0){
if (month==1){
System.out.println(year1+"/"+month+"/"+day+"是该年的第"+today+"天");
}else {
System.out.println(year1+"/"+month+"/"+day+"是该年的第"+(today+1)+"天");
}
}else {
System.out.println(today);
}
/*if(month<1||month>12&&day>31||day<1){
System.out.println("你给定的值不合法,请从新输入");
}
int sumDay = 0;//从一月开始到当前月前一个月的所有月份的天数的累加和
int dayOfMonth = 0;//某一月的天数
for (int i = 1;i < month;i++){//遍历从一月开始到当前月前一个月的所有月份
switch (i){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
dayOfMonth = 31;
break;
case 4:
case 6:
case 9:
case 11:
dayOfMonth = 30;
break;
case 2:
if (year1%4==0&&year1%100!=0||year1%400==0){
dayOfMonth = 29;
}else {
dayOfMonth = 28;
}
break;
default:
break;
}
sumDay += dayOfMonth;
}
System.out.println(year1+"/"+month+"/"+day+"是该年的第"+(sumDay+day)+"天");*/
}
}
6、打印一个九九乘法表
public class Six_Table {
public static void main(String[] args) {
//九九乘法表
//1.外层循环控制趟数
//2.内层循环控制循环到这一趟的所有情况
for (int i = 1;i <= 9;i++){
for (int j = 1;j <= i;j++){
System.out.print(j + "*" +i +"="+i*j +" ");
}
System.out.println();
}
}
}
7、求1-100的和,求1-100的偶数和,求1-100的奇数和;
public class Seven_Summation {
public static void main(String[] args) {
//1-100的和
int i = 1;
int sum = 0;
while (i <=100){
sum += i;
i++;
}
System.out.println("1-100的和为:"+sum);
//求1-100的偶数和
int j = 0;
int sum1 = 0;
while (j <= 100){
sum1 += j;
j += 2;
}
System.out.println("1-100的偶数和:"+sum1);
//求1-100的奇数和
int m = 1;
int sum2 = 0;
while (m <= 100){
sum2 += m;
m += 2;
}
System.out.println("1-100的奇数和:"+sum2);
}
}
8、求出 1-100当中既能被3整除又能被5整除还能被2整除的和;求出 1-100当中能被3整除或者能被5整除或者能被2整除的和
public class Eight_Summation {
public static void main(String[] args) {
//求出 1-100当中既能被3整除又能被5整除还能被2整除的和
int total = 0;
for(int i=1;i<=100;i++){
if(i%30==0){
total +=i;
}
}
System.out.println("1-100当中既能被3整除又能被5整除还能被2整除的和:"+total);
// 求出 1-100当中能被3整除或者能被5整除或者能被2整除的和
total = 0;
for(int i=1;i<=100;i++){
if(i%2==0 || i%3==0 || i%5==0){
total +=i;
}
}
System.out.println("求出1-100当中能被3整除或者能被5整除或者能被2整除的和:"+total);
}
}
9、请找出[100,300]之间能被5整除的所有数,每行输出8个数,每个数之间用逗号隔开
public class Ten_Summation {
public static void main(String[] args) {
//请找出[100,300]之间能被5整除的所有数,每行输出8个数
System.out.println("[100,300]之间能被5整除的所有数:");
int count = 0;
for (int i=100;i<300;i++){
if (i%5==0){
System.out.print(i+"\t");
count++;
}
if (count==8){
System.out.println();
count=0;
}
}
//请找出[100,300]之间能被5整除的所有数,每行输出8个数,每个数之间用逗号隔开
System.out.println("[100,300]之间能被5整除的所有数");
count=0;
for (int i = 100;i <= 300;i++){//当i=7时,count=8
if (i%5==0){
System.out.print(i+" "+",");
count++;
}
if(count==8){
// \b是退格符
System.out.print("\b"+" ");//制表符跟空格写在一起,+拼接,不用再写一个print
// System.out.print(" ");
System.out.println();
count=0;
}
}
}
}
10、计算1000以内所有的质数(大于1的自然数,除了1和它本身之外不再有其他因数的自然数)。
//方法一
public class Eleven_CalculationPrime {
public static void main(String[] args) {
//for循环
//计算1000以内所有的质数(大于1的自然数,除了1和它本身之外不再有其他因数的自然数)。
/*
思路:遍历1000以内的所有数,判断每个数,哪个数是质数,打印输出
1.遍历1000以内数
2.把每个数取从2开始到比它小1的每个值模,如果模等于0,说明有其他因数,也跳出内层循环,开始循环下一个数
3.如果这个数取从2开始到比它小1的每个值模,如果没有一个模等于0,并且这个数减1等于它前边的数,即只有它本身
与自己相等,即这个数的只有1跟它本身两个因数,打印出这个数
4.开始下一个数,逻辑如上
*/
int j;
for (int i = 1;i <= 1000;i++){
if(i==2){
System.out.print(i+" ");
continue;
}
for (j = 2;j < i;j++){//i=3
if(i%j==0){//3%2==0?
break;
}
/*if (j == i-1){
System.out.print(i+" ");
}*/
}
if (j == i){
System.out.println(i + "");
}
}
}
}
public void test2(){
System.out.println("计算1000以内所有的质数");
boolean f=true; //定义一个标识
for(int i=2;i<=1000;i++){
// for(int j=2;j
11、假设有一个数字为8864,怎么分别取出它的千位,百位,十位,各位数字,各个位的和是多少?
public class Twelve_GetNum {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个四位整数:");
int num = sc.nextInt();
int unit = num%10;//取个位
int decade = num/10%10;//取十位 (num%100)/10
int hundreds = num/100%10;//取百位 (num%1000)/100
int thousand = num/1000;//取千位
System.out.println("千位:"+thousand+",百位:"+hundreds+",十位:"+decade+",个位:"+unit);
System.out.println("各个位的和是:"+(unit+decade+hundreds+thousand));
}
}
12、计算100-999之间的水仙花数.(每个位置上的数字的3次幂之和等于它本身)
public class Thirteen_Daffodil {
public static void main(String[] args) {
/*
* 计算100-999之间的水仙花数.(每个位置上的数字的3次幂之和等于它本身)
* */
for (int i = 100;i <= 999;i++){
int a = i%10;//取个位
int b = i/10%10;//(i%100)/10 取十位
int c = i/100;//百位
if(i==a*a*a+b*b*b+c*c*c) {
System.out.println(i);
}
}
}
}
13、打印一个菱形
* *** ***** ******* ***** *** *
public class Fourteen_Rhombus {
public static void main(String[] args) {
/*
*
* *
***
*****
*******
*****
***
*
* */
//先算前四行等腰三角形
//空格规律每换一行少一个,*号规律每换一行多两个,与行数的关系2n-1
for (int i = 1;i <= 4;i++){
for(int j = 1;j <= 4 - i;j++){
System.out.print(" ");
}
for (int k = 1;k <= 2 * i - 1;k++){
System.out.print("*");
}
System.out.println();
}
//后算后三行倒三角
//空格规律每换一行多一个,*号规律每换一行少两个,与行数的关系,2n-1
for (int i = 1;i <= 3;i++){
for (int j = 1;j <= i;j++){
System.out.print(" ");
}
for (int k = 5;k >= 2 * i - 1;k--){
System.out.print("*");
}
System.out.println();
}
}
}
14、Random 随机数 随机一个100以内的数,去猜这个数字是多少,猜的比这个随机数大,显示" 太大了,笨蛋 ",猜的比这个数小,显示" 太小了,小傻子 ",输入正确,显示" 针不戳,猜对了 ".只有五次机会,当五次机会用完,程序停止
//方法一
public class GuessNum {
public static void main(String[] args) {
//猜数字
int count = 0;
System.out.println("猜数游戏开始:");
Random random = new Random();
int num = random.nextInt(100);//[0,100)
while (true){
Scanner sc = new Scanner(System.in);
int guess = sc.nextInt();
if (guess == num){
System.out.println("针不戳,猜对了");
break;
}else if(guess < num){
System.out.println("太小了,小傻子");
}else if(guess > num){
System.out.println("太大了,大笨蛋");
}
count++;
if (count == 5){
System.out.println("Game Over!!!");
break;
}
}
}
}
//方法二
public class RandomTest {
public static void main(String[] args) {
System.out.println("请输入一个100以内的数:");
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 5; i++) {
int b = sc.nextInt();
Random ran = new Random();
int a = ran.nextInt(100 - 1 + 1) + 1;
if (b > a) {
System.out.println("太大了,笨蛋");
} else if (b == a) {
System.out.println("真不错,猜对了");
} else {
System.out.println("太小了,小傻子");
}
}
}
}