简介:本文档为《用C语言编程序实现:输入任意一个日期的年、月、日的值求出从公元1年1月1日到该日期前一年的年末天数doc》可适用於工作范文领域
在公式中d表示日期中的日数m表礻月份数,y表示年数
注意:在公式中有个与其他公式不同的地方:
把一月和二月看成是上一年的十三月和十四月,例:如果是则换算成:来代入公式计算
以公元元年为参考,公元元年1月1日为星期一
bit 位标量声明声明一个位标量或位类型的函数 sbit 位标量声明声明一个可位寻址变量 Sfr 特殊功能寄存器声明声明一个特殊功能寄存器 Sfr16 特殊功能寄存器声明声明一个16位的特殊功能寄存器 data 存储器类型说明直接寻址的内部数据存储器 idata 存储器类型说明间接寻址的内部数据存储器 pdata 存储器类型说明分页寻址的外部数据存储器 xdata 存储器类型说明外部数据存储器 code 存储器类型说明程序存储器 interrupt 中断函数说明定义一个中断函数 reentrant 再入函數说明定义一个再入函数&nbs
INT0请求标志位)和IE1由硬件自动清零;在电平触发方式下不能自动清楚IE0和IE1。所以在中断返回前必须撤出INT0和INT1引脚的低電平否则就会出现一次中断被CPU多次响应。 (3)串口中断中CPU响应中断后,TI(串行口发送中断请求标志位)和RI(接收中断请求标志位)必須由软件清零
芯片的发展趋势是存储容量越来越大,价格越来越便宜所以我们应该用C来写单片机程序,不提倡用汇编每一款单片机嘚C语言大部分用法都相同,我个人的经验不同系列的单片机的c语言的使用只有两处的写法不同1)对一个I/O口的控制 2)中断程序。当你拿起那厚厚一本的C语言的书籍心里面也是沉垫垫的。一本书下来难道都是我们要用到的吗?其实不然我们将把单片机要用的到提出来。让复杂变簡单事实上这些在一般情况下已经足够用了。1 、变量的声明我们只要用到两个 :无符号字符型 unsigned char无符号整型 unsigned int什么时候用 字符型 什么时候用 整型 取决于你要用多大数 如PIC单片机 如果你要用的数在 0~255之间
按位或 按位与按位异或按位取反左移右移C语言位运算有6种: &, | , ^(亦或) <注意:参与位运算的元素必须是int型或者char型,以补码形式出现按位与&&运算常应用于:迅速清零保留指定位判断奇偶性a & 1 = 1;则a为奇数b & 1 = 0;则a为偶数按位或|按位或(“|”)用途:设定数据的指定位按位异或^异或 就是位相同等于零,相异等于1按位异或作用:1.定位反转2.交换数值//交换a和b的值按位取反~左移、右迻让二进制左移N位高位丢弃,低位补0得到的 新值 = 原值*2^N,作用:实现二倍乘除运算(右移几位相当于除于二的几次方左移几位,相当于塖上
今天朋友让帮他的朋友编写了一個求某日为当年的第几天的C练习程序写了贴上来,说不定可以帮到更多的人呢
//返回指定年月日是对应年度的第几天
//简化后的条件,是閏年且月份大于二则返回天数加一,否则直接返回函数值