Test01 continue 实现 10 以内的偶数 用三种方法
/**
* continue 来实现 10 以内的偶数
*/
//for方法
//定义变量
int a;
for (a=0;a<=10;a++){
//判断是否为偶数,是偶数输出,不是偶数结束本次循环
if (0 != a%2){
continue;
}
System.out.print(a+ "\t");
}
System.out.println();
//while方法
int b=0;
while(b<=10){
if (b % 2 != 0 ){
b++;
continue;
}
System.out.print(b+ "\t");
b++;
}
System.out.println();
//do while 方法
int c=0;
do {
if (c % 2 != 0){
c++;
continue;
}
System.out.print(c + "\t");
c++;
}while (c<=10);
//发现问题①
//while方法
int b=0;
while(b<=10){
if (b % 2 != 0 ){
continue;
}
System.out.print(b+ "\t");
b++;
}
System.out.println();
运行结果 是 0
当第一遍循环,0%2等于0时,不执行if语句块,输出0,b++,此时b=1;
当b=1时,执行if语句块,执行continue;结束本次循环,从而进入死循环一直显示0;
//发现问题 ②
//do while 方法
int c=0;
do {
if (c % 2 != 0){
c++;
continue;
}
System.out.print(c + '\t');
c++;
}while (c<=10);
运行结果是:9 11 13 15 17 19
因为输出时 双引号\t ; 打成了单引号\t ; '\t' 的ASCII码为9
"\t" 双引号 为转义字符, 代表的是一个tab,也就是8个空格。
‘\t’ 单引号, 这就和 ‘a’和"a"一样,字符和字符串的区别,
‘\t’ 你别看他由两个东西组成, \代表转义, 是不算长度的
System.out.println((int)’\t’); //9
Test02 输出100以内的累加和
/**
* 输出 100 以内的 累加和
*/
//for循环
int sum1 = 0;
for (int a=0;a<=100;a++){
sum1 += a;
}
System.out.println(sum1);
//do while 循环
int sum2 = 0;
int b= 0;
do {
sum2 += b;
b++;
}while (b<=100);
System.out.println(sum2);
//while 循环
int sum3 = 0;
int c = 0;
while (c<=100){
sum3 += c;
c++;
}
System.out.println(sum3);
Test03 求100以内的偶数和
/**
* 求100以内的偶数和
*/
//for 循环
int sum1=0;
for (int a=0;a<=100 ;a++){
if(a%2==0){
sum1 += a;
}
}
System.out.println(sum1);
//do while 循环
int sum2=0,b=0;
do {
if(b%2==0){
sum2 += b;
}
}while (++b<=100);
System.out.println(sum2);
//while 循环
int sum3=0 , c=0;
while (c++<=100){
if(c%2==0){
sum3 += c;
}
}
System.out.println(sum3);
Test04 水仙花数
/**
* 水仙花数
*/
int i;
int a,b,c;
for (i=100; i<=999;i++){
a = i % 10;
b = i / 10 % 10;
c = i /100;
int sum;
sum= (a*a*a) + (b * b * b) + (c * c * c);
if ( sum != i ){
continue;
}
System.out.println(sum);
}
Text 05 输出9行9列星号组成的矩阵型; 输出9行星号组成的直角三角形
/**
* 输出9行9列星号组成的矩阵型;
*/
for (int i=1; i<=9; i++){
for (int j=1; j<=9; j++){
System.out.printf("*");
}
System.out.println();
}
/**
* 输出9行星号组成的直角三角形
*/
for (int n=1; n<=9; n++){
for (int m=n; m>=1; m--){
System.out.printf("*");
}
System.out.println();
}
/**
* 输出9行星号组成的直角三角形
*/
for (int n=0; n<9; n++){
for (int m=0; m<=n; m++){
System.out.printf("*");
}
System.out.println();
}
Test06 九九乘法表
/**
*99乘法表
*/
for (int i=1; i<=9; i++){
for (int j=1; j<=i; j++){
System.out.printf("%d x %d = %d \t",j,i,i*j);
}
System.out.println();
}
Test07 等腰三角形
/**
* 输出9行*号组成的等腰三角形
*/
for (int i = 1; i<=9; i++){
for (int j = 1; j<=9-i; j++){
System.out.printf(" ");
}
for (int k=1; k<=i*2-1; k++){
System.out.printf("*");
}
System.out.println();
}
Test08 求1000以内的素数
/**
* 输出1000以内的素数
*/
int j;
int sum=0;
for (int i = 3;i<1000;i++){
for (j =2 ;j<i;j++){
if (i % j == 0 ){
break;
}
}
if (!(j<i)){
System.out.println(i);
sum++;
}
}
System.out.println(sum+"个");
//判断当 j 不小于 i 时, 输出此时 i 的值 这里理解的不是很透彻
if (!(j<i)){
System.out.println(i);
sum++;
}
Test09 死循环
/**
* 死循环
*/
Random random = new Random();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个100以内的数:");
int res = random.nextInt(100);
while (true){
int yus = scanner.nextInt();
if (yus<res){
System.out.println("小");
}else if(yus>res){
System.out.println("大");
}else {
System.out.println("对了");
break;
}
}
Test10 数组遍历
/**
* 数组的遍历
*/
int[] arr1 = {7,5,4,5,4,4,4,5};
for (int i=0;i< arr1.length;i++){
System.out.print(arr1[i]);
}
System.out.println();
for (int i=arr1.length-1;i>=0;i--){
System.out.print(arr1[i]);
}
Test11 数组求最值
/**
*求最值
*/
//调用生成随机数
Random random = new Random();
//自定义一个数组 长度20
int[] arr2 = new int[20];
//将自动生成的随机数存放再数组里
for (int i=0;i<arr2.length; i++){
arr2[i] = random.nextInt(100);
}
//遍历数组
for (int i = 0 ;i<arr2.length;i++){
System.out.print(arr2[i] + "\t");
}
System.out.println();
//定义最大值变量max,并判断最大值 赋值给max,输出max
int max=0;
for (int i=0;i<arr2.length; i++){
if (arr2[i]>max){
max = arr2[i];
}
}
System.out.println(max);
Test12 数组求最值 及其 下标
/**
*求最值 以及下标
*/
//调用生成随机数
Random random = new Random();
//自定义一个数组 长度20
int[] arr = new int[20];
//将自动生成的随机数存放再数组里
for (int i=0;i<arr.length;i++){
arr[i] = random.nextInt(100);
}
//遍历数组
for (int i=0;i<arr.length;i++){
System.out.print(arr[i]+" ");
}
System.out.println();
//定义最大值变量max,并判断最大值 赋值给max,输出max
int max=0;
for (int i=0;i<arr.length;i++){
if( arr[i] > arr[max]){
max= i;
}
}
System.out.println( "最大值" + arr[max]);
System.out.println( "数组下标" + max);
Test13 求指定元素的位置
/**
* 求指定元素的位置
*/
//生成随机数
Random random = new Random();
//定义一个数组,并将随机产生的数存入数组
int[] arr = new int[10];
for (int i = 0; i< arr.length;i++){
arr[i] = random.nextInt(100);
}
//遍历数组 查看其数据 共用户选择
for (int i=0;i<arr.length;i++){
System.out.print(arr[i] + " ");
}
System.out.println();
//扫描键盘输入的值
Scanner scanner = new Scanner(System.in);
//获取用户输入的值
System.out.println("请选择一个数:");
int a = scanner.nextInt();
//
int i;
for (i=0;i< arr.length;i++){
if (arr[i] == a){
System.out.println("它的位置是"+ (i+1));
break;
}
}
// System.out.println("它的位置是"+ (i+1));