1.求1~100之间不能被3整除的数之和。
2.Break练习:循环录入某学生5门课的成绩并计算平均分,如果某分数录入为负,停止录入并提示录入错误。
3.1~10之间的整数相加,得到累加值大于20的当前数。
4.continue练习:循环录入Java课的学生成绩,统计分数大于等于 80分的学生比例。
5.使用for循环实现输出99乘法表。
6.使用for循环实现将1~100中所有的偶数进行累加并输出累加结果。
7.分别使用三种循环结构(for, while, do-while)找出1~100中所有的质数(只能被1和自身整除的数)。
8.使用for循环打印3种三角形。
行外循环控制
列内循环控制
源代码:
import java.util.Scanner;
public class Practice {
static Scanner input = new Scanner(System.in);
public static void practice_1(){ //第一题
int sum = 0;
for (int i = 1; i <= 100; i++) {
if((i % 3) != 0) sum += i;
}
System.out.println(sum);
}
public static void practice_2(){ //第二题
int sum = 0;
int i;
for ( i = 0; i < 5; i++) {
System.out.printf("请输入该学生第%d门成绩:",++i);
int score = input.nextInt();
if(score < 0|| score > 100) {
System.out.println("成绩不合法");
continue;
}
sum += score;
}
System.out.println("平均成绩:"+sum/i );
}
public static void practice_3(){ //第三题
int sum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
if(sum > 20) break;
}
System.out.println(sum);
}
public static void practice_4(){ //第四题
int count = 0;
int i;
System.out.println("输入非法成绩结束");
for ( i = 1; ; i++) {
System.out.printf("请输入第%d个学生成绩:",i);
int score = input.nextInt();
if(score < 0|| score > 100) {
break;
}
else if(score >= 80) count ++; //统计分数大于等于 80分的学生
}
System.out.println("分数大于等于 80分的学生比例:"+ count + "/" + i);
}
public static void practice_5() { //第五题
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
System.out.print(i + "*" + j + "=" + i*j + "\t");
}
System.out.println();
}
}
public static void practice_6() { //第六题
int sum = 0;
for (int i = 1; i <= 100; i++) {
if(i % 2 == 0) sum += i;
}
System.out.println(sum);
}
public static void practice_7() { //第七题
for (int i = 1; i <= 100; i++) {
boolean flag = true;
for (int j = 2; j < i; j++) {
if(i % j ==0){
flag = false;
break;
}
}
if(flag == true) System.out.print(i);
}
}
public static void practice_8(){
//打印直角边靠左正直角三角形
for (int i = 0; i < 10; i++) {
for (int j = 0; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
//等腰三角形
for(int i=1;i<=10;i++) {
for(int j=1;j<=10-i;j++) {
System.out.print(" ");
}
for(int x=1;x<=2*i-1;x++){
System.out.print("*");
}
System.out.println("");
}
//打印直角边靠右正直角三角形
for (int j = 1; j <= 8; j++) {
for (int i = 1; i <= 8-j; i++) {
System.out.print(" ");
}
for (int i = 1; i <= j; i++) {
System.out.print("*");
}
System.out.println();
}
}
public static void main(String[] args) {
// practice_4();
practice_8();
}
}