1. 给出一百分制成绩,要求输出成绩等级
【问题描述】
给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。90 分以上 为’A’,80~89 分为’B’,70~79 分为’C’,60~69 分为’D’,60 分以下为’E’。
【输入形式】
请输入一个成绩:
【输出形式】
输出成绩对应的等级
【样例输入①】
Please input a score:
20
【样例输出①】
E
【代码实现】
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Please input a score:");
int a = in.nextInt();
if(a>=90){
System.out.println('A');
}else if(a>=80){
System.out.println("B");
}else if(a>=70){
System.out.println("C");
}else if(a>=60){
System.out.println("D");
}else {
System.out.println("E");
}
}
}
2.从键盘输入若干个整数,编写程序,找出其中的所有素数。
【问题描述】从键盘输入若干个整数,编写程序,找出其中的所有素数,并显示到屏幕上。一直持续到输入0,程序结束。
【输入形式】整数
【输出形式】
9 is not sushu.
12 is not sushu.
programe is over.
【输入输出样例①】
【代码实现】
import java.util.Scanner;
public class IsPrime {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int n = input.nextInt();
while (n>=0){
if(n==0){
System.out.println("programe is over.");
break;
}
if(IsPrime(n)){
System.out.println(n+" is sushu.");
}else {
System.out.println(n+" is not sushu.");
}
n = input.nextInt();
}
}
public static Boolean IsPrime(int n){
int i=2;
for(i=2; i<=n/2; i++){
if(n%i ==0)
{
return Boolean.FALSE;
}
}
return Boolean.TRUE;
}
}
3.试找出其中的最大数和最小数。
【问题描述】编写一个程序,用户输入若干整数,试找出其中的最大数和最小数。
【输入形式】用户在第一行待输入数据个数,在第二行输入数据。
【输出形式】程序在下一行输出数据的最大值和最小值
【样例输入】
5
89 62 96 74 52
【样例输出】96 52
【代码实现】
import java.util.Scanner;
public class Min_Max {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int a = in.nextInt();
int data;
int max;
int min;
max = min = in.nextInt();
for(int i=1; i < a; i++){
data = in.nextInt();
if (max<data){
max = data;
}
if(min>data){
min = data;
}
}
System.out.println(max+" "+ min);
}
}
4.输出阶乘的和
【问题描述】
使用do-while语句编写一个Java程序,在屏幕上输出1 + 2! + 3! + …… + n!的和
【输入形式】
Please input the value of n:
输入阶乘项最后一个数n的值
【输出形式】
输出1 + 2! + 3! + …… + n!的和
【样例输入①】
3
【样例输出①】
9
【代码实现】
import java.util.Scanner;
public class jiecheng {
public static void main(String[] args) {
System.out.println("Please input a number:");
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int jie = 1;
int total = 0;
for(int i = 1; i<=n; i++){
jie = jie*i;
total += jie;
}
System.out.println("1+2!+3!+...+n!= "+total);
}
}
6.统计字符个数
【问题描述】
从键盘输入一行英文字符串,只统计字符串中出现的每个英文字母的个数。大小写字母算相同的字符,不做区分,例如a和A,算相同字符。
【输入形式】
输入一行英文字符串。
【输出形式】
以合适的形式输出每个英文字母出现的次数,没有出现的字母,不输出次数。
【样例输入①】
hello,world.
【样例输出①】
(D)Num=1
(E)Num=1
(H)Num=1
(L)Num=3
(O)Num=2
(R)Num=1
(W)Num=1
【代码实现】
import java.util.Scanner;
public class CharTimes {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String test = in.nextLine();
test = test.toUpperCase();
char[] T=test.toCharArray();
int times[] = new int[26];
for (char a :T) {
if (a >= 65) { //排除逗号等选项,以免数组越界
times[a - 65] += 1;
}
continue;
}
for(int i =0; i<26; i++) {
if (times[i] != 0) {
System.out.println("("+(char) (i + 65)+")" + "Num=" + times[i]);
}
}
}
}