附件中包含源代码和运行文件
/*
01、 判断101-200之间有多少个素数,并输出所有素数。?
*/
class PrimeCount
{
public static void main(String[] args)
{
int count=0,i,j;
int arr[]=new int[101];
for (i=100; i<=200 ;i++ )
{
for (j=2;j<i;j++ )
{
//如果能被1和i之外的数整除,不满足则跳
出
if(i%j == 0)
break;
}
if (j>=i)
{
arr[count]=i;
count++;
}
}
System.out.println("101-200之间素数的个数为:"+count);
System.out.print("101-200之间的素数:");
for (i=0;arr[i]>0 ;i++ )
{
System.out.print(arr[i]+"\t");
}
}
}
/*
02、“将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
*/
import java.util.Scanner;
class FenJie
{
public static void main(String[] args)
{
int num,i;
System.out.print("请输入一个正整数:");
Scanner in = new Scanner(System.in);
num=in.nextInt();
System.out.print(num+"=");
for (i=2;i<=num ;i++ )
{
while(num%i==0)
{
if (num%i==0)
{
System.out.print(i+"*");
num=num/i;
}
else
break;
}
}
System.out.println("\b ");
}
}
/*
03、输入一行字符,分别统计出其中英文字母、空格、数字和其它字符
的个数。
*/
import java.io.*;
class Count
{
public static void main(String[] args)
{
int l=0,space=0,num=0,other=0;
String str=new String();
System.out.print("请输入字符串:");
//获得输入的字符串
BufferedReader stdin = new BufferedReader(new
InputStreamReader(System.in));
try
{
str = stdin.readLine();
}
catch (IOException e)
{
e.printStackTrace();
}
int count = str.length();
char [] c = new char[count];
str.getChars(0,count,c,0);
//对字符串进行判断
for(int i=0;i<count;i++)
{
if(c[i]>='a'&&c[i]<='z'||c[i]>='A'&&c[i]<='Z')
l++;
else if (c[i]==' ')
space++;
else if (c[i]>='0'&&c[i]<='9')
num++;
else
other++;
}
System.out.println("中英文字母数为:"+l);
System.out.println("空格数为:"+space);
System.out.println("数字数为:"+num);
System.out.println("其他字符数为:"+other);
}
}
/*
04、 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控
制。
*/
import java.util.Scanner;
class Sum
{
public static void main(String[] args)
{
int a; int n; long sum = 0; int temp = 0;
//获取输入的数字
Scanner sc = new Scanner(System.in);
System.out.print("请输入请输入一个0-9之间的a的值并按确认输入
下一个数字:");
a = sc.nextInt();
System.out.print("请输入请输入一个需要累加的次数:");
n = sc.nextInt();
//进行累加并打印
for(int i=1;i<=n;i++)
{
temp += a;
a *= 10;
sum += temp;
if(i==n)
{
System.out.print(temp+"=");
}
else
System.out.print(temp+"+");
}
System.out.println(sum);
}
}
/*
05、有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位
数?都是多少?
*/
class Combination
{
public static void main(String[] args)
{
int temp = 0;
int count = 0;
System.out.print("组成的数字为:");
for (int i=1;i<5 ;i++ )
{
for (int j=1;j<5 ;j++ )
{
for (int m=1; m<5;m++ )
{
if(i!=j&&j!=m&&i!=m)
{
temp = i*100+j*10+m;
count++;
System.out.print(temp
+"\t");
}
}
}
}
System.out.println();
System.out.println("一共能组成的数字个数为:"+count);
}
}
/*
06、给一个不多于5位的正整数。要求:一、它是几位数,二、逆序打
印出各位数字。
*/
import java.util.Scanner;
class Reverse
{
public static void main(String[] args)
{
int count = 0;
//获取输入的数字
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个不大于5位的正整数:");
String str = sc.nextLine();
char [] arr = str.toCharArray();
//获取位数,并逆序打印
System.out.print("这个数的逆序排列为:");
for (int i=arr.length;i>0 ;i-- )
{
System.out.print(arr[i-1]);
count++;
}
System.out.println();
System.out.println("这个数的位数为:"+count);
}
}
/*
07、输入三个整数x、y、z,把这三个数由小到大输出。
*/
import java.util.Scanner;
class Comparison
{
public static void main(String[] args)
{
System.out.println("请输入三个整数,按确认输入下一个和
结束:");
Scanner input = new Scanner(System.in);
long a = input.nextLong();
long b = input.nextLong();
long c = input.nextLong();
System.out.println("比较前:a=" + a + ",b=" + b + ",c=" + c);
long temp;
if (a > b)
{
temp = a;
a = b;
b = temp;
}
if (a > c)
{
temp = a;
a = c;
c = temp;
}
if (b > c)
{
temp = b;
b = c;
c = temp;
}
System.out.println("比较后:a=" + a + ",b=" + b + ",c=" + c);
}
}
/*
08、利用递归方法求5!。
*/
class Recursive
{
public static void main(String[] args)
{
int x = 5;
int rs = fac(x);
System.out.println("5!="+rs);
}
public static int fac(int x)
{
if (x>1)
return (x*fac(x-1));
else
return 1;
}
}
/*
09、一个5位数,判断它是不是回文数。即12321是回文数,
个位与万位相同,十位与千位相同。
*/
import java.util.Scanner;
class Palindrome
{
public static void main(String[] args)
{
System.out.println("请输入一个五位数,按确认结束:");
Scanner input = new Scanner(System.in);
String str = input.nextLine();
char [] arr = str.toCharArray();
//判断输入的数据
for(int i=0;i<5;i++)
{
if(arr[i]<48||arr[i]>57)
{
System.out.println("输入的不是一个5位数");
return;
}
}
//判断是不是一个回文数
if (arr.length==5)
{
if(arr[0]==arr[4]&&arr[1]==arr[3])
System.out.println(str+"是一个回文数");
else
System.out.println(str+"不是一个回文数");
}
else
System.out.println("输入的不是一个5位数");
}
}
/*
10、 将一个数组逆序输出,(不能使用API的方法)。
*/
import java.util.*;
class Arrary
{
public static void main(String[] args)
{
//获取输入的数组并写进字符串中
System.out.println("请输入一个数组,用,号隔开输入下一个,结束按确认键:");
Scanner input = new Scanner(System.in);
String str = input.nextLine();
//把字符串转换成字符数组并逆序输出
System.out.print("输入的数组逆序输出为:");
String[] arr = str.split(",");
for (int i=arr.length-1;i>=0 ;i-- )
{
if(i!=0)
System.out.print(arr[i]+",");
else
System.out.println(arr[i]);
}
}
}
|
|