每日java题目day01
1. 输入一个字符串,将输入的小写字母转换为大写字母
public class DaXie {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串:");
String s=sc.nextLine();//从键盘获取一个字符串
char a[]=s.toCharArray();//将字符串转为字符型数组
for(int i=0;i<a.length;i++) {
if(a[i]>='a'&&a[i]<='z') {
change(a[i]);//调用方法
}else {
System.out.print(""+a[i]);
}}
}
private static char change(char c) {
int a=(int)c;//将单个字符转为int型,然后-32在转为字符型。
int b=a-32;
char c1 = (char)b;
System.out.print(""+c1);
return c1;
}
}
2.递归求5!
public class DiDUi {
public static void main(String[] args) {
jiecheng(5);//调用方法
System.out.println("5!结果是:"+jiecheng(5));
}
private static int jiecheng(int i) {//创建方法
// TODO Auto-generated method stub
if(i==0) {
return 1;
}else {
return(i*jiecheng(i-1));
}
}
}
3.输入一个24的数组和一个43的数组,实现数组相乘并输出
public class Juzhen相乘 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int a[][]=new int[2][4];//定义一个2*4的数组
for(int i=0;i<2;i++)
for(int j=0;j<4;j++)
a[i][j]=sc.nextInt();//从键盘输入数组
int b[][]=new int[4][3];
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
b[i][j]=sc.nextInt();
int [][] c = new int[2][3];
for(int i=0;i<a.length;i++) {//控制a的行变量
for(int j=0;j<b[0].length;j++) {//控制b的列变量
for(int k=0;k<a[0].length;k++) {//控制a的列变量和b的行变量
c[i][j]=c[i][j]+a[i][k]*b[k][j];
}
System.out.print(c[i][j]+" ");
}
System.out.println("");
}
}
}
4.输入年月日,并判断是一年中的那一天
public class Panduantianshu {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
System.out.println("请输入年、月、日:");
int y=sc.nextInt();
int m=sc.nextInt();
int d=sc.nextInt();
int sum=0;
for(int i=1;i<m-1;i++) {
int day=0;
switch(i) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
break;
case 2:
if(y%400==0||(y%4==0&&y%100!=0)) {
day=29;
break;
}else {
day=28;
break;
}
}
sum=sum+day;
}
System.out.println("第"+sum+"天");
}
}
**
5.输入一个数字和一个字符串,求移动后的字符串,如:输入3和abcde,输出后为deabc
**
public class ShuZu {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str=sc.nextLine();
//为啥都要大写S和L?
System.out.println("请输入一个数字");
int n=sc.nextInt();
/*将字符串储存再数组中有两种方法
* 1、
* String str=“brower”;
* char[] array=new char[100];
* for(i=0;i<str.length();i++)
* array[i]=str.charAt(i);
* 这是利用charAt的方法:用于返回指定索引处的字符,索引的范围从0到length-1*/
char [] chs=str.toCharArray();
//将数字型的字符串转为char型数组
char[]c=move(chs,n);
System.out.println("移动后的数组为:"+c);
for(int i=0;i<c.length;i++)
System.out.println(c[i]);
System.out.println();
}
private static char[] move(char[] chs, int n) {
char[] arr=new char[chs.length];
int t=0;
for(int i=0;i<chs.length;i++) {
t=(i+n)%chs.length;
arr[t]=chs[i];
}
// TODO Auto-generated method stub
return arr;
}
}
本人是新手码农,有什么错误可以在评论区指出,欢迎交流!