1.输出图型
*
**
***
****
*****
******
public class Test01 {
public static void main(String[] args) {
for(int i=1;i<=6;i++){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
}
2 输出图型
*******
******
*****
****
***
**
*
public class Test02 {
public static void main(String[] args) {
for(int i=7;i>=1;i--){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
}
3 .把1、2题的两个图型合成一个。
public class Test03 {
public static void main(String[] args) {
for(int i=1;i<=6;i++){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
for(int i=7;i>=1;i--){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
}
}
4.编写一个九九乘法表
public class Test04 {
public static void main(String[] args) {
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+i*j+"\t");
}
System.out.println();
}
}
}
5 .百钱买百鸡,有100元钱,要去买100只鸡,公鸡5元一只,母鸡3元一只,小鸡1元3只,问公,母,小鸡各买多少只。
提示: a+b+c=100 只
5a+3b+1/3c=100钱
public class Test05{
public static void main(String[] args) {
for (int cock=1;cock<=20;cock++ ){
for (int hen=1;hen<=33;hen++ ){
if(7*cock+4*hen==100)
System.out.println("公鸡买"+cock+"只,母鸡买"+hen+"只,小鸡买"+(100-cock-hen)+"只");
}
}
}
}
6 .星型图案
*
***
*****
*******
*********
public class Test06 {
public static void main(String[] args) {
for(int i=1;i<=5;i++){
for(int j=1;j<10;j++){
if(j<=(5-i)||j>=(5+i)){
System.out.print(" ");
}else{
System.out.print("*");
}
}
System.out.println();
}
}
}
7 .把上图形再倒过来,合成一个菱形图案
public class Test07{
public static void main(String[] args) {
for(int i=1;i<=9;i++){
for(int j=1;j<10;j++){
if(j<=Math.abs(5-i)||j>=(10-Math.abs(5-i))){
System.out.print(" ");
}
else{
System.out.print("*");
}
}
System.out.println();
}
}
}
8 .打印出一个空菱形图案
public class Test08 {
public static void main(String[] args) {
for(int i=1;i<=9;i++){
for(int j=1;j<10;j++){
if(j==(Math.abs(5-i)+1)||j==(9-Math.abs(5-i))){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
9.求300-400之间的素数
public class Test09{
public static void main(String[] args) {
System.out.println("300-400之间的素数有:");
for (int i=300;i<400 ;i++ ){
boolean flag = true;
for (int j=2;j<=i/2 ;j++ ){
if (i%j==0){
flag = false;
break;
}
}
if (flag==true){
System.out.print(i+" ");
}
}
}
}
10. 输出一个平行四边形的图案
public class Test10 {
public static void main(String[] args) {
for (int i=1;i<=4 ;i++ ){
for (int j=1;j<=8 ;j++ ){
if (j>(4-i)&&j<(9-i)){
System.out.print("*");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
11.用while做 鸡兔同笼。鸡兔一共有50只,脚一共有160只,问鸡和兔各多少只?要求鸡兔至少一样一只。
public class Test11 {
public static void main(String[] args) {
int chicken = 1;
while (chicken<50){
if (2*chicken+4*(50-chicken)==160){
System.out.println("鸡有"+chicken+"只,兔有"+(50-chicken)+"只");
}
chicken++;
}
}
}
12.计算2/1+3/2+4/3+…+(n+1)/n,写出算法的程序.
import java.util.Scanner;
public class Test12 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入n的值:");
double n = s.nextDouble();
double sum=0;
for (double i=1;i<=n;i++ ){
sum+=(i+1)/i;
}
System.out.println(sum);
}
}
13.2000年我国人口为13亿,如果人口每年的自然增长率为7%,那么多少年 后我国人口将达到15亿?设计一个算法的程序
public class Test13 {
public static void main(String[] args) {
int sum=0;
double population = 13;
while (population<15){
population*=1.07;
sum++;
}
System.out.println(sum+"年后我国的人口将达到15亿");
}
}
14.给出50个数,1,2,4,7,11,„,其规律是:第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,„,以此类推. 要求计算这50个数的和. 先将下面给出的程序框图,再根据程序框图写出程序.
public class Test14 {
public static void main(String[] args) {
int sum=0,j=1;
for (int i=1;i<=50 ;i++){
j+=(i-1);
sum+=j;
}
System.out.println("这50个数的和为:"+sum);
}
}
15.有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一对小兔子,而一对兔子从出生后第3个月起每月生一对小兔子。假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月)能繁殖成多少对? 分析:兔子的规律为数列,1,1,2,3,5,8,13,21
public class Test15 {
public static void main(String[] args) {
int f1 = 1;
int f2 = 1;
int sum = 0;
for(int i = 3; i <= 12; i++){
sum = f1 + f2;
f1 = f2;
f2 = sum;
}
System.out.println("一对兔子一年内能繁殖成" + sum + "对。");
}
}
16. 水仙花数(Narcissistic number)也被称为超完全数字不变数、自恋数、自幂数,水仙花数是指一个 n 位数(n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153),请通过程序找出所有的3位数的水仙花数(穷举法)
public class Test16 {
public static void main(String[] args) {
System.out.println("100-1000中的水仙花数有:");
for (int i=100;i<1000;i++ ){
int ge = i%10;
int shi = i/10%10;
int bai = i/10/10%10;
if(i == (ge*ge*ge+shi*shi*shi+bai*bai*bai)){
System.out.println(i);
}
}
}
}
17. 从控制台输入一个正整数,并进行反转输出
import java.util.Scanner;
public class Test17 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num=sc.nextInt();
int result=0;
while(true) {
int n=num%10;
result=result*10+n;
num=num/10;
if(num==0) {
break;
}
}
System.out.println(result);
}
}