几道java题的解答


1.一个4位数的9倍是该4位数的反序数。如:4位数1089的9倍是9801。9801是1089的反序数。设计一个java程序,打印出所有具有这种特性的4位数。
2.设计一个java程序,打印出4×4矩阵两对角线元素之和。
3.设计一个java程序,判断一个字符串是否是回文。回文是指:字符串从左向右读与从右向左读是一样的。
4.设计一个java的递归程序,打印出2+4+6+…+100之和。

/*
* 1.一个4位数的9倍是该4位数的反序数。如:4位数1089的9倍是9801。9801是1089的反序数。设计一个java程序,打印出所有具有这种特性的4位数。
* */
public class Test2 {
public static void main(String[] args){
for(int i=1000;i<9999;i++){
int t1=i/1000,t2=(i%1000)/100,t3=(i%1000%100)/10,t4=i%1000%100%10;
if(i*9==t4*1000+t3*100+t2*10+t1){
System.out.print(i);
}
}
}
}

/*

2.设计一个java程序,打印出4×4矩阵两对角线元素之和。

*/

public class B {

public static void main(String[] args) {
int a[][]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
int sum = 0;
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
if(i==j || i+j==3)//规律特性
{
System.out.println("("+i+","+j + ")");//打印坐标
sum +=a[i][j]; //求和
}
}
}
}

}

/*
* 3.设计一个java程序,判断一个字符串是否是回文。回文是指:字符串从左向右读与从右向左读是一样的。
*/
import java.util.Scanner;
public class Test3 {
boolean huiwen(String str){
boolean bool=false;
int i=0,j=str.length();
for(i=0;i<j-1;i++,j--){
if(str.charAt(i)==str.charAt(j-1)){
bool=true;
}else{
bool=false;
}
}
return bool;
}
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
System.out.print("please input one string:");
String myStr=scan.nextLine();
Test3 t3=new Test3();
boolean myBool=t3.huiwen(myStr);
if(myBool==true){
System.out.print("true");
}else{
System.out.print("false");
}
}

}

/*
* 4.设计一个java的递归程序,打印出2+4+6+…+100之和。
* */
public class Test
{
public int ok(int n)
{
if(n==0)
{
return 0;
}
else
{
return ok(n-2)+n;
}
}

public static void main(String[] args)
{
Test t= new Test();
System.out.println(t.ok(4));
}
}

你可能感兴趣的:(java,J#)