c语言编程:输入年月日,求出该天是该年的第几天

作者&投稿:郟妹 (若有异议请与网页底部的电邮联系)
C语言编程:输入年月日计算该日是该年中的第几天。。。这里那里错了?????~

你好!!!

改动一:case 11:
d=30; // 这里少了一个分号

改动二:days+=day; // 循环外面,这里加上输入的日期数

完整的代码:
#includemain(){int year,month,day,days,i,d;scanf("%d-%d-%d",&year,&month,&day);days=0;for(i=1;i<month;i++){switch(i){case 1:case 3:case 5:case 7:case 8:case 10:case 12:d=31;break;case 4:case 6:case 9:case 11:d=30; // 这里少了一个分号 break;case 2:if(year%4==0&&year%100!=0||year%400==0)d=29;else d=28;}days+=d;}days+=day; // 这里加上输入的日期数printf("%d",days);}

//输入年月日,输出是该年第几天
#include
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:
");
scanf("%d,%d,%d",&year,&month,&day);
num=sum(month,day);
if(leap(year)&&month>=3)
num++;
printf("It is the %dth day.
",num);
}

#include<stdio.h>

intmain()

{intday,month,year,sum,leap;

printf("
请输入年、月、日,格式为:年,月,日(2015,12,10)
");

scanf("%d%d%d",&year,&month,&day);//格式为:20190510

switch(month)//先计算某月以前月份的总天数

{case1:sum=0;break;

case2:sum=31;break;

case3:sum=59;break;

case4:sum=90;break;

case5:sum=120;break;

case6:sum=151;break;

case7:sum=181;break;

case8:sum=212;break;

case9:sum=243;break;

case10:sum=273;break;

case11:sum=304;break;

case12:sum=334;break;

default:printf("dataerror");break;}

sum=sum+day;//再加上某天的天数

if(year%400==0||(year%4==0&&year%100!=0))

{//判断是不是闰年

leap=1;

}

else

{leap=0;

}

if(leap==1&&month>2)

{//*如果是闰年且月份大于2,总天数应该加一天

sum++;

}

printf("这是这一年的第%d天。",sum);

printf("
");

}

扩展资料

使用c语言编程结构tm格式化时间注意事项:

tm结构在C/C++中处理日期和时间相关的操作时,显得尤为重要。tm结构以C结构的形式保存日期和时间,大多数与时间相关的函数都使用了tm结构。

使用了tm结构和各种与日期和时间相关的函数。在练习使用结构之前,需要对C结构有基本的了解,并懂得如何使用箭头->运算符来访问结构成员。

参考资料来源:百度百科—c语言



这样:

#include<stdio.h>

int main()

{

int day,month,year,sum=0,leap;

printf("输入年月日如2019 7 12
");

scanf("%d %d %d",&year,&month,&day);

switch(month

{

case 1:sum=0;break

case 2:sum=31;break;

case 3:sum=59;break;

case 4:sum=90;break;

case 5:sum=120;break;

case 6:sum=151;break;

case 7:sum=181;break;

case 8:sum=212;break;

case 9:sum=243;break;

case 10:sum=273;break;

case 11:sum=304;break;

case 12:sum=334;break;

default:printf("data error");break;

}

sum=sum+day;

if((year%400==0||(year%4==0&&year%100!=0))&&month>2)

sum++;

printf("这是这一年的第%d天。",sum);

return 0;

}

扩展资料:

注意事项

输入格式:

输入在一行中按照“mm-dd-yyyy”的格式给出月、日、年。题目保证给出的日期是1900年元旦至今合法的日期。

输出格式:

在一行中按照“yyyy-mm-dd”的格式给出年、月、日。

输入样例:

03-15-2017

输出样例:

2017-03-15

程序:

#include <stdio.h> 

int main()

{

    int year, month, day;    

    scanf("%d-%d-%d", &month, &day, &year);

    printf("%d-%02d-%02d
", year, month, day);

    return 0;

}



#include<stdio.h>
int main(void)
{
int month,year,day,sum,i=0;
printf("Input the year, the month and the day:\n");
scanf("%d %d %d",&year,&month,&day);
switch(month)
{
case 12: i=i+30;
case 11: i=i+31;
case 10: i=i+30;
case 9: i=i+31;
case 8: i=i+31;
case 7: i=i+30;
case 6: i=i+31;
case 5: i=i+30;
case 4: i=i+31;
case 3: i=i+28;
case 2: i=i+31;
case 1: ;
default:
;

}
sum=i+day;
if(((year%4==0&&year%100!=0)||(year%400==0))&&(month>2))
sum=sum+1;
printf("the day is the %d day in %d year\n",sum,year);

}


用c语言中的数组编程,当填写年月日时,输出是这年的第几天.
方法一:include<stdio.h> include <conio.h> include <stdlib.h> void main(){ int day,month,year,sum,leap;do{ printf("\\nplease input year month day\\n");printf("\\n请输入年 月 日\\n");scanf("%d %d %d",&year,&month,&day);if((month==1&&day<=31&&day>=1)|| ((year...

C语言 输入年月日:知道它在一年中是哪一天。求每步的详细步骤(有代码...
include <stdio.h> void main() { int a[12]={0,31,28,31,30,31,30,31,31,30,31,30}; \/\/1~11月每月天数数组 int year,month,date,tot=0; scanf("%d%d%d",&year,&month,&date); \/\/输入年月日 for(int i=0;i<momth;i++) \/\/循环累加每月的天数,不包括month的月 { tot=...

输入年月日,计算该日期是该年第几天(注意平年闰年)c语言编程怎么编?
include<stdio.h>int main(){ int Total = 0,Day = 0,Month = 0,Year = 0,Leap = 0; printf("Please input: Year Month Day\\n"); scanf("%d %d %d",&Year,&Month,&Day); switch(Month) { case 1:Total=0;break; case 2:Total=31;break; case 3:Total=59;break; case...

C语言编写程序实现:从键盘输入一个年月日,要求出该天是该年的第几天...
include<stdio.h> int main(void){ int month,year,day,sum,i=0;printf("输入年月日:\\n");scanf("%d %d %d",&year,&month,&day);switch(month){ case 12: i=i+30;case 11: i=i+31;case 10: i=i+30;case 9: i=i+31;case 8: i=i+31;case 7: i=i+30;case 6: i=i...

c语言:输入年月日,求这一天是这一年中的第多少天,要求用函数完成...
include<stdio.h>int f(int year,int month, int day){ int flag=0; if((year%4==0 && year%100!=0) || (year%400==100))flag = 1; else flag =0; int a=0; switch(month-1) { case 11 :a+=30; case 10 :a+=31; case 9 :a+=30; c...

...编程序实现如下功能:输入任意一个年份和月份,求出从公元1年1月1日...
include<stdio.h>int Month[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};int print_month[7][8];bool leap_year(int year){ return year%4==0&&year%100!=0||year%400==0;}int get_days(int year,int month,int day){\/\/返回从公元1年1月1日到该日期的天数 int...

c语言输入一个人的生日(年月日),并输入当前日期(年月日),计算输出改学 ...
include<stdio.h> void main(){ int startYear,endYear,startMonth,endMonth,startDay,endDay,i,p=0,r=0;printf("请输入出生日期:");scanf("%d,%d,%d",&startYear,&startMonth,&startDay);printf("请输入现在日期:");scanf("%d,%d,%d",&endYear,&endMonth,&endDay);while(startYear>...

用c 语言编写程序:根据输入的年、月、日,求出该日是这一年中的第几天...
没有判断输入不合常识的情况 include<stdio.h> include<string.h> include<stdlib.h> int main(){ int a[12] = {31,28,31,30,31,30,31,31,30,31,30,31};printf("请输入年月日(YYYY-MM-DD):");char s[11] = {'\\0'},year[5] = {'\\0'},month[3] = {'\\0'},day[3] ...

C语言题目:设计一个程序输入年月日 输出下一天的年月日
include<stdio.h> include<stdlib.h> include<string.h> include<iostream> using namespace std;struct date { int y;int m;int d;};date tomorrow(date a);bool isleapyear(int year);int main(){ date a;scanf("%d %d %d",&a.y,&a.m,&a.d);a=tomorrow(a);printf("%d %d %d"...

用C语言编写:运用函数输入年月日使之输出这是一年中的第几天?_百度知...
运行结果:图片里 #include <stdio.h> int main( void ) { int y,m,d,mm[]={31,28,31,30,31,30,31,31,30,31,30,31}; int i,ds; printf("输入年:"); scanf("%d",&y); printf("输入月:"); scanf("%d",&m); printf("输入日:"); scanf("%d",&d); if(y%4==0 &&...

枣阳市15964474820: c语言输入年、月、日,输出该日期是该年的第几天 -
仰星齐索: #include <stdio.h> main() {int year,moth,day;int sum;while(scanf("%d%d%d",&year,&moth,&day)!=EOF){switch(moth){case 1:sum=day;break;case 2:sum=31+day;break;case 3:sum=59+day;break;case 4:sum=90+day;break;...

枣阳市15964474820: C语言编程,要求输入年月日,输出该天位于这天的第几天,请高手帮帮忙,我是初学者,请尽量些简单点! -
仰星齐索: 代码如下....因为你要简单一点..就没有写成函数的形式....#include"stdio.h" void main() { int year,month,day; int dayOfYear = 0;/*保存最后的结果*/ int i; /*循环变量*/ printf("please input year : ");/*提示用户输入年*/ scanf("...

枣阳市15964474820: C语言 输入年月日 输出是这一年的第几天 -
仰星齐索: 如图,第一个错误在输入年月日时发生 应改为如下 明显计算结果还是错误的.我决定帮你彻底改正此程序.(等会追答)

枣阳市15964474820: 请教,C语言如何实现:从键盘输入某一天的年月日,计算该天是当年的第几天. -
仰星齐索: main() { int day,month,year,sum,leap; printf("\nplease input year,month,day\n"); scanf("%d,%d,%d",&year,&month,&day); switch(month)/*先计算某月以前月份的总天数*/ { case 1:sum=0;break; case 2:sum=31;break; case 3:sum=59;...

枣阳市15964474820: c语言 给出年月日,计算是该年的第几天 -
仰星齐索: #include<stdio.h> int main() { int year, month, day; int sum; while (scanf("%d/%d/%d", &year, &month, &day) != EOF) { switch (month) { case 1: sum = 0; break; case 2: sum = 31; break; case 3: sum = 59; break; case 4: sum = 90; break; case 5: ...

枣阳市15964474820: 用c语言中的数组编程,当填写年月日时,输出是这年的第几天. -
仰星齐索: 方法一:#include<stdio.h> #include <conio.h> #include <stdlib.h> void main() { int day,month,year,sum,leap; do{printf("\nplease input year month day\n");printf("\n请输入年 月 日\n");scanf("%d %d %d",&year,&month,&day);if((month==...

枣阳市15964474820: 编写C语言:从键盘输入某个日期(包括年、月、日),编写程序,计算并输出这一天是该年的第多少天. -
仰星齐索: #include<stdio.h> struct date{int y,m,d;}; int fun(struct date *p){int a=0;switch(p->m){case 12:a+=30;case 11:a+=31;case 10:a+=30;case 9:a+=31;case 8:a+=31;case 7:a+=30;case 6:a+=31;case 5:a+=30;case 4:a+=31;case 3:if(p->y%...

枣阳市15964474820: 用C语言编写 “输如年月日,然后输出是这年的第几天” -
仰星齐索: #include <stdio.h> int yy,mm,dd,cnt,m,d; int mo[13] = {0,31,29,31,30,31,30,31,31,30,31,30,31}; int main(){ scanf("%d%d%d",&yy,&mm,&dd); if(yy%4==0 && yy%100!=0) mo[2] = 29; else if(yy%400 == 0) mo[2] = 29; else mo[2] = 28; cnt = 1; m = 1; ...

枣阳市15964474820: c语言程序设计,输入年月日计算是第几天 -
仰星齐索: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18intmain() {intyear, month, day, sum=0, i;intmonths[12]={31,0,31,30,31,30,31,31,30,31,30,31};printf( "请输入年月日:");scanf( "%d %d %d", &year, &month, &day );if((year%4==0&&year...

枣阳市15964474820: 用C语言编写用c 语言编写程序:根据输入的年、月、日,求出该日是这一年中的第几天?
仰星齐索: #include &lt;stdio.h&gt; int monthDays[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int resLocate(int year, int month, int day) { int res = 0, i; for(i = 0; i &lt; month-1; i++) { res += monthDays[i]; } res += day; if(year%4 == 0 &amp;&amp; (year%100 !...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网