Java第六周上机练习+作业
上机练习
1.使用for循环计算1-100的和,除了以3结尾的那些数
public class Text1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int sum = 0; for (int i = 1; i <= 100; i++) { if (i % 10 != 3 && i != 3) sum += i; } System.out.println("sum=" + sum); } }
2.使用二重循环输出以下图形
*
***
*****
*******
*****
****
***
**
*
public class Text2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub for (int i = 1; i <= 4; i++) { for (int x = 1; x <= 4 - i; x++) { System.out.print(" "); } for (int j = 1; j <= 2 * i - 1; j++) { System.out.print("*"); } System.out.println(); } System.out.println(); System.out.println(); System.out.println(); System.out.println(); for (int i = 1; i <= 5; i++) { for (int j = 1; j <= 6 - i; j++) { System.out.print("*"); } System.out.println(); } } }
3.循环输入学生姓名,直到输入‘Q’程序结束。
import java.util.Scanner; public class Text3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); for (;;) { System.out.println("输入学生姓名"); String name = input.next(); if (name.equals("Q")) System.out.println("程序结束"); break; } } }
4.输入5个学生成绩,求和,当输入不合法的时候,提示输入错误重新输入。
import java.util.Scanner; public class Text4 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); System.out.println("输入学生成绩"); int sum = 0; for (int i = 1; i <= 5; i++) { int grade = input.nextInt(); while (grade < 0 || grade > 100) { System.out.println("输入错误请重新输入"); grade = input.nextInt(); break; } sum += grade; } System.out.println(sum); } }
5.计算 1+ 1/(1+2)+ 1/(1+2+3)+ 1/(1+2+3+4) +…………+1/(1+2+....+10)
public class Text5 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub double sum=0; for(int i=1;i<=10;i++){ sum=sum+1/(sum+i); } System.out.println(sum); } }
作业
1.产生一个1-99的随机数,猜数字,若大了就提示“大了点”,若小了就提示“小了点”直到猜对位置
import java.util.Random; import java.util.Scanner; public class Homework1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Random r = new Random(); int x = 1 + r.nextInt(98); Scanner input = new Scanner(System.in); System.out.println("请输入1~99的随机数"); int s = input.nextInt(); int a = 1; while (a >= 1) { if (s > x) { System.out.println("大了点"); int j = input.nextInt(); s = j; a++; } else if (s < x) { System.out.println("小了点"); int j = input.nextInt(); s = j; a++; } else { a++; if (a <= 3) System.out.println("太棒了"); if (a >= 4 || a <= 8) System.out.println("一般般"); if (a > 8) System.out.println("太笨了"); break; } } } }
2.输入一个数,判断是不是质数(只能被1和自身整除的数是质数)
import java.util.Scanner; public class Homework2 { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.println("请输入一个数:"); int num=input.nextInt(); int a=0, i=2; while(i<num) { if(num%i==0) { System.out.println(num+"不是质数"); a++; break; } i++; } if(a==0) { System.out.println(num+"是质数"); } } }
3.求裴波那契数列的第20项是什么。裴波那契数列,1,1,2,3,5,8,13,21……
import java.util.Scanner; public class Homework3 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int a=1; int b=1; int c=0; for(int i=1;i<=18;i++){ c=a+b; a=b; b=c; } System.out.println("第20项为"+c); } }