java怎么通过出生年月获得五个学生的年龄并计算他们的平均年龄?
1条回答 默认 最新
- 离陌lm 2022-04-04 16:31关注
public class LX_1 {
static Scanner input = new Scanner(System.in);
public static void main(String[] args) {
double average,sum=0;
int x,y,z,a,b,c;
double[] ages = new double[5];
for(int i=0;i<5;i++) {
System.out.print("依次输入第"+(i+1)+"个同学的出生年月日:");
x=input.nextInt();
y=input.nextInt();
z=input.nextInt();System.out.print("依次输入第"+(i+1)+"个同学现在的年月日:"); a=input.nextInt(); b=input.nextInt(); c=input.nextInt(); ages[i] = age(x,y,z,a,b,c); } for(int i=0;i<5;i++) { System.out.println("第"+i+"位同学的年龄为:"+ages[i]); sum += ages[i]; } System.out.println("这五位同学的平均年龄为:" + (sum/5.0)); } public static double age(int x,int y,int z,int a,int b,int c) { int year=0,month=0,day = 0; double age; if(a>=x){ if(b>=y){ if(c>=z){ year=a-x;month=b-y;day=c-z; } else{ year=a-x;month=b-y-1; if(b==4 || b==6 || b==9 || b==10){ day=30-z+c; } else if(b==2){ day=28-z+c; } else day=31-z+c; } } else{ if(c>=z){ year=a-x;month=12-y+b;day=c-z; } else{ year=a-x;month=12-y+b-1; if(b==4 || b==6 || b==9 || b==10){ day=30-z+c; } else if(b==2){ day=28-z+c; } else day=31-z+c; } } } age = year + month/12.0 + day/30.0; return age; }
}
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 smptlib使用465端口发送邮件失败
- ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
- ¥15 对于squad数据集的基于bert模型的微调
- ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
- ¥20 steam下载游戏占用内存
- ¥15 CST保存项目时失败
- ¥15 树莓派5怎么用camera module 3啊
- ¥20 java在应用程序里获取不到扬声器设备
- ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
- ¥15 Attention is all you need 的代码运行