精华内容
下载资源
问答
  • 判断一天为一年中的哪一天 输入样例: 2012 3 17 输出样例: 2012的第77天 方法1: 代码入下: #include"stdio.h" void mt(int *a,int *b,int *c) { int sum,d; switch (*b) //从1月份开始遍历寻找,遍历到...

    判断某一天为一年中的哪一天

    输入样例:

    2012 3 17

    输出样例:

    2012的第77天

    方法1:
    代码入下:

    #include"stdio.h"
    void mt(int *a,int *b,int *c)
    {
    	int sum,d;
    	switch (*b) //从1月份开始遍历寻找,遍历到对应月份结束并进行下一语句 
        {
            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+*c;//加上对应月份的日期 
    	if((*a%400==0)||(*a%4==0)&&(*a%100!=0))//判断是否为闰年,若为闰年则2月为29天须加1 
    		d=1;
    	else
    		d=0; 
    	sum++;
    	printf("%d年的第%d天\n",*a,sum);
    }
    int main()
    {
    	int *a,*b,*c,m,n,p;
    	a=&m;b=&n;c=&p;
    	scanf("%d %d %d",&m,&n,&p);
    	mt(a,b,c);
    	return 0;
     } 
    

    方法2:
    代码如下:

    #include "stdio.h"
     struct Y_m_d
     {
     	int year;
     	int month;
     	int day;
     };
     struct Y_m_d ymd;
     void days(struct Y_m_d ymd)//定义函数的括号内为结构体变量,不能用成员名 
     {
     	int sum;
     	switch(ymd.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+ymd.day;
    	 if(ymd.year%4==0 && ymd.year%100!=0 || ymd.year%400==0)
    	 	sum++;//若为闰年2月多1天,加上1 
    	printf("%d年的第%d天",ymd.year,sum);
      } 
     int main()
     {
     	scanf("%d%d%d",&ymd.year,&ymd.month,&ymd.day);
     	days(ymd);
     	return 0;
     }
     
    
    展开全文
  • } 个小错误,是if语句的条件判断,都少了括号,形式应该是 if ( ) else { } 更改如下: /*刚开始学C语言.只会这种简单的编程.但是看了好多遍都没发现错误.而系统说我有个error, 请问是哪里出错了.上几次编程...

    答案:条件表达式要加括号

    #include

    int main()

    {

    int year,month,day;

    printf("Enter the year,month,day:\n");

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

    int sum=0;

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

    {

    if (month==1)

    sum=0;

    else if (month==2)

    sum=31;

    else if (month==3)

    sum=31+29;

    else if (month==4)

    sum=31+29+31;

    else if (month==5)

    sum=31+29+31+30;

    else if (month==6)

    sum=31+29+31+30+31;

    else if (month==7)

    sum=31+29+31+30+31+30;

    else if (month==8)

    sum=31+29+31+30+31+30+31;

    else if (month==9)

    sum=31+29+31+30+31+30+31+31;

    else if (month==10)

    sum=31+29+31+30+31+30+31+31+30;

    else if (month==11)

    sum=31+29+31+30+31+30+31+31+30+31;

    else if (month==12)

    sum=31+29+31+30+31+30+31+31+30+31+30;

    }

    else

    {

    if (month==1)

    sum=0;

    else if (month==2)

    sum=31;

    else if (month==3)

    sum=31+28;

    else if (month==4)

    sum=31+28+31;

    else if (month==5)

    sum=31+28+31+30;

    else if (month==6)

    sum=31+28+31+30+31;

    else if (month==7)

    sum=31+28+31+30+31+30;

    else if (month==8)

    sum=31+28+31+30+31+30+31;

    else if (month==9)

    sum=31+28+31+30+31+30+31+31;

    else if (month==10)

    sum=31+28+31+30+31+30+31+31+30;

    else if (month==11)

    sum=31+28+31+30+31+30+31+31+30+31;

    else if (month==12)

    sum=31+28+31+30+31+30+31+31+30+31+30;

    }

    sum=sum+day;

    printf("The sum is %d",sum);

    return 0;

    }

    一个小错误,是if语句的条件判断,都少了括号,形式应该是 if ( )  else { }

    更改如下:

    /*刚开始学C语言.只会这种简单的编程.但是看了好多遍都没发现错误.而系统说我有一个error,

    请问是哪里出错了.上几次编程也老是错一个.我觉得是我某个地方没注意,所以老是错,*/

    #include

    int main()

    {

    int year,month,day;

    printf("Enter the year,month,day:\n");

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

    int sum=0;

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

    {

    if(month==1)

    sum=0;

    else if(month==2)

    sum=31;

    else if(month==3)

    sum=31+29;

    else if (month==4)

    sum=31+29+31;

    else if(month==5)

    sum=31+29+31+30;

    else if(month==6)

    sum=31+29+31+30+31;

    else if(month==7)

    sum=31+29+31+30+31+30;

    else if(month==8)

    sum=31+29+31+30+31+30+31;

    else if(month==9)

    sum=31+29+31+30+31+30+31+31;

    else if(month==10)

    sum=31+29+31+30+31+30+31+31+30;

    else if(month==11)

    sum=31+29+31+30+31+30+31+31+30+31;

    else if(month==12)

    sum=31+29+31+30+31+30+31+31+30+31+30;

    }

    else

    {

    if(month==1)

    sum=0;

    else if(month==2)

    sum=31;

    else if(month==3)

    sum=31+28;

    else if(month==4)

    sum=31+28+31;

    else if(month==5)

    sum=31+28+31+30;

    else if(month==6)

    sum=31+28+31+30+31;

    else if(month==7)

    sum=31+28+31+30+31+30;

    else if(month==8)

    sum=31+28+31+30+31+30+31;

    else if(month==9)

    sum=31+28+31+30+31+30+31+31;

    else if(month==10)

    sum=31+28+31+30+31+30+31+31+30;

    else if(month==11)

    sum=31+28+31+30+31+30+31+31+30+31;

    else if(month==12)

    sum=31+28+31+30+31+30+31+31+30+31+30;

    }

    sum=sum+day;

    printf("The sum is %d\n",sum);

    return 0;

    }

    演示如下:

    9044569a4d24ca6ece61dee2d6a55ec1.png

    展开全文
  • int GetDay( int Year, int Month, int Day ) { int MonthDays[ 13 ] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; if( ( Year % 4 == 0 && Year % 100 != 0 ) || ( Year % 400 == 0 ...
    int GetDay( int Year, int Month, int Day )  
     {    
        int MonthDays[ 13 ] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };    
      
        if( ( Year % 4 == 0 && Year % 100 != 0 ) || ( Year % 400 == 0 ) )    
        {    
            ++MonthDays[ 2 ];    
        }    
      
        int Days = 0;    
        for( int i = 1; i < Month; ++i )    
        {    
           Days += MonthDays[ i ];    
        }    
        Days += Day;    
      
        return Days;    
    }  
    

     

    展开全文
  • C语言判断闰年

    2021-05-25 05:52:58
    }任意输入个年份,判断其是否为闰年: #include #include #pragma warning(disable:4996) int main() { int year = 0; int leap = 0; printf("请输入个年份:"); scanf("%d", &year); if (year % 4 == 0) { if ...

    输出1000年到2000年之间的所有闰年:

    #include

    #include

    #pragma warning(disable:4996)

    int main()

    {

    int year = 0;

    int leap = 0;

    for (year = 1000; year <= 2000; year ++)

    {

    if (year % 4 == 0)

    {

    if (year % 100 == 0)

    {

    if (year % 400 == 0)

    leap = 1;

    else

    leap = 0;

    }

    else

    leap = 1;

    }

    else

    leap = 0;

    if (leap)

    printf("%d\t", year);

    }

    system("pause");

    return 0;

    }任意输入一个年份,判断其是否为闰年:

    #include

    #include

    #pragma warning(disable:4996)

    int main()

    {

    int year = 0;

    int leap = 0;

    printf("请输入一个年份:");

    scanf("%d", &year);

    if (year % 4 == 0)

    {

    if (year % 100 == 0)

    {

    if (year % 400 == 0)

    leap = 1;

    else

    leap = 0;

    }

    else

    leap = 1;

    }

    else

    leap = 0;

    if (leap)

    {

    printf("%d ", year);

    printf("is leap");

    }

    else

    {

    printf("%d ", year);

    printf("is not leap");

    }

    system("pause");

    return 0;

    }

    展开全文
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼输入年月日并判断这是这年中的第几??#includetypedefstruct_DATE{intyear;intmonth;intday;}DATE;intleap(int);main(){inti,sum=0;intdays[]={31,28,31,30,31,30,...
  • 题目:输入某年某月某日,判断一天是这一年的第几天? 程序分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。 源代码: # ...
  • 输入某年某月某日,判断一天是这一年的第几天? 程序分析: 闰年和平年的算法,用二维数组来存储月份和天数 核心代码 void fun(int year,int month,int day){ int s=0; int a[2][12]={0,31,59,90,120,151,181,...
  • c语言输入某年某日,判断一天是这一年的第几天? #include<stdio.h> #include<stdlib.h> int main(){ int date,y,m,d,i,h=0;//20210127 int days[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; ...
  • 置闰的方法是能被4整除的年份在2月加一天,但能被100整除的不闰,能被400整除的又闰。因此,像1600、2000、2400年都是闰年,而1700、1800、1900、2100年都是平年。公元前1年,按公历也是闰年。因此,对于从公元前1年...
  • 比如我们看到题目,接下来就应该想到一些特殊情况:年中的月份有大月和小月,而且还有最特殊的是二月,在闰年是28,平年是29,然后继续想,就会知道我们接下来要做的就是想到判断闰年的条件,然后把月份以某种...
  • 该楼层疑似违规已被系统折叠 隐藏此楼查看此楼... if(leap==1&&month>2)//如果是闰年就在所得结果的基础上再加一天,因为你上面的sum值是以平年计算得到的 sum+=1; printf("%d",sum); } 我在C-free上已经编译通过了^-^
  • C语言:输入某年某月某日,判断一天是这一年的第几天? 使用2个函数来判断闰平年和月份的天数。 #include<stdio.h> int year,month,day; int feb(int i)//函数用于分解闰年和平年2月的天数 { if (year%4==0&...
  • C++:输入年月日判断年中的第几输入年月日判断年中的第几 输入年月日判断年中的第几 #include<stdio.h> int main() { int M[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31}, {0,31,29,...
  • C语言判断一个年份是否为闰年

    千次阅读 2021-09-11 18:44:28
    注意闰年(公历中的名词)和闰月(农历中的名词)并没有直接的关联,公历只分闰年和平年,平年有365天,闰年有366天(2月中多一天);平年中也可能有闰月(如2017年是平年,农历有闰月,闰六月)。 判断方法: 普通...
  • int day,month,year=2019,i,sum=0;int months[12]={31,28,31,30,31,30,31,31,30,31,30,31};printf("1到12月的天数分别是:");for(i=0;i<12;i++){sum+=months[i];...}printf("共: %d \n\n",sum);if(...
  • #include#include//判断是否是闰年int leap(int year){if(year%4==0&&year%100!=0) return 1;else if(year%400==0) return 1;else return 0;}//返回某年某月的天数int monthdays(int year, int month){if...
  • 当然我们必须考虑是否是润年,这里只要记得瑞年的判断语句,就比较简单,因为它们只相差一天,所以使用if语句就可以进行输出了,代码如下:#include// 输入某年某月某日,判断一天是这一年的第几天//这是又缺陷的,...
  • C语言输入某年某月某日,判断一天是这一年的第几天(含判断闰年) 代码 //输入某年某月某日,判断一天是这一年的第几天? #include<stdio.h> //判断闰年函数 int isLeapYear(int year) { //闰年,能被...
  • 题目:输入某年某月某日,判断一天是这一年的第几天? 分析:以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需多加一天。 普通方法: int main() { int...
  • 不等价,因为判断闰年的标准是:1、能整除4且不能整除100 2、能整除400你的意思是:每4年有个闰年1896是闰年,4年后1900也是闰年除以4就是闰年但严格上讲,"每4年个闰年"这说法不严谨.应该是四年闰,百年不闰,四百年...
  • C语言 日期计算加一天 源代码答案:4信息版本:手机版解决时间 2019-10-06 05:17已解决2019-10-05 10:24#include void main (){float a,b,c;scanf ("%fa %fb %fc",&a,&b,&c);if (a!=(int)a||b!=(int)b||c...
  • 题目:输入某年某月某日,判断一天是这一年的第几天? 程序实现: #include <stdio.h> void main(){ int year,month,day,sum,result; printf("请输入年月日输入格式:年,月,日\n"); scanf("%d,%d,%d",...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 38,973
精华内容 15,589
关键字:

c语言判断是哪一天

c语言 订阅