C语言编程:输入某年某月某日判断这一天是一年的第几天的程序是是什么
#include <stdio.h>
//返回指定年月日是对应年度的第几天
int getDays(int month,int day);
int isRunnian(int year);
int main(int argc,char* argv[])
{
int year=0;
int month=0;
int day=0;
printf("请输入年月日格式示例20140101\n");
scanf("%4d%2d%2d",&year,&month,&day);
//简化后的条件,是闰年且月份大于二,则返回天数加一,否则直接返回函数值
int days = getDays(month,day);
if (days==0){
printf("您输入的日期格式无效。\n");
return 0;
}
if (isRunnian(year) && month >2){
printf("输入日期是对应年份的第%d天",days+1);
}else{
printf("输入日期是对应年份的第%d天",days);
}
return 0;
}
//循环实现
int getDays(int month,int day){
int NUMBER[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int result=day;
if (month >12){ //避免出现数组越界情况
return 0;
}
for (int i=0;i< month-1;i++){//数组下标是从零开始
result+= NUMBER[i];
}
return result;
}
int isRunnian(int year){
//闰年的条件
//一:年度是400的整数倍,则是闰年
//二:年度能被4整除且不能被100整除
return year%4 ==0 && year%100 !=0 || year%400 ==0;
}
您好,计算机二级C语言考试可以最后做选择题吗,一般应该分配多少时间给选择题呢
可以的,不过 不建议几这么做,四十个选择题,如果你是计算机专业的话,基本上三十分钟,如果非计算机专业,建议你稳着点,五十分钟左右,选择题是拿分的题,剩下的题目千万不要空题,选择题拿不到三十分左右的话,除非你大题能拿到高分,不然就危险了。
选择都是基础,基础学不好的话,后面大题 一般答起来都有困难啊
请教,C语言如何实现:从键盘输入某一天的年月日,计算该天是当年的第几天
#include <stdio.h>
int fun(int year,int month,int day)
{
int s=0,a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
if(year%4==0&&year%100||year%400==0)
a[2]=29;
if(month==1) s+=day;
else s+=a[month]+fun(year,month-1,day);
return s;
}
void main(){
int year,month,day;
scanf("%d-%d-%d",&year,&month,&day);
printf("%d年的第%d天",year,fun(year,month,day));
}