一.斐波那契数列。
public class FBN1 {
public static void main(String[] args) {
int a=1;
int b=1;
int c=0;
System.out.println("斐波那契数列前20项和为:");
System.out.print(a+"\t"+b+"\t");
for(int i=1;i<=18;i++) {
c=a+b;
a=b;
b=c;
System.out.print(c+"\t");
if((i+2)%5==0)
System.out.println();
}
}
}
数组:
public class itcase_02 {
public static void main(String[] args) {
int [] arr=new int[20];
arr[0]=arr[1]=1;
for(int i=2;i<arr.length;i++) {
arr[i]=arr[i-1]+arr[i-2];
}
System.out.print("斐波那契数列前20项和为:");
for(int i=0;i<arr.length;i++) {
if(i%5==0)
System.out.println();
System.out.print(arr[i]+"\t");
}
}
}
递归:
public class itcase_02 {
public static void main(String[]
args) {
System.out.println("斐波那契数列的前20项和:");
for(int j=1;j<=20;j++) {
System.out.print(Fibo(j)+"\t");
if(j%5==0)
System.out.println();
}
}
public static int Fibo(int j) {
if(j==1||j==2) {
return 1;
}else {
return Fibo(j-1)+Fibo(j-2);
}
}
}
二.字符串中统计数字个数并输出。
import
java.util.Scanner;
public class StringTest {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s=sc.nextLine();
int small=0;
int big=0;
int number=0;
int y=0;
char[] chs=s.toCharArray();
for(int i=0;i<chs.length;i++) {
if(chs[i]>='0'&&chs[i]<='9') {
number++;
}else if(chs[i]>='a'&&chs[i]<='z') {
small++;
}else if(chs[i]>='A'&&chs[i]<='Z') {
big++;
}else
y=chs.length-small-big-number;
}
System.out.println("大写字母为:"+big+"小写字母为:"+small+"数字为:"+number+"其他字符为"+y);
}
}
public class LX2 {
public static void main(String[] args) {
String s="Hello123World";
int bigCount=0;
int smallCount=0;
int numberCount=0;
for(int x=0;x<s.length();x++) {
char ch=s.charAt(x);
if(ch>='a'&&ch<='z') {
smallCount++;
}else if(ch>='A'&&ch<='Z') {
bigCount++;
}else {
numberCount++;
}
}
System.out.println("小写字母有"+smallCount+"个");
System.out.println("大写字母有"+bigCount+"个");
System.out.println("数字有"+numberCount+"个");
}
}
方法二:
import
java.util.Scanner;
public class ArrayDemo {
public static void main(String[] args) {
int bigCount=0;
int smallCount=0;
int numberCount=0;
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个串:");
String line=sc.nextLine();
char [] chs=line.toCharArray();
for(int x=0;x<chs.length;x++) {
char ch=chs[x];
if(Character.isUpperCase(ch)) {
bigCount++;
}else if(Character.isLowerCase(ch)) {
smallCount++;
}else if(Character.isDigit(ch)) {
numberCount++;
}
}
System.out.println("大写字母:"+bigCount+"个");
System.out.println("小写字母:"+smallCount+"个");
System.out.println("数字:"+numberCount+"个");
}
}
三. 16进制数转换成8进制 要求输入输出是字符串。
import
java.util.Scanner;
public class ZhuanHuan {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入16进制数字:");
String s=sc.nextLine();
int z=Integer.parseInt(s,10);
String y=Integer.toOctalString(z);
System.out.println(y);
}
}
四.给定一组数 前后分成两半 各有序,要求排序输出。
import
java.util.Scanner;
public class QuanpaiXu {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("输入数组的长度:");
int n=sc.nextInt();
int [] a=new int[n];
System.out.println("输入数组:");
for(int i=0;i<n;i++) {
a[i]=sc.nextInt();
}
paixu(a);
System.out.println("输出排序后的数组:");
for(int i=0;i<a.length;i++) {
System.out.print(a[i]+" ");
}
}
public static void paixu(int[] a) {
int index=0;
for( int i=0;i<a.length;i++) {
if(a[i]>a[i+1]) {
index=i+1;
break;
}
}
int i=0;
int j=0;
while(i<index&&index<a.length) {
if(a[i]>a[index]) {
int temp=a[i];
a[i]=a[index];
a[index]=temp;
for(j=index;j>=i+1;j--) {
if(a[j]<a[j-1]) {
int temp1=a[j];
a[j]=a[j-1];
a[j-1]=temp1;
}
}
i++;
index++;
}else {
i++;
}
}
}
}
五. 迷宫问题 找最短的路径。
请文明使用资源,如果发现有代码错误或者不懂欢迎留言评论。