1.要求:
从键盘输入一个数n,判断该数是否是完全数,完全数是指其所有因数(包括1,但不包括其本身)的和等于该数,例如:28=1+2+4+7+14
程序中采用的输出语句形式为:
if(a==b)
System. out. print("您所输入的数["+a+"]是完全数");
else
System. out. print("您所输入的数[" +a+"]不是完全数");
2.测试样例:
输入:
20
输出:
您所输入的数[20]不是完全数
import java.util.*;
public class First
{
public static void main(String[] args)
{
int i,a,b = 0;
Scanner reader = new Scanner(System.in);
//System.out.print(“输入非数值退出!!,否则输人数:”);
b = 0;
a = reader.nextInt();
for(i=1;i<=a/2;i++)
if(a%i==0) b += i;
if(a==b)
System. out. print("您所输入的数["+a+"]是完全数");
else
System. out. print("您所输入的数[" +a+"]不是完全数");
//System. out. print("\n输入非数值退出!!,否则输人数:");
}
}
1.要求:
从键盘输入一个数n,计算并输出1-1/2!+1/3!-……(-1)n-1 *1/n!的结果
程序中采用的输出语句形式为:
System.out.print(" sum=" + sum);
2.测试样例:
输入:
7
输出:
sum=0.6321428571428571
import java.util.*;
public class First{
public static void main(String[] args)
{
int n,i = 1;double s = 1,sum = 0;
Scanner buf = new Scanner(System. in);
do {
//System.out.print(“输入n的值:”);
n = buf.nextInt();
}while(n<=0);
do{
sum = sum + s;
i++;
s= -s/i;
}while(i<=n);
System. out. print(“sum=” + sum);
}
}
或
import java.util.Scanner;
public class First {
public static void main(String[] args)
{
double n = 0;
int i,b=1;
Scanner reader = new Scanner(System.in);
int a=reader.nextInt();
for(i=1;i<=a;i++)
{
b=b*i;
if(i%2==0)
n-=1/b;
if(i%2!=0)
n+=1/b;
}
System.out.println(n);
}
}
1.要求:
从键盘输入一个1-100的数,判断该数是否既可以被3整除,又可以被7整除。
程序中采用的输出语句形式为:
System. out. println("输入的数是" +x+"满足要求");
2.测试样例:
输入:
78
输出:
输入的数是78不满足要求
import java.util.*;
public class First
{
public static void main(String[] args)
{
int x;
Scanner reader = new Scanner(System. in);
do
{
//System. out. print(“请输入1~100的数:”);
x= reader. nextInt();
}while(x < 0 || x > 100);
if(x % 3 == 0 && x % 7 == 0)
System. out. println(“输入的数是” +x+“满足要求”);
else
System. out. println(“输入的数是” +x+ “不满足要求”);
}
}
1.要求:
从键盘输入一个数n,计算并输出1!+2!+3!+……+n!的结果
程序中采用的输出语句形式为:
System.out.print(" sum=" + sum);
2.测试样例:
输入:
7
输出:
sum=5913
import java.util.*;
public class First
{
public static void main(String[] args)
{
int n,s = 1,sum = 0;
Scanner buf = new Scanner(System. in);
do {
//System.out.print(“请输入n=”);
n= buf.nextInt();
}while(n<=0);
for(int i = 1;i <= n;i++)
{
s = s * i;
sum = sum + s;
}
System.out.print(" sum=" + sum);
}
}
1.要求:
从键盘输入一个浮点数,然后将其整数和小数部分分别输出
程序中采用的输出语句形式为:
System.out.println("整数部分是:"+zs);
System.out.println("小数部分是:0."+xs);
2.测试样例:
输入:
20.21
输出:
整数部分是:20
小数部分是:0.21
import java.util.*;
public class First
{
public static void main(String[] args)
{
double x;
String zs,xs,s;
//System.out.println(“请输入一个浮点数:”);
Scanner reader = new Scanner(System.in);
x = reader.nextDouble();
s = “” + x;
int i;
i = s.indexOf(’.’);
zs = s.substring(0,i);
xs = s.substring(i + 1);
System.out.println(“整数部分是:”+zs);
System.out.println(“小数部分是:0.”+xs);
}
}
1.要求:
将学生的学习成绩按分数段分为优、良、中、及格和不及格五个等级(即A,B,C,D,E五个等级),输入一个0~100的成绩,输出相应的登记。要求用switch语句实现。
程序中采用的输出语句为:
System.out.println("评定成绩为:" + grade);
2.测试样例:
输入:
78
输出:
评定成绩为:C
import java.util.*;
public class First
{
public static void main(String[ ] args) {
int testScore, x;
char grade;
Scanner reader = new Scanner(System.in);
//System.out.print(“请输入成绩:”);
testScore = reader.nextInt();
x = testScore / 10;
switch (x) {
case 10:
case 9:
grade = ‘A’;
break;
case 8:
grade = ‘B’;
break;
case 7:
grade = ‘C’;
break;
case 6:
grade = ‘D’;
break;
default:
grade = ‘E’;
}
System.out.println(“评定成绩为:” + grade);
}
}
1.要求:
将学生的学习成绩按如下的分数段评定为四个等级,85-100为A,70-84为B,60-69为C,0-50为D。输入一个0~100的成绩,输出相应的等级。要求用switch语句实现。
程序中采用的输出语句为:
System.out.println( );
2.测试样例:
输入:
78
输出:
你的评定成绩为:B
import java.util.*;
public class First
{
public static void main(String[] args)
{
int n,testScore;
Scanner reader = new Scanner(System.in);
//System.out.println(“请输入一个分数:”);
testScore= reader.nextInt();
n= testScore/5;
if(testScore<60)
n = 11;
switch(n) {
case 20:
case 19:
case 18:
case 17:
System.out.println(“你的评定成绩为:A”);
break;
case 16:
case 15:
case 14:
System.out.println(“你的评定成绩为:B”);
break;
case 13:
case 12:
System.out.println(“你的评定成绩为:C”);
break;
case 11:
System.out.println (“你的评定成绩为:D”);
}
}
}
1.要求:
水仙花数是指其个位,十位,百位三个数字的立方和等于这三位数本身,求出所有的水仙花数
程序中采用的输出语句形式为:
System.out.println(s)
2.测试样例:
输入:
无
输出:
153
370
371
407
import java.util.*;
public class First
{
public static void main(String[] args)
{
int k,n,s,i = 100;
do{
s = 0;
n = i;
while(n!= 0)
{
k = n % 10;
n = n/10;
s = s + k * k * k;
}
if(i == s) System.out.println(s) ;
i++;
}while(i<999);
}
}
1.要求:
编程输出如下数字图案
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
程序中采用的输出语句形式为:
System.out.print(k+" ");
2.测试样例:
输入:
无
输出:
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
public class First
{
public static void main(String[] args)
{
int i,n,k,m = 5,s = 1;
for(i=0;i<m;i++)
{
s += i;
n = 1;
k = s;
do
{
System.out.print(k+" ");
n++;
k += n + i;
}while(n <=m- i);
System.out.println();
}
//该题的第二种解法
/*int i,count,a,c;
int b = 1;
for(count = 1;count <= 5;count++)
{
c = count;
c--;
a = b + c;
b = a;
System.out.print(b+" ");
for(i = 1 + count;i<= 5;i++)
{
a += i;
System.out.print(a+" ");
}
System.out.print("\n");
}*/
}
}
1.要求:
计算并输出一个整数各位数字之和。如5423的各位数字之和为5+4+2+3
程序中采用的输出语句形式为:
System.out.print("sum= " + sum);
2.测试样例:
输入:
3721
输出:
sum= 13
import java.util.*;
public class First
{
public static void main(String[] args)
{
int n,s,sum = 0;
Scanner buf = new Scanner(System.in);
//System.out.print(“请输入n=”);
n = buf. nextInt();
while(n> 0)
{
s = n % 10;
n= (n-s)/10;
sum = sum + s;
}
System.out.print("sum= " + sum);
}
}
1.要求:
设有长为3000m的绳子,每天减去一半,请问需要多少天,绳子的长度会短于5m
程序中采用的输出语句形式为:
System.out.println("需要:"+dayCount+"天时间");
2.测试样例:
输入:
无
输出:
需要:10天时间
import java.util.*;
public class First
{
public static void main(String[] args)
{
float length = 3000;
int dayCount = 0;
do
{
length = length/2;
dayCount++ ;
}while(length>=5);
System.out.println(“需要:”+dayCount+“天时间”);
}
}