for循环之初学者N多算法小练习

for循环之初学者N多算法小练习

  1. 显示1到100的数,每行显示5个。
    1. for (int i=1;i<=100;i++){
    2.     if (i%5==0){
    3.         System.out.print(" "+i+" ");
    4.     }else{
    5.         System.out.print(" "+i);
    6.     }
    7. }
  2. 显示三位数中可以被8整除的数,每行显示8个。
    1. int j=0;
    2. for (int i=100;i<1000;i++){
    3.     if (i%8==0){
    4.         System.out.print(" "+i);
    5.         j++;
    6.         if (j==8){
    7.             j=0;
    8.             System.out.println();
    9.         }
    10.     }
    11. }
  3. 输入10个数,统计偶数个数及其平均数。
    1. Scanner sc=new Scanner(System.in);
    2. int j=0,z=0;
    3. int temp=0;
    4. double count1=0,count2=0;
    5. System.out.println("请输入10个数:");
    6. for (int i=0;i<10;i++){
    7.     try {
    8.         System.out.print("输入第"+(i+1)+"个数:");
    9.         temp=sc.nextInt();
    10.     }catch (Exception e){
    11.         System.out.println("程序错误");
    12.         break;
    13.     }
    14.     if (temp<0){
    15.         System.out.println("请输入正整数! 程序结束!");
    16.         break;
    17.     }else if (temp%2==0){
    18.         count1=count1+temp;
    19.         j++;
    20.     }else{
    21.         count2=count2+temp;
    22.         z++;
    23.     }
    24. }
    25. if (j==0){
    26.     System.out.println("共有"+j+"个奇数,平均值为:0");
    27. }else{
    28.     System.out.println("共有"+j+"个偶数,平均值位:"+(count1/j));
    29. }
    30. if (z==0){
    31.     System.out.println("共有"+z+"个奇数,平均值为:0");
    32. }else{
    33.     System.out.println("共有"+z+"个奇数,平均值为:"+(count2/z));
    34. }
  4. 打印乘法口诀表
    1. for (int i=1;i<10;i++){
    2.     for (int j=1;j<=i;j++){
    3.         System.out.print(j+"*"+i+"="+(i*j)+" ");
    4.     }
    5.     System.out.println();
    6. }
  5. 从键盘输入3个数,并将它们排序。
    1. Scanner sc=new Scanner(System.in);
    2. int n1=sc.nextInt();
    3. int n2=sc.nextInt();
    4. int n3=sc.nextInt();
    5. if(n1<n2){
    6.     int temp=n1;
    7.     n1=n2;
    8.     n2=temp;
    9. }
    10. if (n1<n3){
    11.     int temp=n1;
    12.     n1=n3;
    13.     n3=temp;
    14. }
    15. if (n2<n3){
    16.     int temp=n2;
    17.     n2=n3;
    18.     n3=temp;
    19. }
    20. System.out.println(n1+" "+n2+" "+n3);
  6. 输入一个数判断是不是质数
    1. Scanner sc=new Scanner(System.in);
    2. int n= sc.nextInt();
    3. int j=0;
    4. for (int i=1;i<=n;i++){
    5.     if (n%i==0){
    6.         j++;
    7.     }
    8. }
    9. if(j==2){
    10.     System.out.println("质数");
    11. }else{
    12.     System.out.println("和数");
    13. }
  7. 从三位数中找出符合"abc=a^3+b^3+c^3"条件的数。
    1. for (int i=100;i<1000;i++){
    2.     int a=i/100;
    3.     int b=(i-(a*100))/10;
    4.     int c=i-a*100-b*10;
    5.  
    6.     if ((a*a*a+b*b*b+c*c*c)==i){
    7.         System.out.println(i);
    8.     }
    9. }
  8. 从三位数中找出符合 他本身等于他所有约数的和 条件的数
    1. for (int i=1;i<1000;i++){
    2.     int count=0;
    3.     for (int j=1;j<i;j++){
    4.         if (i%j==0){
    5.             count=count+j;
    6.         }
    7.     }
    8.     if (count==i){
    9.         System.out.println(" ===========");
    10.         System.out.print("--"+i+"=1");
    11.         for (int z=2;z<i;z++){
    12.             if (i%z==0){
    13.                 System.out.print("+"+z);
    14.             }
    15.         }
    16.     }
    17. }
  9. 计算1到100相加的和。
    1. int sum=0;
    2. for (int i=1;i<=100;i++){
    3.     sum+=i;
    4. }
    5. System.out.println(sum);
  10. 计算三位数中能被7除尽数的和
    1. int sum=0;
    2. for(int i=100;i<1000;i++){
    3.     if (i%7==0){
    4.         sum+=i;
    5.     }
    6. }
    7. System.out.println(sum);
  11. 计算1到100相乘的积。
    1. BigInteger b=new BigInteger("1");
    2. //double sum=1;
    3. for (int i=1;i<=100;i++){
    4.     //sum=sum*i;
    5.     b=b.multiply(new BigInteger(""+i));
    6. }
    7. System.out.println(b);
  12. 将三位数中的质数按每5个一行输出。
    1. int c=0;
    2. for (int i=100;i<1000;i++){
    3.     int count=0;
    4.     for (int j=1;j<=i;j++){
    5.         if (i%j==0){
    6.             count=count+1;
    7.         }
    8.     }
    9.     if (count==2){
    10.         System.out.print(i+" ");
    11.         c++;
    12.         if (c==5){
    13.             System.out.println();
    14.             c=0;
    15.         }
    16.     }
    17. }
  13. 计算从1累加到和为3003时的次数
    1. int sum=0;
    2. for (int i=1;;i++){
    3.     sum+=i;
    4.     if (sum==3003){
    5.         System.out.println(i+"--"+sum);
    6.         break;
    7.     }
    8. }
原文地址:https://www.cnblogs.com/dm00/p/6234819.html