您的位置:首页 > 编程语言

第一节程序大赛代码和心得(三):复杂问题平静心态,步步为营

2016-01-21 09:29 316 查看
3.林老师的作业
这道题没有做出来。关于double去尾转换成整型数的问题,我知道是根据精度不足这个思路。但是由于不甚了解计算机关于此的具体工作原理,只能在多次尝试之后放弃。

5.日期
较为复杂问题,一步一步来,代码可能较多,但是这样能确保结果无误。同时根据计算机工作原理,可以达到很多意想不到的效果。(比如源代码中 flag函数的使用。)

点击(此处)折叠或打开

#include <stdio.h>

int flag(int y)

{

if(y%4)

return 0;

else

return 1;

}

int main()

{

int cal[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};

int n,y=2013,m=1,d=1;

scanf("%d",&n);

int dn=365+flag(y);

while(dn<n)

{

y++;

n=n-dn;

dn=365+flag(y);

}

while(cal[flag(y)][m-1]<n)

{

n=n-cal[flag(y)][m-1];

m++;

}

d=n;

printf("%d-",y);

if(m<10)printf("0");

printf("%d-",m);

if(d<10)printf("0");

printf("%d\n",d);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: