1
【问题描述】
从键盘输入一行英文字符串,只统计字符串中出现的每个英文字母的个数。大小写字母算相同的字符,不做区分,例如a和A,算相同字符。
【输入形式】
输入一行英文字符串。
【输出形式】
以合适的形式输出每个英文字母出现的次数,没有出现的字母,不输出次数
【样例输入】
this is a pen,that is a circle.
【样例输出】
(A)Num=3
©Num=2
(E)Num=2
(H)Num=2
(I)Num=4
(L)Num=1
(N)Num=1
§Num=1
®Num=1
(S)Num=3
(T)Num=3
import java.util.Scanner;
public class AP{
public static void main(String[] args) {
char[] ap =new char[26]; //定义存放26个字母的数组
int[] num =new int[26];//定义存放字母出现次数的数组
char cha='A';
int i=0;
//将26个字母存入数组
while(i<=25)
{
ap[i]=cha;
num[i]=0;
cha++;
i++;
}
//输入
Scanner s = new Scanner(System.in);
String n = s.nextLine();
String m= n.replaceAll("\\pP","");//去掉标点符号
String p= m.replaceAll(" ","");//去掉空格
String c=p.toUpperCase();//将所有字母转换成大写
char[] ch = c.toCharArray();//将字符串转换成数组
//判断
for(i=0;i<c.length();i++) {
for(int j=0;j<26;j++)
{
if(ch[i]==ap[j])
{
num[j]++;
}
}
}
//输出
for(int h=0;h<=25;h++)
{
if(num[h]!=0)
System.out.println("("+ap[h]+")Num="+num[h]);
}
s.close();
}
}
运行结果:
2
【问题描述】从键盘输入若干个整数,编写程序,找出其中的所有素数,并显示到屏幕上。一直持续到输入0,程序结束。
【输入形式】整数
【输出形式】
9 is not sushu.
12 is not sushu.
programe is over.
【样例输入】
12
0
【样例输出】
12 is not sushu.
programe is over.
import java.util.Scanner;
public class sushu {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=1000;
int[] s=new int[n];
int i=0;
//输入数字,0结束
for(i=0;i<n;i++)
{
s[i]=sc.nextInt();
if(s[i]==0) break;