目录
- 第21题 C语言程序改为Java程序,判断一个三位数是否(10分)
- 第22题 编写程序:斐波那契图形(10分)
第21题 C语言程序改为Java程序,判断一个三位数是否(10分)
下面是C语言程序,请修改为Java应用程序。运行时需要输出一些数据检验。
/*------------------------------------------------
功能:调用函数fun判断一个三位数是否"次水仙花数"。
在main函数中从键盘输入一个三位数,并输
出判断结果。请编写fun函数。
说明:所谓"次水仙花数"是指一3位数,其各位数字立方和,
加上各位数字之和,等于该数本身。
例如:870是一个次水仙花数,因为870=83+73+0^3+8+7+0。
------------------------------------------------*/
int fun(int n)
{int bw,sw,gw;
bw=n/100;sw=(n-bw100)/10;gw=n%10;
if(n==+(bw+sw+gw)+bwbwbw+swswsw+gwgw*gw) return 1;
else return 0;}
main()
{
int n,flag;
scanf(“%d”,&n);
flag=fun(n);
if(flag)
printf(“yes\n”);
else
printf(“no\n”);
}
样例1:
输入
870
输出
yes
样例2:
输入
110
输出
no
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n,flag;
Scanner in =new Scanner(System.in);
n=in.nextInt();
flag=fun(n);
if(flag==1)
{
System.out.println("yes\n");
}
else
System.out.println("no\n");
}
public static int fun (int n)
{
int bw,sw,gw;
bw=n/100;sw=(n-bw*100)/10;gw=n%10;
if(n==+(bw+sw+gw)+bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1;
else return 0;
}
}
第22题 编写程序:斐波那契图形(10分)
编写一个求斐波那契数列的递归函数,输入n值,使用该递归函数,输出如样例输出的斐波那契数列。
输入:
一个整型数n
输出:
题目可能有多组不同的测试数据,对于每组输入数据,
按题目的要求输出相应的斐波那契图形。
注意输出换行前不能有多余的空格。
样例输入:
6
样例输出:
0
0 1 1
0 1 1 2 3
0 1 1 2 3 5 8
0 1 1 2 3 5 8 13 21
0 1 1 2 3 5 8 13 21 34 55
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
while(in.hasNext())
{
int n=in.nextInt();
int a[]=new int[10000000];
a[0]=1;a[1]=1;
for(int i=2;i<1+(n-1)*2;i++)
{
a[i]=a[i-1]+a[i-2];
}
System.out.println(0);
for(int i=2;i<=n;i++)
{
System.out.print(0+" ");
for(int j=0;j<(i-1)*2-1;j++)
{
System.out.print(a[j]+" ");
}
System.out.println(a[(i-1)*2-1]);
}
}
}
}