poj解题报告——1008

本文介绍了一种使用C语言实现的玛雅历法日期转换算法。通过输入现代日期,程序将其转换为玛雅长计历对应的日期形式,涉及字符串处理、条件判断等基本编程技巧。

        这个玛雅历呀,难是不难,就是看着眼花,历法题就是这样,在数学计算的基础上加文字坑人。其实这题就是算模拟,算是放松放松心情吧。

代码如下

#include<stdio.h>

#include<string.h>
char H[20][10]={"pop","no","zip","zotz","tzec","xul","yoxkin","mol","chen","yax","zac","ceh","mac","kankin","muan","pax","koyab","cumhu","uayet"};
char T[22][10]={"ahau","imix","ik","akbal","kan","chicchan","cimi","manik","lamat","muluk","ok","chuen","eb","ben","ix","mem","cib","caban","eznab","canac"};
void main()
{
    int d, y, n, i;
    char m[20];
    scanf("%d", &n);
    printf("%d\n", n);
    while(n--)
    {
        scanf("%d. %s %d",&d,m,&y);
        for (i = 0; i < 19; i++)
        {
            if(strcmp(m,H[i])==0)
                break;
        }
        d+=i*20+y*365;
        printf("%d %s %d\n",d%13+1,T[(d+1)%20],d/260);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值