c语言编程:输入某年某月某日,计算出这一天是该年的第几天?该怎么解答啊
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言编程:输入某年某月某日,计算出这一天是该年的第几天?该怎么解答啊相关的知识,希望对你有一定的参考价值。
//输入年月日,输出是该年第几天#include<stdio.h>
int sum(int month,int day)
int days[13]=0,31,28,31,30,31,30,31,31,30,31,30,31;
int i;
for(i=1;i<month;i++)
day+=days[i];
return(day);
int leap(year)
int leap=0;
if((year%4==0&&year%100!=0)||(year%400==0))
leap=1;
return leap;
void main()
int year,month,day,num;
printf("Please input year,month,day:\n");
scanf("%d,%d,%d",&year,&month,&day);
num=sum(month,day);
if(leap(year)&&month>=3)
num++;
printf("It is the %dth day.\n",num);
参考技术A //输入年月日,输出是该年第几天
#include<stdio.h>
int
sum(int
month,int
day)
int
days[13]=0,31,28,31,30,31,30,31,31,30,31,30,31;
int
i;
for(i=1;i<month;i++)
day+=days[i];
return(day);
int
leap(year)
int
leap=0;
if((year%4==0&&year%100!=0)||(year%400==0))
leap=1;
return
leap;
void
main()
int
year,month,day,num;
printf("Please
input
year,month,day:\n");
scanf("%d,%d,%d",&year,&month,&day);
num=sum(month,day);
if(leap(year)&&month>=3)
num++;
printf("It
is
the
%dth
day.\n",num);
参考技术B 这个,如果傻一点点可以用个循环从1月1日起来始累加,直到加到等于你的这个日期为止
输入某年某月某日,判断这一天是这一年的第几天?
题目:输入某年某月某日,判断这一天是这一年的第几天?
程序分析:以7月9日为例,应该先把前两个月的加起来,然后再加上9天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。
1 package com.li.FiftyAlgorthm; 2 3 import java.util.Scanner; 4 5 /** 6 * 题目:输入某年某月某日,判断这一天是这一年的第几天? 7 * 程序分析:以7月9日为例,应该先把前两个月的加起来,然后再加上9天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。 8 * 9 * @author yejin 10 */ 11 public class YearMonthDay { 12 public static void main(String[] args) { 13 int year, month, day; 14 int days = 0; 15 int d = 0; 16 17 YearMonthDay fymd = new YearMonthDay(); 18 19 System.out.print("Input the year:"); 20 year = fymd.input(); 21 System.out.print("Input the month:"); 22 month = fymd.input(); 23 System.out.print("Input The Day:"); 24 day = fymd.input(); 25 26 if (year < 0 || month < 0 || month > 12 || day < 0 || day > 31) { 27 System.out.println("Input error, please run this program again!"); 28 System.exit(0); 29 } 30 for (int i = 1; i < month; i++) { 31 switch (i) { 32 case 1: 33 case 3: 34 case 5: 35 case 7: 36 case 8: 37 case 10: 38 case 12: 39 days = 31; 40 // d += days; 41 break; 42 case 4: 43 case 6: 44 case 9: 45 case 11: 46 days = 30; 47 // d += days; 48 break; 49 case 2: 50 if ((year % 400 == 0) || (year % 4 == 0 && year % 100 != 0)) { 51 days = 29; 52 } else { 53 days = 28; 54 } 55 // d += days; 56 break; 57 } 58 59 d += days; 60 61 } 62 System.out.println(year + ":" + month + ":" + day + "是今年的第" + (d + day) 63 + "天。"); 64 } 65 66 public int input() { 67 int value = 0; 68 Scanner s = new Scanner(System.in); 69 value = s.nextInt(); 70 return value; 71 } 72 }
以上是关于c语言编程:输入某年某月某日,计算出这一天是该年的第几天?该怎么解答啊的主要内容,如果未能解决你的问题,请参考以下文章