一维数组 --> 案例

案例题目一

  • 提示用户输入学生的人数以及每个学生的考试成绩并打印出来。
  • 计算该班级的总分和平均分并打印出来。
package demo;
/*
    编程使用数组来记录学生的考试成绩并打印
 */
 
import java.util.Scanner; 
import java.util.Arrays;
 
public class ArrayScoreTest {
   
   public static void main(String[] args) {
      
      // 1.提示用户输入学生的人数并使用变量记录
      System.out.println("请输入学生的人数:");
      Scanner sc = new Scanner(System.in);
      int num = sc.nextInt();
      
      // 2.根据学生的人数来声明对应长度的数组负责记录学生的考试成绩
      // 变长数组 : 主要指变量可以作为数组的长度,但绝不是数组的长度可以发生改变
      int[] scores = new int[num];
      
      // 3.提示用户输入每个学生的考试成绩并记录一维数组中
      for(int i = 0; i < num; i++) {
         System.out.println("请输入第" + (i+1) + "个学生的考试成绩:");
         scores[i] = sc.nextInt();
      }
      
      // 4.打印所有学生的考试成绩
      System.out.print("本班学生的考试成绩分别是:");
      for(int i = 0; i < scores.length; i++) {
         System.out.print(scores[i] + " ");
      }
      System.out.println();
      
      System.out.println("----------------------------------------------");
      // 5.计算本班级学生的总分以及平均分并使用变量记录
      int sum = 0;
      for(int i = 0; i < scores.length; i++) {
         sum += scores[i];
      }
      double avg = sum*1.0 / num;
      // 打印最终的计算结果
      System.out.println("本班级学生的总分是:" + sum + ",平均分是:" + avg);
   }
}
请输入学生的人数:
3
请输入第1个学生的考试成绩:
59
请输入第2个学生的考试成绩:
80
请输入第3个学生的考试成绩:
100
本班学生的考试成绩分别是:59 80 100 
----------------------------------------------
本班级学生的总分是:239,平均分是:79.66666666666667

案例题目二

使用一维数组 判断这一天是今年是第几天并打印

package demo;

import java.util.Scanner;
/**
 * 提示用户输入年月日信息,判断这一天是这一年中的第几天并打印
 * 闰年(满足以下任一一点)366天  2月份 29天
 * 1、年份是4的倍数,但不是100的倍数。
 * 2、年份数是400的倍数
 *
 * 1900年是4的倍数,但同时也是100的倍数,所以是平年。
 * 2000年是100的倍数,但它是400的倍数,所以是闰年。
 */
public class ZuoYe2 {
    public static void main(String[] args) {
        //            1  2   3  4  5  6  7  8 9  10 11 12
        //            0  1   2  3  4  5  6  7 8  9  10 11
        int [] arr = {31,29,31,30,31,30,31,31,30,31,30,31};
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入年份:");
        int year = sc.nextInt();
        System.out.println("请输入月份:");
        int month = sc.nextInt();
        System.out.println("请输入日:");
        int day = sc.nextInt();
        int totalDay = 0;
        for(int i = 0; i<month-1;i++){
            totalDay += arr[i];
        }
        totalDay += day;
        //判断是平年还是闰年
        if((0 == year%4 && 0!=year%100)||0 ==year%400){
            System.out.println(year+"是闰年,已经过了"+totalDay+"天了");
        }else{
            totalDay--;
            System.out.println(year+"是平年,已经过了"+totalDay+"天了");
        }
    }
}

显示结果:

请输入年份:
2021
请输入月份:
9
请输入日:
3
2021是平年,已经过了246天了
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

~忆缘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值