您的位置:首页 > 其它

第16-19章项目3-当年第几天(数组方案)

2018-03-14 17:02 288 查看
问题及代码:/*
Copyright(c)2018,CSDN学院行者-
All rights reserved.
文件名称:main.c
作者:乔帅
完成日期:2018年3月14日
版本号:v1.0

问题描述:当年第几天(数组方案)
输入描述:输入年月日
程序输出:输出改日为当年第几天
*/

#include<stdio.h>
int days(int y, int m, int d);
int main()
{
int year, month, day;
printf("输入年 月 日: ");
scanf("%d %d %d", &year, &month, &day);
printf("这是该年的第 %d 天\n", days(year, month, day));
return 0;
}

int days(int y, int m, int d)
{
int dd[13]={0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
//请利用d数组,10行之内,求出并返回y年m月d日是这一年的第几天
int tt=d;
int i;
//前面当月的d天已经进行了累加,因此只需要累加m-1月。
for(i = 1 ; i < m ; i++){
tt+=dd[i];
}
if((m>2)&&(y%400 == 0) ||( y%4 == 0 && y%100 != 0 )){ //大于2月且是闰年加1天
tt++;
}
return tt;
}运行结果:



知识点总结:
1.数组的应用
学习心得:
积累代码,加油!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: