万年历软件设计公司钢材广告公司(万年历简易制作)
c语言 万年历的流程设计
#include <windows。h> #include <winnt。h> #include<iostream>#include<iomanip>using namespace std;int week(int,int,int); //依据年月日判断星期几int leap_year(int); //判断闰年void display_year(int ); //显示某年日历void demand_day(int,int,int); //查询某天int main(){int y,m,d,es=1; while(es) { HANDLE consolehwnd; consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(consolehwnd,12); cout<<"请选择操作:\n1→显示某年日历\ \n2→查询某天\n0→退出"<<endl; char tp[20];cin>>tp; if(tp⓵!='\0'||tp[0]>'2'||tp[0]<'0'){cout<<"输入有误"<<endl;continue;} switch(tp[0]-48) { case 1:{cout<<"请输入年份:";cin>>y;system("cls");display_year(y);break;} case 2:{cout<<"请输入年、月、日,以空格分开:";cin>>y>>m>>d;system("cls"); demand_day(y,m,d);break;} case 0:{es=0;break;} } } return 0;}//-----依据年月日判断星期几-------------------------int week(int y,int m, int d) { int week1,yy=y; if(m==1) {m=13;yy--;} if(m==2) {m=14;yy--;} week1=(d+2*m+3*(m+1)/5+yy+yy/4-yy/100+yy/400)%7; int s; switch (week1) { case 0: s=1; break; case 1: s=2; break; case 2: s=3; break; case 3: s=4; break; case 4: s=5; break; case 5: s=6; break; case 6: s=0; break; } return s; }//----判断闰年-------------------------------------int leap_year(int y){ int i; if((y%4==0&&y%100!=0)||y%400==0)i=1;else i=0;return i;}//--------显示某年日历------------------------void display_year(int y) { int n1,n2,i,j,a[13],c,d;HANDLE consolehwnd; consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(consolehwnd,5);cout<<setw(38)<<y<<"年"<<endl;cout<<setw(28)<<"*********";for(i=1;i<=27;i++)cout<<'*';cout<<endl;a⓵=a⓷=a⓹=a⓻=a⓼=a⓾=a⑫=31;//a⓸=a⓺=a⓽=a⑪=30; //确定每月天数if(leap_year(y))a⓶=29;else a⓶=28; //for(i=1;i<=11;i+=2) //六次循环 { SetConsoleTextAttribute(consolehwnd,1); cout<<setw(14)<<i<<"月"<<setw(42)<<i+1<<"月"<<endl; SetConsoleTextAttribute(consolehwnd,2); cout<<setw(4)<<"日"<<setw(4)<<"一"<<setw(4)<<"二"<<setw(4)<<"三"<<setw(4)\ <<"四"<<setw(4)<<"五"<<setw(4)<<"六"; cout<<setw(16)<<' '; cout<<setw(4)<<"日"<<setw(4)<<"一"<<setw(4)<<"二"<<setw(4)<<"三"<<setw(4)\ <<"四"<<setw(4)<<"五"<<setw(4)<<"六"<<endl; SetConsoleTextAttribute(consolehwnd,7); n1=week(y,i,1);n2=week(y,i+1,1); if(n1) //----------- { for(j=1;j<=n1;j++) // cout<<setw(4)<<' '; } for(j=1;j<=7-n1;j++) cout<<setw(4)<<j; cout<<setw(16)<<' '; if(n2) { //-----输出每次循环的第1行--- for(j=1;j<=n2;j++) cout<<setw(4)<<' '; } for(j=1;j<=7-n2;j++) cout<<setw(4)<<j; cout<<endl; //-------------- c=8-n1;d=8-n2; for(int m=1;m<6;m++) //每月日历最多占六行 { if(c>a[i])cout<<setw(4*7)<<' ';//若c>a[i],则该月的这一行全部输出空格 for(j=c;j<=a[i];j++) { cout<<setw(4)<<j; if((j-c+1)%7==0){c=j+1;break;} if(j==a[i]){cout<<setw((6-week(y,i,a[i]))*4)<<' ';c=j+1;break;} //假如j是该月末尾一天,该行剩下的全部补空格 } cout<<setw(16)<<' '; if(d>a[i+1])cout<<setw(4*7)<<' '; for(j=d;j<=a[i+1];j++) { // cout<<setw(4)<<j; if((j-d+1)%7==0){d=j+1;break;} if(j==a[i+1]){cout<<setw((6-week(y,i+6,a[i+1]))*4)<<' ';d=j+1;break;} } cout<<endl; } cout<<endl;}cout<<endl;}//--------查询某天------------void demand_day(int y,int m,int d){ int n; HANDLE consolehwnd; consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(consolehwnd,5); n=week(y,m,d);switch(n){ case 1:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期一"<<endl;break; case 2:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期二"<<endl;break; case 3:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期三"<<endl;break; case 4:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期四"<<endl;break; case 5:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期五"<<endl;break; case 6:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期六"<<endl;break; case 0:cout<<y<<"年"<<m<<"月"<<d<<"日"<<","<<"星期日"<<endl;break; default:break;}cout<<endl;}#includeintleap(intyear){if(year%4==0&&year%100!=0||year%400==0)//判断是否是闰年return1;elsereturn0;}intdays_month(intmonth,intyear)//判断大月和小月{if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)//找出大月return31;if(month==4||month==6||month==9||month==11)//找出小月return30;if(month==2&&leap(year)==1)return29;//判断二月是29天还是29天elsereturn28;}intfirstday(intmonth,intyear){intw;w=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1;//判断每一个月开始的第1天是星期几returnw;}main(){inti,j=1,k=1,a,b,month,year;printf(\\"inputmonthandyear:\\");scanf(\\"%d%d\\",&month,&year);//输入月和年b=days_month(month,year);a=firstday(month,year);printf(\\"SunMonTueWedThuFriSat\\");//输出对应当月的日历if(a==7){for(i=1;i<=b;i++){printf(\\"%4d\\",i);if(i%7==0){printf(\\"\\");}}}if(a!=7){while(j<=4*a){printf(\\"\\");j++;}for(i=1;i<=b;i++){printf(\\"%4d\\",i);if(i==7*k-a){printf(\\"\\");k++;}}}printf(\\"\\");}
跪求51单片机+12864液晶+1302时钟制成的万年历c流程?
目录 III第1章 绪 论 - 1 -1、1课题的背景 - 1 -1、2课题意义 - 2 -1、3本章小结 - 3 -第2章 总体设计方案与论证 - 4 -2、1 电源模块方案的抉择与论证 - 4 -2、2 时钟电路方案的抉择与论证 - 4 -2、3 显示电路方案的抉择与论证 - 5 -2、4 闹钟电路方案的抉择与论证 - 5 -2、5 键扫描电路方案的抉择与论证 - 6 -2、6 本章小结 - 6 -第3章 系统硬件设计 - 7 -3、1 主控芯片STC89C52的介绍 - 7 -3、1、1 STC89C52的主要性能参数 - 7 -3、1、2 STC89C52单片机的功能特性概述: - 8 -3、2时钟部分功能介绍及电路设计 - 11 -3、3显示模块功能介绍及电路设计 - 14 -3、4闹钟电路模块介绍及电路设计 - 16 -3、5功能按键模块介绍及电路设计 - 17 -3、6电源模块介绍及电路设计 - 17 -3、7 本章小结 - 18 -第4章 系统软件设计 - 19 -4、1日历流程设计 - 19 -4、2 时间调整流程设计 - 20 -4、3 闹钟设置流程设计 - 22 -4、4 闹钟蜂鸣流程设计 - 23 -4、5本章小结 - 23 -第5章 系统调试 - 二十四 -5、1系统的调试 - 二十四 -5、2系统的调试出现的问题及解决 - 二十四 -5、3本章小结 - 二十四 -第6章 结 论 - 25 -参考书籍 - 26 -致 谢 - 27 -附录 - 28 -附录一 :本设计电路原理图 - 28 -附录二:数字日历钟电路设计的C流程 - 29 -顶层文件 万年历。C #include<reg51、h>#include "LCD1602、h"#include "DS1302、h"#define uchar unsigned char#define uint unsigned intsbit speaker=P2^4;bit key_flag1=0,key_flag2=0; SYSTEMTIME adjusted;uchar sec_add=0,min_add=0,hou_add=0,day_add=0,mon_add=0,yea_add=0;uchar data_alarm⓻={0};/************键盘控制******************************/int key_scan() //扫描是不是有键按下{ int i=0;uint temp;P1=0xf0;temp=P1;if(temp!=0xf0)i=1;elsei=0;return i;} uchar key_value() //确定按键的值{uint m=0,n=0,temp;uchar value;uchar v⓸⓷={'2','1','0','5','4','3','8','7','6','b','a','9'} ;P1=0xfe; temp=P1; if(temp!=0xfe)m=0;P1=0xfd;temp=P1 ;if(temp!=0xfd)m=1;P1=0xfb;temp=P1 ;if(temp!=0xfb)m=2;P1=0xf7;temp=P1 ;if(temp!=0xf7)m=3;P1=0xef;temp=P1 ;if(temp!=0xef)n=0;P1=0xdf;temp=P1 ;if(temp!=0xdf)n=1;P1=0xbf;temp=P1 ;if(temp!=0xbf)n=2;value=v[m][n];return value;} /***************************设置闹铃函数*******************************/ void naoling(void) { uchar i=0,l=0,j; init1602(); while(key_flag2&&i<12) if(key_scan()){j=key_value();write_data(j);if(i%2==0)data_alarm[l]=(j-'0')*10;else {data_alarm[l]+=(j-'0');l++;}i++;delay(600);} write_com(0x01); }uchar according(void) { uchar k; if(data_alarm[0]==adjusted。Year&&data_alarm⓵==adjusted。Month&&data_alarm⓶==adjusted。Day&&data_alarm⓷==adjusted。Hour&&data_alarm⓸==adjusted。Minute&&data_alarm⓹==adjusted。Second) k=1; else k=0; return k; } void speak(void) {uint i=50; while(i) {speaker=0; delay(1); speaker=1; delay(1); i--; } } void alarm(void) {uint i=10; while(i) { speak(); delay(10); i--; } }/**************************修改时间操作********************************/void reset(void){sec_add=0;min_add=0;hou_add=0;day_add=0;mon_add=0;yea_add=0 ;}void adjust(void) { if(key_scan()&&key_flag1) switch(key_value()) {case '0':sec_add++;break; case '1':min_add++;break; case '2':hou_add++;break; case '3':day_add++;break; case '4':mon_add++;break; case '5':yea_add++;break; case 'b':reset();break; default: break; } adjusted。Second+=sec_add; adjusted。Minute+=min_add; adjusted。Hour+=hou_add; adjusted。Day+=day_add; adjusted。Month+=mon_add; adjusted。Year+=yea_add; if(adjusted。Second>59) adjusted。Second=adjusted。Second%60; if(adjusted。Minute>59) adjusted。Minute=adjusted。Minute%60; if(adjusted。Hour>23) adjusted。Hour=adjusted。Hour%二十四; if(adjusted。Day>31) adjusted。Day=adjusted。Day%31; if(adjusted。Month>12) adjusted。Month=adjusted。Month%12; if(adjusted。Year>100) adjusted。Year=adjusted。Year%100; } /**************************中断处理函数*********************************/void changing(void) interrupt 0 using 0 //需要修改时间和日期,或者停止修改{if(key_flag1)key_flag1=0; else key_flag1=1;}void alarming(void) interrupt 3 using 0 //需要设置闹铃或者停止设置{ if(key_flag2)key_flag2=0;else key_flag2=1;}/********************************主函数***********************************/ main(){uint i;uchar *l;uchar p1[]="D:",p2[]="T:";SYSTEMTIME T;EA=1;EX0=1;IT0=1;EA=1;EX1=1;IT1=1;init1602();Initial_DS1302() ;while(1) { write_com(0x80); write_string(p1,2); write_com(0xc0); write_string(p2,2); DS1302_GetTime(&T) ; adjusted。Second=T。Second; adjusted。Minute=T。Minute; adjusted。Hour=T。Hour; adjusted。Week=T。Week; adjusted。Day=T。Day; adjusted。Month=T。Month; adjusted。Year=T。Year; for(i=0;i<9;i++) { adjusted。DateString[i]=T。DateString[i]; adjusted。TimeString[i]=T。TimeString[i]; } adjust(); if(key_flag2)naoling(); if(according())alarm(); DateToStr(&adjusted); TimeToStr(&adjusted); write_com(0x82); write_string(adjusted。DateString,8); write_com(0xc2); write_string(adjusted。TimeString,8); delay(10); } (2)头文件1 显示模块 LCD1602、H#ifndef LCD_CHAR_1602_2009_5_9#define LCD_CHAR_1602_2009_5_9#define uchar unsigned char#define uint unsigned int sbit lcdrs = P2^0; sbit lcdrw = P2^1; sbit lcden = P2^2;void delay(uint z) // 延时{ uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}void write_com(uchar com) // 写入指令数据到 lcd{ lcdrw=0; lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;}void write_data(uchar date) // 写入字符显示数据到 lcd{ lcdrw=0; lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0;}void init1602() // 初始化设定{ lcdrw=0; lcden=0; write_com(0x3C); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80);}void write_string(uchar *pp,uint n){int i;for(i=0;i<n;i++) write_data(pp[i]);}#endif(三)头文件2 时钟模块 DS1302、H#ifndef _REAL_TIMER_DS1302_2009_5_20_#define _REAL_TIMER_DS1302_2003_5_20_sbit DS1302_CLK = P2^6; //实时时钟时钟线引脚 sbit DS1302_IO = P2^7; //实时时钟数据线引脚 sbit DS1302_RST = P2^5; //实时时钟复位线引脚sbit ACC0 = ACC^0;sbit ACC7 = ACC^7;typedef struct SYSTEM_TIME{ unsigned char Second; unsigned char Minute; unsigned char Hour; unsigned char Week; unsigned char Day; unsigned char Month; unsigned char Year; unsigned char DateString⓽; //用这两个字符串来放置读取的时间 unsigned char TimeString⓽;}SYSTEMTIME; //定义的时间类型#define AM(X) X#define PM(X) (X+12) // 转成二十四小时制#define DS1302_SECOND 0x80#define DS1302_MINUTE 0x82#define DS1302_HOUR 0x84 #define DS1302_WEEK 0x8A#define DS1302_DAY 0x86#define DS1302_MONTH 0x88#define DS1302_YEAR 0x8C#define DS1302_RAM(X) (0xC0+(X)*2) //用于计算 DS1302_RAM 地址的宏 /******内部指令**********/void DS1302InputByte(unsigned char d) //实时时钟写入一字节(内部函数){ unsigned char i; ACC = d; for(i=8; i>0; i--) { DS1302_IO = ACC0; DS1302_CLK = 1; DS1302_CLK = 0; ACC = ACC >> 1; //由于在前面已经定义了ACC0 = ACC^0;以便再次利用DS1302_IO = ACC0; } }unsigned char DS1302OutputByte(void) //实时时钟读取一字节(内部函数){ unsigned char i; for(i=8; i>0; i--) { ACC = ACC >>1; ACC7 = DS1302_IO; DS1302_CLK = 1; DS1302_CLK = 0; } return(ACC); }/********************************/void Write1302(unsigned char ucAddr, unsigned char ucDa) //ucAddr: DS1302地址, ucData: 要写的数据{ DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr); // 地址,命令 DS1302InputByte(ucDa); // 写1Byte数据 DS1302_CLK = 1; DS1302_RST = 0;} unsigned char Read1302(unsigned char ucAddr) //读取DS1302某地址的数据{ unsigned char ucData; DS1302_RST = 0; DS1302_CLK = 0; DS1302_RST = 1; DS1302InputByte(ucAddr|0x01); // 地址,命令 ucData = DS1302OutputByte(); // 读1Byte数据 DS1302_CLK = 1; DS1302_RST = 0; return(ucData);}void DS1302_SetProtect(bit flag) //是否写保护{ if(flag) Write1302(0x8E,0x10); else Write1302(0x8E,0x00);}void DS1302_SetTime(unsigned char Address, unsigned char Value) // 设置时间函数{ DS1302_SetProtect(0); Write1302(Address, ((Value/10)<<4 | (Value%10))); //将十进制数转换为BCD码} //在DS1302中的与日历、时钟有关的寄存器存放的数据必须为BCD码形式void DS1302_GetTime(SYSTEMTIME *Time){ unsigned char ReadValue; ReadValue = Read1302(DS1302_SECOND); Time->Second = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); //将BCD码转换为十进制数 ReadValue = Read1302(DS1302_MINUTE); Time->Minute = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); ReadValue = Read1302(DS1302_HOUR); Time->Hour = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); ReadValue = Read1302(DS1302_DAY); Time->Day = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); ReadValue = Read1302(DS1302_WEEK); Time->Week = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); ReadValue = Read1302(DS1302_MONTH); Time->Month = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); ReadValue = Read1302(DS1302_YEAR); Time->Year = ((ReadValue&0x70)>>4)*10 + (ReadValue&0x0F); }unsigned char *DataToBCD(SYSTEMTIME *Time){ unsigned char D⓼; D[0]=Time->Second/10<<4+Time->Second%10; D⓵=Time->Minute/10<<4+Time->Minute%10;D⓶=Time->Hour/10<<4+Time->Hour%10; D⓷=Time->Day/10<<4+Time->Day%10; D⓸=Time->Month/10<<4+Time->Month%10; D⓹=Time->Week/10<<4+Time->Week%10; D⓺=Time->Year/10<<4+Time->Year%10; return D;}void DateToStr(SYSTEMTIME *Time){ //将十进制数转换为液晶显示的ASCII值 Time->DateString[0] = Time->Year/10 + '0'; Time->DateString⓵ = Time->Year%10 + '0'; Time->DateString⓶ = '-'; Time->DateString⓷ = Time->Month/10 + '0'; Time->DateString⓸ = Time->Month%10 + '0'; Time->DateString⓹ = '-'; Time->DateString⓺ = Time->Day/10 + '0'; Time->DateString⓻ = Time->Day%10 + '0'; Time->DateString⓼ = '\0';}void TimeToStr(SYSTEMTIME *Time){ //将十进制数转换为液晶显示的ASCII值 Time->TimeString[0] = Time->Hour/10 + '0'; Time->TimeString⓵ = Time->Hour%10 + '0'; Time->TimeString⓶ = ':'; Time->TimeString⓷ = Time->Minute/10 + '0'; Time->TimeString⓸ = Time->Minute%10 + '0'; Time->TimeString⓹ = ':'; Time->TimeString⓺ = Time->Second/10 + '0'; Time->TimeString⓻ = Time->Second%10 + '0'; Time->DateString⓼ = '\0';}void Initial_DS1302(void){ unsigned char Second; Second=Read1302(DS1302_SECOND); if(Second&0x80) //初始化时间 DS1302_SetTime(DS1302_SECOND,0);}void DS1302_TimeStop(bit flag) // 是否将时钟停止{ unsigned char Data; Data=Read1302(DS1302_SECOND); DS1302_SetProtect(0); if(flag) Write1302(DS1302_SECOND, Data|0x80); else Write1302(DS1302_SECOND, Data&0x7F);}#endif貌似流程漫长的 额 加727690822
基于STM32的电子万年历系统设计
看见这个题目我笑了,很是好提问的究竟是何方仙人?这完全是要技惊四座,起要成为神仙的节奏啊。然而,也或许是还在上学的小女孩小男孩,一心想着好好学习,因 此,想要找到 个方法来克制本人的青春懵懂的小情愫。坦白说,一个正常人,意思是还有荷尔蒙正常分泌的人,是没有办法对任何异性不动心的。
记得前些天我们在一个禅院里做为期几天的闭关修行。给我们上课的就是一个修了一二十年,还算是小有造诣的 男人禅师。但在我们上瑜 珈课的时刻,傻子皆能可以看出来,他的视线就没有离开过那个时候教我们的美女瑜珈老师。哈哈。并且,他当年也会很坦诚的问他的师父,类似于如此的问题: 我们修行人怎样有生理反应了,该如何办?
我认为,这便是一种对本人的诚实。因 此,无论你是什么年纪,什么职业,做人,first of all就要对自己诚实。接受自己身心很正常 ,很自然,也很健康的现象与反应。假如对自己太残忍,或者太虚伪,可是,也是要付出代价的。我保证。这边也举一个小例子。我一姑姑的儿子。平时不说溺爱吧,也算得着是把他当宝贝的类型。从小学到读大学,这十来年的时间里,他也从一个儿童成长为一个青年。但他母亲始终在他面前念叨的一个看法和要求就是,上学不能谈恋爱,千万不能谈恋爱。那感觉有点像故事中,老沙弥教小沙弥说女人是老虎差不太多。我表弟也是一个非常听话的男生。乖到好像没有经历过叛逆期的类型。初中,高中,甚至大学,都是脚踏实地的,本本分分的把时间用于学习上。诚然,似乎他的学习成绩也就一般一般,并出突出的类型。大学毕了业以后,他爸妈急了, 就会开始赶着他出去找女友了。而他呢,好像己经丧失了与异xingjiao往的能力或自信。根本就不出门的。听说过去几年的居然突然犯了桃花疯。用科学的名词就是精神分裂。赤身裸体的在村里晃来晃去。从专业的角度而言,这实实在在是与他青春期以来的 情感感情 压抑不无关联。
从心理学上而言,喜欢一个人,其实也就是说是一种能力,是一种从儿童走向成人的重要的心理能力。在云南孩子在18岁的时刻,还会特别举行隆重的成人礼。因 此,对异性动心,是一种生而为人的基本能力,一种不可或缺的重要能力。SO,问问自己,还能去压抑吗?
就我本人来讲,我更加喜欢交敢于直言的friend,由于敢于直言的friend性格直爽,容易相处,而且可以让我感觉到彼此友谊的真诚。而奉承讨好的friend容易使俺觉得友情的虚假。
在我交朋友的过程当中,我更加喜欢叫那些敢于直言的friend,许多人说敢于直言的friend比较容易“口出狂言”,伤害到彼此之间的情感,我觉得并非这样的,敢于直言说明彼此之间的情感真挚真诚,不虚假,只有名符其实的朋友才敢于直面说出的错误,由于名符其实的朋友是真心要是想为你好的,虚假的friend才会对你有所隐瞒。我相信许多人皆有遇见过那些奉承讨好的friend吧,他们由于某种利益关系有意的靠近你、讨好你,固然对你说的皆是一堆能够讨你开心的话,不过这几个话你明显可以感受到不真诚,奉承讨好的friend他们不会对你直言,他们只会对你有所隐瞒,他们不会考虑到你的真实情感感情,只会考虑这档子事情对他本身好不好。
我觉得大家在交朋友的过程当中应该要擦亮双眼,不能被利益蒙蔽了本人的双眼,偶尔“口出狂言”的friend才是真真正正为你的好的,名符其实的朋友或许应该是给自己两肋插刀的,在你遇见困难的时刻及时为你提供帮助,名符其实的朋友不会顾忌他们自己一身的利益,他们只会关心你的喜怒哀乐;相反,那些奉承讨好的friend,他们在你遇见困难的时刻,他们会躲得远远的,由于对于他们的利益关系有伤害的事情他们是根本不会去做的。
在你需要帮助的时刻最能够检验一个朋友是否值得你深入交往了。为啥说我更加喜欢那些敢于直言的friend,由于他们勇于指出俺的错误,可以让我成长;他们勇于鼓励我,说明他们真心为我好。
300个吉祥公司名字大全 1.宏航广告公司 2.中生进 3.飞创钢材公司 4.亨同凯公司 5.赛瑞迪普公司 6.汇同钢材公司 7.利如公司 8.长兴捷公司 9.环宝钢材公司 10.绣花针公司11.金典致晟公司 12.佳胜金星广告公司 13.岩屿公司 14.奥晖广告公司 15.源迪有限公司 16.科航钢材公司 17.好玉文化公司 18.康阳泰 19.东春钢材公司 20.旭东飞有限公司 21.顺洋文化公司 22.伟荣有限公司 23.福兴钢材公司 二十四.广傲钢材公司 25.杯友钢材公司 26.源广达迅公司 27.昌达广告公司 28.博若盛有限公司 29.荣兴仁 30.浪玛光有限公司 31.胜瑞天有限公司 32.新威虹广告公司 33.隆同瑞有限公司 34.益华文化公司 35.圣鼎元公司 36.鼎大庆 37.康欧风 38.赛玛钢材公司 39.茂宏公司 40.三叶草广告公司 41.和鑫永 42.海智妙有限公司 43.六强有限公司 44.意钟进有限公司 45.益维广告公司 46.月顺钢材公司 47.诚谊钢材公司 48.正唐公司 49.浩多邦 50.诗士钢材公司 51.简梵思拓公司 52.茂丰信公司 53.宏润泰 54.升伟恒公司 55.盾皇钢材公司 56.洋智文化公司 57.恒德筑公司 58.捷亚旺公司 59.吉贸文化公司 60.鸿福源 61.利迪亚有限公司 62.朗仁公司 63.天利文化公司 64.尼圣文化公司 65.瑞信公司 66.巴马丹拿公司 67.富泰公司 68.鸿扬广告公司 69.谦源公司 70.派集文化公司 71.广公公司 72.兴贵鼎 73.锦竹苑公司 74.天居博雅公司 75.来鑫文化公司 76.跃威耀有限公司 77.全佳文化公司 78.乾升公司 79.壹元公司 80.欣宝盛公司 81.闵世公司 82.理卓文化公司 83.金茂鼎盛公司 84.发建文化公司 85.索拉公司 86.艾尔源 87.铭汉钢材公司 88.巨荣钢材公司 89.大宏钢材公司 90.庆识文化公司 91.宏峰钢材公司 92.广安公司 93.菩提广告公司 94.贵贸文化公司 95.亚洲龙 96.瑞浩奇有限公司 97.从视广告公司 98.飞龙钢材公司 99.合本宏公司 100.顿邦文化公司 101.曼同有限公司 102.东起钢材公司 103.立西文化公司 104.欣亚公司 105.高泰亿 106.飞进茂 107.隆景有限公司 108.雷微文化公司 109.大锐有限公司 110.新纪元公司 111.源特思 112.特裕有限公司 113.东帜广告公司 114.复迎文化公司 115.恒升公司 116.宏韦文化公司 117.纽艾钢材公司 118.卓全驰曼公司 119.仕发文化公司 120.基豪钢材公司 121.宏康公司 122.悦界空间公司 123.亚进公司 1二十四.和本本公司 125.悦尚文化公司 126.亨泰钢材公司 127.嘉泰安 128.晶隆雅 129.龙速文化公司 130.诺士文化公司 131.本发钢材公司 132.海格瑞公司 133.益思文化公司 134.浩通讯 135.聚发文化公司 136.传立达公司 137.寿皇有限公司 138.发迈广告公司 139.悦大文化公司 140.秀昌广告公司 141.金申钢材公司 142.星龙钢材公司 143.爱利钢材公司 144.建传有限公司 145.进长公司 146.龙盛一方广告公司 147.东方华宇公司 148.天振有限公司 149.元荣有限公司 150.格赛派有限公司 151.旭日因赛广告公司 152.大华公司 153.亚展钢材公司 154.胜铁华 155.振华广告公司 156.永洪有限公司 157.宏明顺华公司 158.科博钢材公司 159.邦迈元 160.腾网广告公司 161.鑫思胜联公司 162.博通意 163.简韵清风公司 164.莱悦钢材公司 165.莱英文化公司 166.鼎润公司 167.泰贵公司 168.尔缘文化公司 169.和伟聚公司 170.长福公司 171.九品软装公司 172.光晕广告公司 173.旭广告公司 174.威雅广告公司 175.智福钢材公司 176.梦耀好 177.圣百钢材公司 178.京晖文化公司 179.新骏达 180.谦多寿 181.博城广告公司 182.成纳文化公司 183.卡丽妮钢材公司 184.乾腾广告公司 185.安赛钢材公司 186.丰寿公司 187.鑫旺丰梦公司 188.豪太公司 189.锦利缘广告公司 190.贝特里 191.常春藤广告公司 192.福尔嘉广告公司 193.金天下公司 194.俊鹏钢材公司 195.太英广告公司 196.华展钢材公司 197.泰德有限公司 198.博展广告公司 199.如茂有限公司 200.义美禄公司简单容易的万年历JAVA语言
天啊,好高的要求
c语言设计万年历
这是那个时候我做的一个区区的课题,希望对你能够起到帮助作用#include"stdio。h"/*RequiredforMS-DOSuse*/#defineENTER0x1C0D/*Enterkey*/intyear,month,day;staticchar*days⓼={"","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};structTIMEDATE{intyear;/*year1980。。2099*/intmonth;/*month1=Jan2=Feb,etc。*/intday;/*dayofmonth0。。31*/inthours;/*hour0。。23*/intminutes;/*minute0。。59*/intseconds;/*second0。。59*/inthsecs;/*1/100thsofsecond0。。99*/chardateline[47];/*date&timetoger*/};staticstructTIMEDATEtoday;main(){charcmonth⓷;charcday⓷;charcyear⓹;doublegetdays();doubledaynumb,numbnow;intweekday,retcode,dayer,i;dayer=datetime(&today);clrscn();for(i=0;i<3;++i)cmonth[i]='\0';for(i=0;i<3;++i)cday[i]='\0';for(i=0;i<5;++i)cyear[i]='\0';putstr(5,8,14,"Enterdatein妹子DDYYYYformat:");while(retcode!=ENTER){retcode=bufinp(5,41,13,2,cmonth);if(retcode!=ENTER)retcode=bufinp(5,44,13,2,cday);if(retcode!=ENTER)retcode=bufinp(5,47,13,4,cyear);}year=atoi(&cyear);month=atoi(&cmonth);day=atoi(&cday);daynumb=getdays(year,month,day);numbnow=getdays(today。year,today。month,today。day);weekday=weekdays(daynumb);if(numbnow-daynumb==0)printf("\n\n%02d-%02d-%dis",month,day,year);if(numbnow-daynumb>0)printf("\n\n%02d-%02d-%dwas",month,day,year);if(numbnow-daynumb<0)printf("\n\n%02d-%02d-%dwillbe",month,day,year);printf("a%s\n",days[weekday]);}/*endMAIN*//*************************************************************GETDAYS-Fromintegervaluesofyear(YYYY),month**(妹子)andday(DD)thissubroutinereturnsa**doublefloatnumberwhichrepresentsthe**numberofdayssinceJan1,1980(day1)。**ThisroutineistheoppositeofGETDATE。*************************************************************/doublegetdays(year,month,day)intyear,month,day;{inty,m;doublea,b,d,daynumb;doublefloor(),intg();/************************************makecorrectionfornoyear0************************************/if(year<0)y=year+1;elsey=year;/***********************************************************JanandFebaremonths13and14inthiscalculation***********************************************************/m=month;if(month<3){m=m+12;y=y-1;}/****************************calculateJuliandays****************************/d=floor(365、25*y)+intg(30。6001*(m+1))+day-723二十四4、0;/************************************************useJuliancalendarifbeforeOct5,1582************************************************/if(d<-145068、0)daynumb=d;/***************************************otherwiseuseGregoriancalendar***************************************/else{a=floor(y/100。0);b=2-a+floor(a/4、0);daynumb=d+b;}return(daynumb);}/*endGETDAYS*//*********************************************************GETDATE-Thisroutinetakesadoublefloatnumber**representingthenumberofdayssinceJan1,**1980(day1)andreturnstheyearmonthand**dayaspointerintegers**ThisroutineistheoppositeofGETDAYS*********************************************************/getdate(numb)doublenumb;{doublea,aa,b,c,d,e,z;doubledate;date=numb;z=intg(date+二十四44239、0);if(date<-145078、0)a=z;else{aa=floor((z-1867216、25)/365二十四。25);a=z+1+aa-floor(aa/4、0);}b=a+15二十四。0;c=intg((b-122、1)/365、25);d=intg(365、25*c);e=intg((b-d)/30。6001);day=b-d-intg(30。6001*e);if(e>13、5)month=e-13、0;elsemonth=e-1、0;if(month>2)year=c-4716、0;elseyear=c-4715、0;if(year<1)--year;return;}/*endGETDATE*//*********************************************************WEEKDAYS-Thisroutinetakesadoublefloatnumber**representingthenumberofdayssinceJan1,**1980(day1)andreturnsthedayoftheweek**where1=Sunday,2=Tuesday,etc。*********************************************************/intweekdays(numb)doublenumb;{doubledd;intday;dd=numb;while(dd>28000。0)dd=dd-28000。0;while(dd<0)dd=dd+28000。0;day=dd;day=((day+1)%7)+1;return(day);}/*********************************************************FRACT-Thisroutinetakesadoublefloatnumber**andreturnsthefractionalpartasadouble**floatnumber*********************************************************/doublefract(numb)doublenumb;{intinumb;doublefnumb;while(numb<-32767)numb+=32767;while(numb>32767)numb-=32767;inumb=numb;fnumb=inumb;return(numb-fnumb);}/*endFRACT*//*********************************************************FLOOR-Thisroutinetakesadoublefloatnumber**andreturnsthenextsmallestinteger*********************************************************/doublefloor(numb)doublenumb;{doublefract(),intg();doubleout;out=intg(numb);if(numb<0&&fract(numb)!=0)out-=1、0;return(out);}/*endFLOOR*//*********************************************************INTG-Thisroutinetakesadoublefloatnumber**andreturnstheintegerpartasadouble**floatnumber*********************************************************/doubleintg(numb)doublenumb;{doublefract();return(numb-fract(numb));}/*endINTG*//*但是除了没有查询某年某月某日是此一年的第几天。。和判断此一年的生肖外,皆能满足你的要求。加点金币帮你完善点!!!*/#include<stdio。h>intSwiss(intYears) //判断是否是闰年{ if(!(Years%100)) { Years=Years/100; } if(Years%4) { return0; } else { return1; }}intNumber(intYearsa,intYearsb) //已知两个年份,求出两个年份之间闰年的个数{ inti=Yearsa+1; intmou=0; do{ if(Swiss(i)) { mou++; } i++; }while(i<Yearsb); returnmou;}intMvalue(intYears,intMonth,intDay) //已知年月日,求出某年某月某日是星期几{ intM⑫={0,3,3,6,1,4,6,2,5,0,3,5};//月值 intN=6; //年值初始化 inta; if(Years<2006) //求年值,年值以2006年为基数 { N=6-((2006-Years)%7)-Number(Years,2006); if(Swiss(Years)) { if(Month<3) { N--; } } } else if(Years>2006) { N=((Years-2006)%7)-1+Number(2006,Years); if(Swiss(Years)) { if(Month>2) { N++; } } } a=(Day+M[Month-1]+N)%7; //某年某月某日是星期几=(日值+月值+年值)%7 returna;}intAmonth(intMonth) //已知月,求出这个月是大月还是小月{ switch(Month) {case1:case3:case5:case7:case8:case10: //1,3,5,7,8,10,12是大月,没月31天case12:return1;case4:case6:case9:case11:return0; //4,6,9,11是小月,每月30天case2:return2; //二月份 } return-1;}voidmain(){ intDtable⓻⓻; inti,j; intYears=9999; intMonth=12; intDay=1; intb; for(i=0;i<7;i++) //初始化数组 { Dtable[0][i]=i; } for(i=1;i<7;i++) { for(j=0;j<7;j++) { Dtable[i][j]=0; } } i=Mvalue(Years,Month,Day); switch(Amonth(Month)) {case0:b=30;break;case1:b=31;break;case2:if(Swiss(Years))b=29;elseb=28;break; //闰年2月29天,平年二月28天default:b=-1;break; } for(;i<7;i++) { Dtable⓵[i]=Day++; } for(i=2;i<7;i++) { for(j=0;j<7;j++) //建造日历表 { if(Day<=b) { Dtable[i][j]=Day++; } else { continue; } } } printf("%d:%d\n",Years,Month); for(i=0;i<7;i++) //输出日历表 { for(j=0;j<7;j++) { printf("%3d",Dtable[i][j]); } printf("\n"); } getch(); //完毕!!!}论文很简单啊,把你设计的这东西的前因后果写完整理整理就能够了。打比方说你搞这东西的动机是什么,目前市场状态是怎么样,你用了几种方案,比较几种方案你所采用的方案的优点是什么,不足又是什么。主要的剖析计算等。大体上就如此便可以了。论文切忌空动和大。小而实为首选。查看原帖>>nkzgxmvelc非常愿意替你解答问题噢!!!tgnwtidumo可以的话,就采纳我吧!!!2013/6/132:00:43
电子万年历:用C语言设计一个年历系统,功能要求: (1)输入任一年将显示出。。。
//这个可以吧#include "stdio。h"long int f(int year,int month){/*f(年,月)=年-1,如月<3;要不然,f(年,月)=年*/ if(month<3) return year-1; else return year;}long int g(int month){/*g(月)=月+13,如月<3;要不然,g(月)=月+1*/ if(month<3) return month+13; else return month+1;}long int n(int year,int month,int day){ /*N=1461*f(年、月)/4+153*g(月)/5+日*/ return 1461L*f(year,month)/4+153L*g(month)/5+day;}int w(int year,int month,int day){ /*w=(N-621049)%7(0<=w<7)*/ return(int)((n(year,month,day)%7-621049L%7+7)%7);}int date⑫⓺⓻;int day_tbl[ ]⑫={{31,28,31,30,31,30,31,31,30,31,30,31}, {31,29,31,30,31,30,31,31,30,31,30,31}};main(){int sw,leap,i,j,k,wd,day; int year;/*年*/ char title[]="SUN MON TUE WED THU FRI SAT";clrscr();printf("Please input the year whose calendar you want to know: ");/*输入年*/scanf("%d%*c",&year);/*输入年份值和掠过值后的回车*/sw=w(year,1,1);leap=year%4==0&&year%100||year%400==0;/*判闰年*/for(i=0;i<12;i++) for(j=0;j<6;j++) for(k=0;k<7;k++) date[i][j][k]=0;/*日期表置0*/for(i=0;i<12;i++)/*一年十二个月*/ for(wd=0,day=1;day<=day_tbl[leap][i];day++) {/*将第i+1月的日期填入日期表*/ date[i][wd][sw]=day; sw=++sw%7;/*每星期七天,以0至6计数*/ if(sw==0) wd++;/*日期表每七天一行,星期天开始新的一行*/ } printf("\n|==================The Calendar of Year %d =====================|\n|",year);for(i=0;i<6;i++){/*先测算第i+1月和第i+7月的最大星期数*/ for(wd=0,k=0;k<7;k++)/*日期表的第6行有日期,则wd!=0*/ wd+=date[i]⓹[k]+date[i+6]⓹[k]; wd=wd?6:5; printf("%2d %s %2d %s |\n|",i+1,title,i+7,title); for(j=0;j<wd;j++) { printf(" ");/*输出四个空白符*/ /*左栏为第i+1月,右栏为第i+7月*/ for(k=0;k<7;k++) if(date[i][j][k]) printf("%4d",date[i][j][k]); else printf(" "); printf(" ");/*输出十个空白符*/ for(k=0;k<7;k++) if(date[i+6][j][k]) printf("%4d",date[i+6][j][k]); else printf(" "); printf(" |\n|"); } /*scanf("%*c");/*键入回车输出下一个月的日历*/ }puts("=================================================================|");puts("\n Press any key to quit。。。");getch();}我是楼主,找到这个,不过显示不完,谁能调试好,显示出前面的,也行。#include <stdio。h>long int f(int year,int month){ if(month<3) return year-1; else return year;}long int g(int month){ if(month<3) return month+13; else return month+1;}long int n(int year,int month,int day){ return 1461L*f(year,month)/4+153L*g(month)/5+day;}int w(int year,int month,int day){ return(int) ((n(year,month,day)%7-621049L%7+7)%7);}int date⑫⓺⓻;int day_tbl[ ]⑫={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};main(){ int sw,leap,i,j,k,wd,day; int year; char title[]="SUM MON TUE WED THU FRI SAT"; printf("Please input the year whose calendar you want to know:\n"); scanf("%d%*c",&year); sw=w(year,1,1); leap=year%4==0&&year%100||year%400==0; for(i=0;i<12;i++) for(j=0;j<6;j++) for(k=0;k<7;k++) date[i][j][k]=0; for(i=0;i<12;i++) for(wd=0,day=1;day<=day_tbl[leap][i];day++) { date[i][wd][sw]=day; sw=++sw%7; if(sw==0) wd++; } printf("\n|================== The Calendar of Year %d==================|\n|",year); for(i=0;i<6;i++) { for(wd=0,k=0;k<7;k++) wd+=date[i]⓹[k]+date[i+6]⓹[k]; wd=wd?6:5; printf(" %2d %s %2d %s|\n|",i+1,title,i+7,title); for(j=0;j<wd;j++) { printf(" "); for(k=0;k<7;k++) if(date[i][j][k]) printf("%4d",date[i][j][k]); else printf(" "); printf(" "); for(k=0;k<7;k++) if(date[i+6][j][k]) printf("%4d",date[i+6][j][k]); else printf(" "); printf("|\n|"); } } puts("==============================================================|");getch();}两个月并排显示也太变态了,这个是各个月连续显示的。#include <stdio。h> #include <conio。h> #include <stdlib。h> #include <time。h> int leap(int year ) { if ((year %4 == 0) && (year % 100 != 0) || (year % 400 == 0)) { return 1; } return 0; } void show(int year,int month) { const char month_str[]⓸={"","Jan","Feb","Mar","Apl", "May","Jun","Jul","Aug","Sep","Oct","非也v","Dec"}; const int month_day[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int i,j,wdays,mdays,days; int count=0;for(i=1,days=0;i<year;i++) { if(leap(i)) { days += 366; } else { days += 365; } } for(i=1;i<month;i++) { if(i==2 && leap(year)) { days+=29; } else { days+=month_day[i]; } } printf("\n----------------------------\n"); printf(" %s %d\n",month_str[month],month); printf(" Sun Mon Tue Wed Thu Fri Sat\n"); wdays = days % 7; for( j = 0; j <= wdays; j++) { if(wdays==6) break;for( i = 0; i < 4; i++) {printf(" ");} count++;} if(month == 2 && leap(year)) { mdays=29; } else { mdays= month_day[month]; } for(i=1;i<=mdays;i++) { if( i > 1 && count % 7 == 0 ) { printf("\n"); } printf("%4d",i); count++; } printf("\n----------------------------\n"); } main() { int year,month; printf("Input the year:");scanf("%d",&year);printf("The calendar of the year %d。",year); printf("\n----------------------------\n"); for(month=1;month<=12;month++)show(year,month); system("pause");}