代码一些
1.Scamner 获得一组数据的最大值和平均值
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
double sum = 0;
int m = 0;
while (scanner.hasNextDouble()){
double x = scanner.nextDouble();
sum = sum + x;
m++;
}
System.out.println(m+"个数的和为"+sum);
System.out.println(m+"个数的平均值为"+(sum/m));
scanner.close();
}
2.实现if多选择结构的持续输入(反馈成绩合格与否)
package com;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (true){
int s = scanner.nextInt();
if (s>=60&s<=100){
System.out.println("成绩合格");
}else if(s>=0&s<60){
System.out.println("成绩不合格");
}else{
System.out.println("成绩不合法");
}
}
}
}
3.Switch选择结构(匹配后输出不同结果) (记得加上break,避免case穿透现象)
package com;
public class Test {
public static void main(String[] args) {
char grade = 'A';
switch (grade){
case 'A':
System.out.println("优秀");
break;
case 'B':
System.out.println("良好");
break;
case 'C':
System.out.println("及格");
break;
case 'D':
System.out.println("还需努力");
break;
default:
System.out.println("输入错误,无法匹配");
}
}
}
4.While循环 (计算1+2+3+...+100=?)
package com;
public class Test {
public static void main(String[] args) {
int i =1;
int sum = 0;
while (i<=100){
sum += i;
i++;
}
System.out.println(sum);
}
}
注意:i++的位置,位于sum += i;上方则整体大100
5.do while循环和while循环区别之 do while至少执行一次 (多次执行结果相同)
6.For循环(分别计算0到100奇数的和与偶数的和)
package com;
public class Test {
public static void main(String[] args) {
int oddSum = 0 ;
int evenSum = 0 ;
for (int i = 0; i <= 100; i++) {
if (i%2==0){
evenSum += i;
}else {
oddSum += i;
}
}
System.out.println(oddSum);
System.out.println(evenSum);
}
}
7.for循环输出1-1000之间能被5整除的数,并且每行输出3个
package com;
public class Test {
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
if (i%5==0){
System.out.print(i+" ");
if(i%15==0){
System.out.println(" ");
}
}
}
}
}
8.打印九九乘法表
9.增强for循环
10.break (break会中止循环,但不会结束程序)
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604103445199-574934925.png)
11.continue (跳过某条件下的部分循环,继续判断其他条件及进行相关循环)
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604103751417-879888693.png)
12.continue outer (打印100~150之间的质数)
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604105357736-10425459.png)
“质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。” 注意:因定义及0无法作为被除数,所以j从2开始赋值
13.打印三角形
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604113543376-718473705.png)
(我们无法跳过某一行某一列,但我们可以在某一行某一列输出"空白")
14. 调用比大小方法
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604150322425-1958484569.png)
return会终止方法
15.可变参数
a.
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604172613669-1819646987.png)
b.可变参数选出最大值
16.递归(阶的计算)
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220604180050464-1720904778.png)
17.输出多维数组
![](https://img2022.cnblogs.com/blog/2624995/202206/2624995-20220606102706259-671026584.png)
18.手写和Arrays类自带工具类 比较
19.冒泡排序
boolean 优化
理解 两个-1的真正含义
20.稀疏数组
已知一个11*11的数组和两个非零值,输出稀疏数组
package com;
import java.util.Arrays;
public class Test {
public static void main(String[] args) {
int[][] array1 = new int[11][11]; //原数组
array1[1][2] = 1;
array1[2][3] = 2;
for (int i = 0; i < 11; i++) {
for (int j = 0; j <11; j++) {
System.out.print(array1[i][j]+"\t");
}
System.out.println();
}
int sum = 0;
for (int i = 0; i <11 ; i++) {
for (int j = 0; j <11 ; j++) {
if (array1[i][j]!=0){
sum++;
}
}
}
int[][] array2 =new int[sum+1][3];
array2[0][0] = 11;
array2[0][1] = 11;
array2[0][2] = sum;
int count = 0;
for (int i = 0; i < 11; i++) {
for (int j = 0; j < 11; j++) {
if (array1[i][j]!=0){
count++;
array2[count][0] = i;
array2[count][1] = j;
array2[count][2] = array1[i][j];
}
}
}
for (int i = 0; i < array2.length; i++) {
System.out.println(array2[i][0]+"\t"+array2[i][1]+"\t"+array2[i][2]);//输出稀疏数组
}
int[][]array3 = new int[array2[0][0]][array2[0][1]];
for (int i = 1; i < array2.length; i++) { //根据array2对array3进行赋值
array3[array2[i][0]][array2[i][1]] = array2[i][2];
}
for (int i = 0; i < array3.length; i++) {
for (int j = 0; j < array3[i].length; j++) {
System.out.print(array3[i][j]+"\t");//还原输出稀疏数组
}
System.out.println();
}
}
}