【3.A.S.T】网络安全爱好者's Archiver

黑客学习

saitojie 发表于 2009-2-22 17:44

阿呆学习题目

现在又开始学习了,我从一名老师沦落为一名学生了,比过说实话,我还是挺喜欢做学生的,现在初学C语言,NND,一个破题目,想了我一下午,改了又改,改完了又编,编完了又改,哎哟,我发现我的逻辑思维能力真的不是很高,下面我把其中一道挡了我半天的题目发出来大家看看!由于我是初学,所以觉得,真的是想死我了!~z{&Q1~-R/x!V

xNjrJ!x2C 题目:iLnFk#Mp;Ss

0]^ [[e'as 编写一个程序,要求计算出生日到计算日的总天数
'?NI2oD 算法:6u%~i y9abJ:q
1)输入出生年year1、月month1、日date1和计算日年year2、月month2、日date2。
h};?kGd 2)统计year1到year2-1的总天数;z-mwS1Etw8R*RSc
3)计算出出生日和计算日是当年的第days1和days2。   
0dk7bC,khf 4)总天数等于days+days2-days1 i7y Jf nAC le
根据结果,判断体力、情绪和智力状态`0O3_aet V
     方法如下:yj)o-e-`k
       体力状态:用总天数除以23,余数在0~11为体力高潮期,否则为体力低潮期。+`"emS5E[l[
       情绪状态:用总天数除以28,余数在0~14为情绪高潮期,否则为情绪低潮期。P+C%I,^L
       智力状态:用总天数除以33,余数在0~16为智力高潮期,否则为智力低潮期。
&rWFM(k)OM2y {IAG:c}za@
我自己写出来的,哇靠真是想死我了!~~~~~NND,死了我成千上万的脑细胞!
GR%vF] w? [code]
_6G$AU?,c P #include <stdio.h>Af.N DVa2F.m
int day(int year, int month)[7_/oNj%` SW u
{C5b2u&@pb
    int days;(Vw*Q\Dci ~
    for(int n = 1; n <= month; n++)
#hva4D{)^"x     {J OB,`[F
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
ELx)v%A         {
t2Xt,~dtR             switch (n)[V_L-sX%W y{
            {
KC1X4F/y"rp             case 1:
U.Ei*M;|                 days = 31;
F}pi\Kb                 break;6x$C2I0SPt#s!j
            case 2:
%cYA!}PZ+IM[|V5si                 days += 29;6a"p@0Q[~4I5{
                break;
5y~1D"qD7K&QK             case 3: _T]V/x;}'Dqw
                days += 31;
t$mX7[ |*PX                 break;3| cvxA_ J!y2R*Y
            case 4:?5s'UNdZ!`z
                days += 30;]td9T-vRIv
                break;
/b[ iXw             case 5:yM9yVL
                days += 31;,|0[/oSvo#MS9SF
                break;
F*Q j&o-\:d0M             case 6:
#_5DGhiu |0q                 days += 30;
W asv2oI                 break;
(xAA qfbb&R             case 7:
7FG!V)BY x wD                 days += 31;
kxyy[*Y(m                 break;/\]t:\:F"U M(\m
            case 8:;e"xN-b r*R2X E
                days += 31;.l2x4xM!om2drqF
                break;
L1M1go`U5D\;q             case 9:
L|'U&O7Ne%g)P c1T                 days += 30;aO\$h$p-~7s
                break;
])D3n%G SPB             case 10:
K,mJ!MWDz                 days += 31;
|;V7l9G:E;\x                 break;
i/BOd8bC.}             case 11:
m y1x'KTD'V3S                 days += 30;^(P4R$Sq!zg
                break;*ag*xnmY8V1~SX
            case 12:f-BT'jbfz qs9`RGM
                days += 31;IRm5G iLz
                break;
pz8Ij |             default: _)n;|-@l
                printf("您输入的月份大于12个月,因此不合格!");Kcs5y/sy8W Tc Q`
            }
(hP0A(CD         } ]'^!Y3x7v,sl
        else"z2[2S.}2g
        {
cD*x y9[+P y             switch (n)%]a m_5_3jG6~FP
            {
?%Y,~0R [;I?             case 1:F C:Y)a\;o
                days = 31;lK&TP0Q%G2Wa] ]
                break;"w.d e.QsZ)Qqjr-U[1U
            case 2:3ood tfV~'V
                days += 28;2c$X_^U
                break;
.a5e2t7Fy4W3X             case 3: V!a/jx&G-}?F
                days += 31;/b ]+kbW[7_#O
                break;
@ `rYy,p             case 4:
-W"T+e0W t*G1w)S0xzmX                 days += 30;
PF*k;~9RoI"P                 break;
F m(C I#khg             case 5:|'CC1u#m;X
                days += 31;
Eu ] A0]A                 break;
,N(A5i"@#j]"x cM             case 6:
z ? J i^#vpnx5I R@q                 days += 30;8mk y/c6|
                break;OU6y/X"uxH
            case 7:"Kr%e2F3PB}9R#m*E
                days += 31;9E1IL zj oWr
                break;
6` uu'`mjp5Au+~             case 8:_'g_TLv6~
                days += 31;
)e C%Q UiS                 break;
R(~S(hZ YZ6K(H"m             case 9:0{j LhS4c }zj
                days += 30;
4R3v`.Gd0{ie"BS                 break;Y2]!Z7a7n%{.t
            case 10:
0n.DRDiV9iNCqn                 days += 31;%K v6aW7M,w,]E.n?:HR
                break;s)i9f#B7g o1[ jm9\
            case 11:
#`WE{ b3G&?                 days += 30;&Q{)K;l S]3]*e
                break;
.Vni A)R*f9L/it             case 12:? m a^_ eE9Il
                days += 31;PL'C,u? I!O
                break;
&X&]9P4h?'X`             default:C4u+LdE Z8@
                printf("您输入的月份大于12个月,因此不合格!");SK uHF!mi
            }
!Q*m D&O8lm d         }1^ _[*W \{.L&PiU u
    }*s;z9GA_
    return days;[!wgd(P b
}$g| FPq0s~ gW

F:\$z-Te3m:G9z%s)B void main()oEnj7D7q
{1|#C2s6U5Uf L2k%o
    int year1, year2, month1, month2, date1, date2;,no$X$ni+N"ftK^
    int days1, days2,alldays;
&}x%`-~~     printf("请按格式输入出生年,月,日:");
P~ HQ+G2~/NP r x     scanf("%d,%d,%d", &year1, &month1, &date1);
J'Phy Cv e     printf("请按格式输入当前年,月,日:");4E/Pp _W.na}^K
    scanf("%d,%d,%d", &year2, &month2, &date2);0E\@^lv5V3W
    days1=day(year1, month1);g^T,qWO
    days2=day(year2, month2);
vw1_rY%PKr     for(int n=year1, days=0; n < year2; n++)
y5i%`5VTiJ2df     {erQgz-@
        if(n % 4 == 0 && n % 100 != 0 || n % 400 == 0)cP"`X \ rw'O
        { nVb3H Hm
            days+=366;}$TK5X/k
        }'uFucRdC @(P
        else`0XS3U{-H4e
        {E7}T&F7rYJi
            days+=365;Mn&s0Ve'L$u3p
        }
hr#r9G5coT rH     }
$QH!Fx7Bz_     alldays=days-(days1+date1)+(days2+date2); x$[1hgXd@
    printf("==============================\r\n结果:\r\n==============================\r\n");|"U8Bp4EC X D+K
    printf("从出生年到现年总共%d天。\r\n", alldays);2PY/}Y R$hx3~3}
    if ( alldays%23>0 && alldays%23<11 ):YkI8s&@m7N8R.J
    {
bJ,xb,i2N         printf("您现在处于体力高潮期\r\n");
3A8pC*|#^0F     }
Ff%b8A+],[]*\Y     elsem i(tc;alA
    {n0N_@8G
        printf("您现在处于体力低潮期\r\n");
2OTHQB ^ma0v     }
$U^n ]!M \     if ( alldays%28>0 && alldays%28<14 )
#L2{Oo.n8J@:p     {PKc6m6O
        printf("您现在处于智力高潮期\r\n");
NLQ:[:~x/U0~ N)Z     }1Wz x|!|F}"pna
    else
J.e$m#~ ^`9W     {J"{;s;^r;x O
        printf("您现在处于智力低潮期\r\n");
{ZoH`1j |:x4I     } ] cU9\,Q W M k
    if ( alldays%33>0 && alldays%33<16 )
y\"E8b)ND;I![$S     {
jk(pa:J#S3[*P         printf("您现在处于情绪高潮期\r\n"); RmL7x-pTf Qb,v,h
    } i S(q*c\M
    else
7b&ywaH5T?0l     {0~Z U?$n$n7l
        printf("您现在处于情绪低潮期\r\n");
NU*l}2a3YE[!\2V     }:y"U'b7v0^(ruKP
}
Z e.ErX4n [/code]

柔肠寸断 发表于 2009-2-22 20:56

数学好点就很容易的
Z f*w C-@y?"j-S"A/x8P o3r 像我看起来就一点不费劲.m (25). .m (25).
.xklAV `3X B6TW9s*jc Q
怎么说俺靠了这个去全国竞赛呢,嘻嘻,现在不行了,老了

saitojie 发表于 2009-2-23 01:20

这个东西完全是一种逻辑思维能力,我感觉,我在这方面很欠缺啊!~~~7Ur#bcU@|'B
写程序真吃力!~~~~

柔肠寸断 发表于 2009-3-1 02:26

呆呆加油呀

闲逛 发表于 2009-3-1 12:46

.m (123). 闰月 闰年的情况要怎么弄呢?

koycon 发表于 2009-3-1 13:55

他前面就判断了是否是闰年的

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.