程序设计基础过关题库(50道)
<说明>难易程度依次为:易(7道)、较易(14道)、较难(13道)、难(9道)、很难(7道)
一、顺序结构
1、 编程实现两个整数交换位置,例如:int x = 6,y = 9,交换后 x = 9,y = 6。(易)
2、 将华氏温度转化成摄氏温度。公式为:
C=(5/9)*(F-32)
,其中F为华氏温度,C为摄氏温度。请根据给定的华氏温度输出对应的摄氏温度。(易)
package javaFirst_1;
public class JavaFirst_1_ketang {
public static void main(String[] args) {
// TODO Auto-generated method stub
double F = 52;
double C;
C = (5/9.0) * (F-32);
System.out.println("华氏温度:" + F);
System.out.println("摄氏温度:" + C);
}
}
3、 根据观察,蟋蟀的名叫频率与温度有关,具体的公式为T=(c+40)/10.其中,c代表蟋蟀每分钟鸣叫数,T代表华氏温度。请根据蟋蟀每分钟的鸣叫数输出相应的华氏温度。(易)
package javaFirst_1;
public class JavaFirst_if_else {
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 6;
int y = 9;
int max;
if(x > y) {
max = x;
}else {
max = y;
}
System.out.println(x + "与" + y +"中较大的是" + max);
}
}
4、 已知圆的半径,求圆的面积。(易)
package javaFirst_1;
public class JavaFirst1_1_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
final double PI = 3.1415926;// float= PI =3.14F(f)
double s;
double r = 5.2;
s = PI * r * r;
System.out.println("半径:"+ r);
System.out.println("面积:"+ s);
}
}
二、分支结构
5、 两个数比较大小,输出较大值。(易)
package javaFirst_1;
public class JavaFirst_if_else {
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 6;
int y = 9;
int max;
if(x > y) {
max = x;
}else {
max = y;
}
System.out.println(x + "与" + y +"中较大的是" + max);
}
}
6、 三个数比较大小,输出最大值。(较易)
package javaFirst_1;
public class JavaFirst_1_if_else {
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 6;
int y = 9;
int z = 10;
int max;
// max = x>y ? x : y;
// max = max>z ? max : z;
// Syatem.out.println(max);
if (x > y) {
if(x > z) {
max = x;
}else {
max=z;
}
}else {
if(y > z) {
max = y;
}else {
max=z;
}
}
System.out.println(max);
}
7、 求下列函数中y的值。(较易)
y=10 (x=0)
y=3x+5 (x>0)
y=x-2 (x<0)
8、 判断某个整数是否为水仙花数。(水仙花数是一个三位数,该数各位的立方和等于该数本身。例如153是一个水仙花数,因为153 = 13 + 53 + 33)(较易)
package javaFirst_1;
import java.util.Scanner;
public class JavaFirst_1_8 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//8、 判断某个整数是否为水仙花数。
//(水仙花数是一个三位数,该数各位的立方和等于该数本身。例如153是一个水仙花数,因为153 = 13 + 53 + 33)(
int x;
int baiwei,shiwei,gewei;
System.out.println("输入一个三位数:");
Scanner in = new Scanner(System.in);
x = in.nextInt();
baiwei=x/100;
shiwei=x%100/10;
gewei=x%100%10;
if(baiwei*baiwei*baiwei+Math.pow(shiwei, 3)+Math.pow(gewei, 3)==x){
System.out.println(x + "是水仙花数");
}else {
System.out.println(x + "不是水仙花数");
}
}
}
9、 判断某年是否为闰年。(闰年的条件是:该年的年号能被4整除且不能被100整除,或该年的年号能被400整除,则该年是闰年,否则不是闰年。)(较易)
package javaFirst_1;
import java.util.Scanner;
public class JavaFirst_1_9 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//9、 判断某年是否为闰年。
//(闰年的条件是:该年的年号能被4整除且不能被100整除,或该年的年号能被400整除,则该年是闰年,否则不是闰年。)
int year;
System.out.println("输入一个年份:");
Scanner in = new Scanner(System.in);
year = in.nextInt();
if(year%400==0 || year%4==0 && year%100!=0) {
System.out.println(year + "是闰年.");
}else {
System.out.println(year + "不是闰年.");
}
}
}
10、 根据某同学的成绩,判定其成绩的等级。(90100分为“优秀”,8089为“良好”,7079为“中等”,6069为“及格”,60分以下为“不及格”。)(较易)
package javaFirst_1;
public class JavaFirst_1_panduanfenshu {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(char i = 'a';i<='z';i++){
System.out.println(i); //小写
}
/* int x = 89;
String level="优秀";
switch (x/10) {
case 10 :
case 9 :
level = "优秀";
break;
case 8 :
level ="良好";
break;
case 7 :
level ="中等";
break;
case 6 :
level="及格";
default:
level="不及格";
break;
}*/
/* if (x>=90) {
level="优秀";
}else if(x>=80) {
level="良好";
}else if(x>=70) {
level="中等";
}else if(x>=60) {
level="及格";
}else{
level="不及格";*/
// System.out.println("成绩:" + x + "等级:" + level);
/* if (x>90 & x<100) {
System.out.println("优秀");
}else if(x>80 & x<89) {
System.out.println("良好");
}else if(x>70 & x<79) {
System.out.println("中等");
}else if(x>60 &x<69) {
System.out.println("及格");
}else if(x<60) {
System.out.println("不及格");
}*/
}
}
三、单循环
11、 求1到100之间的所有整数的和。(易)
package javaFirst_1;
public class JavaFirst_1_11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//11、 求1到100之间的所有整数的和。(易)
int i = 1;
int sum = 0;
for (i = 1 ; i <= 100 ; i++) {
sum += i;
}
System.out.println("1到100之间的所有整数和是:" + sum);
}
}
12、 求1到100之间的所有奇数的和。(较易)
package javaFirst_1;
public class JavaFirst_1_11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//11、 求1到100之间的所有j数的和。(易)
int i = 1;
int sum = 0;
for (i = 1 ; i <= 100 ; i+=2) {
sum += i;
}
System.out.println("1到100之间的所有奇数和是:" + sum);
}
}
13、 求1到100之间的所有偶数的和。(较易)
package javaFirst_1;
public class JavaFirst_1_11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//11、 求1到100之间的所有o数的和。(易)
int i = 1;
int sum = 0;
for (i = 2 ; i <= 100 ; i+=2) {
sum += i;
}
System.out.println("1到100之间的所有偶数和是:" + sum);
}
}
14、 求1000以内所有能被5整除的整数的和。(较易)
package javaFirst_1;
public class JavaFirst_1_14 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//14、 求1000以内所有能被5整除的整数的和。(较易
int x = 1;
int sum=0;
for (x=1;x<=1000;x++) {
if(x % 5==0) {
sum += x;
}
}
System.out.println("1000以内所有能被5整除的整数的和是:" + sum);
}
}
15、 打印100以内所有能被3整除的数,每5个数打印一行。(较难)
package javaFirst_1;
public class JavaFirst_1_15 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印100以内所有能被3整除的数,每5个数打印一行。
int x = 1;
int ac = 0;
for(x = 1 ; x <= 100 ; x ++) {
if(x % 3 == 0) {
System.out.print(x + "\t");
ac++;
if(ac % 5 == 0) {
System.out.println();
}
}
}
}
}
16、 统计1000以内所有能被7整除的数的个数。(较易)
package javaFirst_1;
public class JavaFirst_1_16 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//16、 统计1000以内所有能被7整除的数的个数。(较易)
int x = 1;
int acount = 0;
for(x = 1 ; x <= 100 ; x += 2) {
if(x % 7 == 0) {
acount++;
}
}
System.out.println("能被7整除的数有" + acount + "个");
}
}
17、 求10的阶乘。(较易)
package javaFirst_1;
public class JavaFirst_1_1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int r = 1;//阶乘结果
for (int i = 10 ; i > 0 ; i --) {
r *= i;
}
System.out.println("10的阶乘是:"+r);
}
}
18、 输出26个小写英文字母。(易)
package javaFirst_1;
public class JavaFirst_1_18 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//18、 输出26个小写英文字母。(易)
char a = 'a';
for(a='a';a<='z';a++) {
System.out.println(" " + a );
}
}
}
19、 输出1000以内的所有水仙花数。(水仙花数是一个三位数,该数各位的立方和等于该数本身。例如153是一个水仙花数,因为153 = 13 + 53 + 33)(较难)
package javaFirst_1;
public class JavaFirst_1_19 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//19、 输出1000以内的所有水仙花数。
//(水仙花数是一个三位数,该数各位的立方和等于该数本身。例如153是一个水仙花数,因为153 = 13 + 53 + 33)(较难)
int i;
int j;
int k;
for(i = 1 ; i <= 9 ; i ++) {
for(j = 0 ; j <= 9 ; j ++) {
for(k = 0 ; k <= 9 ; k ++) {
if(Math.pow(i, 3) + Math.pow(j,3) + Math.pow(k,3) == 100*i + 10*j + k) {
System.out.println(100*i + 10*j + k);
}
}
}
}
}
}
20、 判断某个数是否为素数。(素数是一个大于1且只能被1和它本身整除的整数)(较难)
package javaFirst_1;
public class JavaFirst_1_20 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//20、 判断某个数是否为素数。(素数是一个大于1且只能被1和它本身整除的整数)(较难)
int x=8;
int i=2;
for(;i < x ; i ++) {
if(x%i==0) {
System.out.println(x + "bu是素数");
break;
}
}
if(x ==i) {
System.out.println(x + "是素数");
}
}
}
21、 判断某个数是否为完全数。(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(较难)
package javaFirst_1;
public class JavaFirst_1_21 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//判断某个数是否为完全数。
//(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(较难)
int x = 9;
int i = 1;
int sum = 0;
for(;i < x ; i ++) {
if(x % i == 0) {
sum += i;
}
}
if(sum == x) {
System.out.println(x + "是完全数");
}else {
System.out.println(x + "不是完全数");
}
}
}
22、 编写程序读入整数并求它们的总和与平均值。输入0时程序结束。(较难)
package javaFirst_1;
import java.util.Scanner;
public class JavaFirst_1_22 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//编写程序读入整数并求它们的总和与平均值。输入0时程序结束。(较难)
int x;
int sum = 0;
double avg = 1;
int acount = 0;
Scanner in = new Scanner(System.in);
x = in.nextInt();
while(x != 0) {
sum += x;
acount++;
x = in.nextInt();
}
avg = (double) sum/acount ;
System.out.println("总和是:" + sum);
System.out.println("平均值是:" + avg);
}
}
四、多重循环
23、 求100以内的所有素数的和。(素数是一个大于1且只能被1和它本身整除的整数)(较难)
package javaFirst_1;
public class JavaFirst_1_23 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//求100以内的所有素数的和。(素数是一个大于1且只能被1和它本身整除的整数)(较难)
int count = 0;
int j;
for (int i = 2; i <= 100; i++) {
for (j = 2; j < i; j++) {
if (i % j == 0) {
break;
}
}
if (j == i) {
count += i;
}
}
System.out.println(count);
}
}
24、 打印100以内的所有素数。(素数是一个大于1且只能被1和它本身整除的整数)(较难)
package javaFirst_1;
public class JavaFirst_1_24 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印100以内的所有素数。(素数是一个大于1且只能被1和它本身整除的整数
int i;
int j;
for(i = 2 ; i <= 100 ; i++) {
for(j = 2 ; j < i ; j++) {
if(i % j == 0) {
break;
}
}
if( j == i) {
System.out.print(i + "\t");
}
}
}
}
25、 打印100以内的所有素数,每5个数打印一行。(素数是一个大于1且只能被1和它本身整除的整数)(难)
package javaFirst_1;
public class JavaFirst_1_24 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印100以内的所有素数。每五个数打印一行(素数是一个大于1且只能被1和它本身整除的整数
int i;
int j;
int a = 0;
for(i = 2 ; i <= 100 ; i++) {
for(j = 2 ; j < i ; j++) {
if(i % j == 0) {
break;
}
}
if( j == i) {
System.out.print(i + "\t");
a++;
}
if(a % 5 == 0) {
System.out.println();
}
}
}
}
26、 求前50个素数的和。(素数是一个大于1且只能被1和它本身整除的整数)(难)
package javaFirst_1;
public class JavaFirst_1_26 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//求前50个素数的和。(素数是一个大于1且只能被1和它本身整除的整数)(难
int i;
int j;
int a = 0;
int sum = 0;
while(a != 50) {
for(i = 2 ; i <= 100 ; i++) {
for(j = 2 ; j < i ; j++) {
if(i % j == 0) {
break;
}
}
if( j == i) {
sum += i;
a++;
}
}
}
System.out.println(sum);
}
}
27、 判断101~200之间有多少个素数,并输出所有素数。(素数是一个大于1且只能被1和它本身整除的整数)(难)
package javaFirst_1;
public class JavaFirst_1_27 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//27、 判断101~200之间有多少个素数,并输出所有素数。(素数是一个大于1且只能被1和它本身整除的整数)(难)
int i ;
int j ;
int acount = 0 ;
for (i = 101 ; i <= 200 ; i++) {
for(j = 2 ; j < i ; j++) {
if(i % j == 0) {
break;
}
}
if(j == i) {
acount++;
System.out.println(i);
}
}
System.out.println(acount);
}
}
28、 打印1000以内的完全数。(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(难)
package javaFirst_1;
public class JavaFirst_1_28 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//28、 打印1000以内的完全数。
//(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(难)
int i ;
int j ;
for(j = 2 ; j <= 1000 ; j++) {
int sum = 1;
for(i = 2 ; i <= j/2 ; i++) {
if( j % i == 0) {
sum += i;
}
}
if(j == sum) {
System.out.println(j);
}
}
}
}
29、 统计1000以内完全数的个数。(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(难)
package javaFirst_1;
public class JavaFirst_1_28 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//28、 打印1000以内的完全数。
//(完全数:所有小于该数本身的因子之和等于该数本身,例如6是一个完全数,因为,6=1+2+3)(难)
int i ;
int j ;
int acount = 0;
for(j = 2 ; j <= 1000 ; j++) {
int sum = 1;
for(i = 2 ; i <= j/2 ; i++) {
if( j % i == 0) {
sum += i;
}
}
if(j == sum) {
acount ++;
System.out.println(j);
}
}
System.out.println(acount);
}
}
30、 打印九九乘法表,形式如下:(难)
11=1 12=2 13=3 14=4 15=5 16=6 17=7 18=8 19=9
21=2 22=4 23=6 24=8 25=10 26=12 27=14 28=16 29=18
31=3 32=6 33=9 34=12 35=15 36=18 37=21 38=24 39=27
41=4 42=8 43=12 44=16 45=20 46=24 47=28 48=32 49=36
51=5 52=10 53=15 54=20 55=25 56=30 57=35 58=40 59=45
61=6 62=12 63=18 64=24 65=30 66=36 67=42 68=48 69=54
71=7 72=14 73=21 74=28 75=35 76=42 77=49 78=56 79=63
81=8 82=16 83=24 84=32 85=40 86=48 87=56 88=64 89=72
91=2 92=18 93=21 94=36 95=45 96=54 97=63 98=72 9*9=81
package javaFirst_1;
public class JavaFirst_1_30 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印九九乘法表
int i ;
int j ;
for(i = 1 ; i <= 9 ; i++ ) {
for(j = 1 ; j <= 9 ; j++) {
System.out.print(i + "*" + j + "=" + i*j + "\t");
}
System.out.println();
}
}
}
31、 打印九九乘法表,形式如下:(难)
11=1
12=2 22=4
13=3 23=6 33=9
14=4 24=8 34=12 44=16
15=5 25=10 35=15 45=20 55=25
16=6 26=12 36=18 46=24 56=30 66=36
17=7 27=14 37=21 47=28 57=35 67=42 77=49
18=8 28=16 38=24 48=32 58=40 68=48 78=56 88=64
19=9 29=18 39=27 49=36 59=45 69=54 79=63 89=72 9*9=81
package javaFirst_1;
public class JavaFirst_1_30 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印九九乘法表
int i ;
int j ;
for(i = 1 ; i <= 9 ; i++ ) {
for(j = 1 ; j <= i ; j++) {
System.out.print(i + "*" + j + "=" + i*j + "\t");
}
System.out.println();
}
}
}
32、 打印5行5列的星号图形(较易)
> *****
> *****
> *****
> *****
> *****
package javaFirst_1;
public class JavaFirst_1_32 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印5行5列的星号图形
int i ;
int j ;
for(i = 1 ; i <= 5 ; i++) {
for(j = 1 ; j <= 5 ; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
33、 打印星号图形(较易)
*
**
***
****
*****
package javaFirst_1;
public class JavaFirst_1_32 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印5行5列的星号图形
int i ;
int j ;
for(i = 1 ; i <= 5 ; i++) {
for(j = 1 ; j <= i ; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
34、 打印图形(较难)
1
22
333
4444
55555
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 1 ; i <= 5 ; i ++) {
for(j = 1 ; j <= i ; j++ ) {
System.out.print(i);
}
System.out.println();
}
}
}
35、 打印图形(较难)
A
BB
CCC
DDDD
EEEEE
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 0 ; i <= 5 ; i ++) {
for(j = 0 ; j <= i ; j++ ) {
System.out.print((char)('A'+i));
}
System.out.println();
}
}
}
36、 打印图形(较难)
1
12
123
1234
12345
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 1 ; i <= 5 ; i ++) {
for(j = 1 ; j <= i ; j++ ) {
System.out.print(j);
}
System.out.println();
}
}
}
37、 打印字母图形(较难)
A
AB
ABC
ABCD
ABCDE
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 0 ; i <= 5 ; i ++) {
for(j = 0 ; j <= i ; j++ ) {
System.out.print((char)('A'+j));
}
System.out.println();
}
}
}
38、 打印图形(难)
A
BBB
CCCCC
DDDDDDD
EEEEEEEEE
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 0 ; i <= 5 ; i ++) {
for(j = -1 ; j <= 2*i - 1 ; j++ ) {
System.out.print((char)('A'+i));
}
System.out.println();
}
}
}
39、 打印图形(很难)
*
***
*****
*******
*********
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 0 ; i <= 10 ; i += 2) {
for(j = 0 ; j <= i ; j++ ) {
System.out.print("*");
}
System.out.println();
}
}
}
40、 打印金字塔数字图形(很难)
1
222
33333
4444444
555555555
package javaFirst_1;
public class JavaFirst_1_34 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//打印图形
int i ;
int j ;
for(i = 1 ; i <= 5 ; i ++) {
for(j = 1 ; j <= i*2 - 1 ; j++ ) {
System.out.print(j);
}
System.out.println();
}
}
}
41、 求下面数列的前20项的和:2/1、3/2、5/3、8/5、13/8。。。。(很难)
package javaFirst_1;
public class JavaFirst_1_41 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//求下面数列的前20项的和:2/1、3/2、5/3、8/5、13/8。。。。(很难)
double i = 1;
double j = 2;
double t ;
double sum = 0;
int num = 0 ;
for(num = 1 ; num <= 20 ; num++) {
sum +=(double) j / i;
i = j ;
j = i + j ;
}
System.out.println(sum);
}
}
42、 求s=a+aa+aaa+aaaa+a…aa的值。其中a是接收键盘输入的1~9中的某个数字。几个数相加是通过接收键盘输入的一个n来确定。例如:输入2,5按回车则就是求2+22+222+2222+22222的值。(很难)
package javaFirst_1;
import java.util.Scanner;
public class JavaFirst_1_42 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//求s=a+aa+aaa+aaaa+a...aa的值。其中a是接收键盘输入的1~9中的某个数字。
//几个数相加是通过接收键盘输入的一个n来确定。例如:输入2,5按回车则就是求2+22+222+2222+22222的值。(很难
int x ;
int i ;
int j ;
int n ;
int sum = 0;
Scanner in = new Scanner(System.in);
x = in.nextInt();
n = in.nextInt();
for(i = 1 ; i <= n; i++) {
for(j = 1; j <= i ; j++) {
System.out.print(x);
sum += x;
}
System.out.println();
}
System.out.println(sum);
}
}
43、 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。求它在第10次落地时,共经过多少米?第10次反弹多高?(很难)
package javaFirst_1;
public class JavaFirst_1_43 {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。
//求它在第10次落地时,共经过多少米?第10次反弹多高?(很难)
double i = 100 ;
int acount = 0;
while(acount != 10) {
i =(double) i/2 ;
acount++;
}
System.out.println(i);
}
}
44、 编程:桌上放了8袋花生,第1袋花生的数目是1颗,第2袋花生的数目是12颗,第3袋花生的数目是123颗,以此类推,那么第N袋花生的数目是123。。。*N颗,但是其中的第6袋花生已经被人拿走,那么剩下的花生总数是多少?(很难)
package javaFirst_1;
public class JavaFirst_1_44 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//编程:桌上放了8袋花生,第1袋花生的数目是1颗,第2袋花生的数目是1*2颗,第3袋花生的数目是1*2*3颗,
//以此类推,那么第N袋花生的数目是1*2*3*。。。*N颗,
//但是其中的第6袋花生已经被人拿走,那么剩下的花生总数是多少?(很难)
int sum = 0;//总数
for(int i=1;i<=8;i++) {
if(i == 6) {
continue;
}
int x = 1;//第i份的花生数量
for(int j=1;j<=i;j++) {
x *=j;
}
sum += x;
}
System.out.println("总量为:"+sum);
}
}
45、 猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,只剩下一个桃子了。求第一天共摘了多少?(很难)
package javaFirst_1;
public class JavaFirst_1_45 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
//以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,只剩下一个桃子了。求第一天共摘了多少?(很难)
int i ;
int x ;
int sum = 0;
int t = 1 ;
for(i = 10 ; i>0 ; i++) {
x = 2*t + 1;
sum += x;
}
System.out.println(sum);
}
}
五、数组
46、 定义一个10个整数的数组,并输出该数组。(较易)
package javaFirst_1;
public class JavaFirst_1_46 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义一个10个整数的数组,并输出该数组。(较易)
/* int data[] = new int[10];*/
/*int data_1[] = null;
data_1 = new int [10];*/
int data_2[] = {1, 2, 3, 4, 5 ,6 ,6 , 7, 8,9 };
for(int x= 0; x< data_2.length; x++) {
System.out.println(data_2[x]);
}
}
}
47、 输入10个整数并按相反的顺序显示出来。(较难)
package javaFirst_1;
public class JavaFirst_1_46 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义一个10个整数的数组,并反向输出该数组。(较易)
/* int data[] = new int[10];*/
/*int data_1[] = null;
data_1 = new int [10];*/
int data_2[] = {1, 2, 3, 4, 5 ,6 ,6 , 7, 8,9 };
for(int x= data_2.length-1; x>=0; x--) {
System.out.println(data_2[x]);
}
}
}
48、 输入10个整数并按从小到大的顺序显示出来。(难)
package javaFirst_1;
import java.lang.reflect.Array;
import java.util.Arrays;
public class JavaFirst_1_46 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//定义一个10个整数的数组,并正序输出该数组。(较易)
/* int data[] = new int[10];*/
/*int data_1[] = null;
data_1 = new int [10];*/
int data_2[] = {1, 6, 3, 4, 5 ,6 ,6 , 7, 8,9 };
Arrays.sort(data_2);
System.out.println(Arrays.toString(data_2));
}
}
六、字符串(不做)
49、 反向加密:输入任意长度的密码,输出反向的密码(较易)
50、 编写程序,判断用户输入的字符串是否为回文串。(提示:回文字符串是具有回文特性的字符串:即该字符串从左向右读和从右向左读一样,如12321)(较难)