欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

c語(yǔ)言遞歸函數(shù)求萬(wàn)年歷,c語(yǔ)言遞歸求冪

求一萬(wàn)年歷c語(yǔ)言

PIC16F877A LCD1602液晶式萬(wàn)年歷

成都創(chuàng)新互聯(lián)長(zhǎng)期為上千多家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為新民企業(yè)提供專(zhuān)業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)新民網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

默認(rèn)分類(lèi) 2011-03-23 23:27:51 閱讀10 評(píng)論0 ??字號(hào):大中小?訂閱

#includepic.h#define uchar unsigned char#define uint? unsigned int#define RS RA1#define RW RA2#define E? RA3#define s1 RB1#define s2 RB2#define s3 RB3?__CONFIG(0x1832);int Hours=0;//定義小時(shí)int Minutes=0;//定義分鐘int Seconds=0;//定義秒int Day=20;int Months=03;int Years=2011;const char Table[]="0123456789";?? ////1602:0-9 數(shù)字uint Y[16]; //8字節(jié)的顯示緩沖區(qū)uchar set_2=0;int incone(int n);int decone(int m);void delay(uint x)///延時(shí)?{?uint a,b;? for(a=x;a0;a--)?? for(b=30;b0;b--);? ?}

void interrupt time0 (){uchar temp,intnum;??? T0IF=0;??? TMR0=63;??? intnum++;?? if(intnum==40)???? {???intnum=0;??????? Seconds++;??if(Seconds==60)??? {???Seconds=0;???Minutes++;???if(Minutes==60)???? {????Minutes=0;????Hours++;????if(Hours==24)????? {?????Hours=0;??????????????????? Day++;????????????????? if(Day==31)??????????????????? {?????? Day=0;????????????????????? Months++;??????????????????? ???????????????????? if(Months==12)?????????????????????? {???????????????????????? Months=0;???????????????????????? Years++;?????????????????????? } ??????????????????? }???????????????? }???????????? ???? }??? }???? }? }

void write_Directive(uchar a)//寫(xiě)指令{RS=0;RW=0;delay(1);E=0;PORTD=a;delay(1);E=1;delay(1);E=0;delay(1);}

void write_Data(uchar a)//寫(xiě)數(shù)據(jù){RS=1;RW=0;delay(1);E=0;PORTD=a;delay(1);E=1;delay(1);E=0;delay(1);

}void init()//初始化{ ? ADCON1=0X07;? PORTB=0xFF;? TRISB=0XFF;? PORTC=0x00;? TRISC=0X00;? TRISD=0;? TRISA=0;? OPTION=0X06;? TMR0=63;? INTCON=0XA0;Y[14]=':';delay(15);write_Directive(0x38);delay(5);write_Directive(0x38);delay(5);write_Directive(0x38);write_Directive(0x01);write_Directive(0x02);//初始化后數(shù)據(jù)地址為0x80;即第一行,第一個(gè)位置write_Directive(0x0c);//不顯示光標(biāo)}

void write_Data_String()//顯示時(shí)間函數(shù){ Y[0]=Hours/10;//轉(zhuǎn)換成10進(jìn)制顯示Y[1]=Hours%10;Y[2]=Minutes/10;Y[3]=Minutes%10;Y[4]=Seconds/10;Y[5]=Seconds%10;Y[6]=Years/1000;Y[7]=Years/100%10;Y[8]=Years/10%10;Y[9]=Years%10;//Y[6]=Years/1000;//Y[7]=Years%1000/100;//DispBuf[8]=Years%100/10;//DispBuf[9]=Years%10;Y[10]=Months/10;Y[11]=Months%10;Y[12]=Day/10;Y[13]=Day%10;Y[14]=':';Y[15]='.';Y[0]=Table[Y[0]];//查表取字符Y[1]=Table[Y[1]];Y[2]=Table[Y[2]];Y[3]=Table[Y[3]];Y[4]=Table[Y[4]];Y[5]=Table[Y[5]];Y[6]=Table[Y[6]];//查表取字符Y[7]=Table[Y[7]];Y[8]=Table[Y[8]];Y[9]=Table[Y[9]];Y[10]=Table[Y[10]];Y[11]=Table[Y[11]];Y[12]=Table[Y[12]];Y[13]=Table[Y[13]];write_Directive(0x80+0x04);//第一行,第五個(gè)位置地址

write_Data(Y[0]);//第一行,第五個(gè)位置write_Data(Y[1]);//第一行,第六個(gè)位置

write_Data(Y[14]);//第一行,第七個(gè)位置

write_Data(Y[2]);//第一行,第八個(gè)位置write_Data(Y[3]);//第一行,第九個(gè)位置

write_Data(Y[14]);//第一行,第十個(gè)位置

write_Data(Y[4]);//第一行,第十一個(gè)位置write_Data(Y[5]);//第一行,第十二個(gè)位置

write_Directive(0x80+0x43);//第二行,第四個(gè)位置地址

write_Data(Y[6]);//第二行,第四個(gè)位置write_Data(Y[7]);//第二行,第五個(gè)位置write_Data(Y[8]);//第二行,第六個(gè)位置write_Data(Y[9]);//第二行,第七個(gè)位置

write_Data(Y[15]);//第二行,第八個(gè)位置

write_Data(Y[10]);//第二行,第九個(gè)位置write_Data(Y[11]);//第二行,第十個(gè)位置

write_Data(Y[15]);//第二行,第十一個(gè)位置

write_Data(Y[12]);//第二行,第十二個(gè)位置write_Data(Y[13]);//第二行,第十三個(gè)位置}void key_set() //時(shí)間按鍵設(shè)置{if(s1 == 0){?? delay(20);?? if(s1 == 0)?? {??? set_2++;??? while(!s1);??? if(set_2 == 8)??? {???? set_2 = 0;??? }?? }}}void set_time()?? //設(shè)置時(shí)間函數(shù){?? if(set_2==1)???? {????? RC0=1;???? }?? ?? if(set_2==2)????????? ////s2即RB1按1次調(diào)秒???? {???? Seconds=incone(Seconds);???? if(Seconds59)????? {?????? Seconds=0;????? }??? Seconds=decone(Seconds);??? if(Seconds0)????? {?????? Seconds=59;????? } ???? }??? if(set_2==3)???????????? ////s2即RB1按2次調(diào)分??? {???? Minutes=incone(Minutes);???? if(Minutes59)?????? {??????? Minutes=0;?????? }??? Minutes=decone(Minutes);??? if(Minutes0)?????? {?????? Minutes=59;?????? } ??? } ?? if(set_2==4)???????????? ////s2即RB1按3次調(diào)時(shí)?? {??? Hours=incone(Hours);??? if(Hours23)??? {???? Hours=0;??? }??? Hours=decone(Hours);??? if(Hours0)??? {???? Hours=23;??? }?? } ????? if(set_2==5)????????? ////s2即RB1按4次調(diào)天???? {???? Day=incone(Day);???? if(Day31)????? {?????? Day=1;????? }??? Day=decone(Day);??? if(Day1)????? {?????? Day=31;????? }???? }??? if(set_2==6)???????????? ////s2即RB1按4次調(diào)月??? {???? Months=incone(Months);???? if(Months12)?????? {??????? Months=1;?????? }??? Months=decone(Months);??? if(Months1)?????? {??????? Months=12;?????? } ??? } ?? if(set_2==7)???????????? ////s2即RB1按5次調(diào)年?? {??? Years=incone(Years);??? if(Years2050)??? {???? Years=1986;??? }??? Years=decone(Years);??? if(Years1986)??? {???? Years=2010;??? }?? }?? }

int incone(int n)?? //加“1”函數(shù){?if(s2==0)? { ?? delay(20);?? if(s2==0)?? {??? n++; ??? while(!s2);???? write_Data_String();?? }? }}

int decone(int m)??? //減“1”函數(shù){?if(s3==0)?{?? delay(20);?? if(s3==0)?? {??? m--;??? while(!s3);??? write_Data_String();?? }?}}void main(){init();while(1)?? {?? key_set();?? set_time();?? write_Data_String();?? }}

C語(yǔ)言遞歸函數(shù)(請(qǐng)確認(rèn)問(wèn)題后再回答)

這個(gè)題用循環(huán)語(yǔ)句比較簡(jiǎn)單,遞歸的話稍微復(fù)雜點(diǎn),下面是我剛寫(xiě)的:

Hand和Hand2是遞歸函數(shù);Test是測(cè)試函數(shù),用來(lái)檢驗(yàn)x1,x2,x3的值是否滿足條件,滿足的話輸出(這個(gè)函數(shù)不是重點(diǎn),我只寫(xiě)了句提示,你把它補(bǔ)充完整就行);fun函數(shù)直接調(diào)用Hand函數(shù),主函數(shù)中把fun函數(shù)放進(jìn)去就行了。

void fun(bool x1,bool x2,bool x3){

static int count=0;

Hand(x1,x2,x3,count);

}

void Test(bool X,bool Y,bool Z){ //測(cè)試函數(shù)

if((x1 || !x2 || x3)(!x1 || x2 || x3)) ..... 輸出X,Y,Z的值

}

bool Hand2(int x){ //遞歸函數(shù),按順序?yàn)閤1x2x3賦值

if(x=0) return false;

ruturn !Hand(x-1);}

void Hand(bool x1,bool x2,bool x3,count) //遞歸函數(shù),依次賦值并檢測(cè)(調(diào)用了Hand2和Test)

{

if (count=8) return ;

x1=Hand2(count%4);x2=Hand2(count%2);x3=Hand2(count);

Test(x1,x2,x3);

Hand(x1,x2,x3,count++);

}

采用就給分吧。

C語(yǔ)言萬(wàn)年歷程序

#include"stdio.h"

#include"stdlib.h"

main( )

{

int Year,Month; //年、月

int FirstDay_Year,FirstDay_Month; //某年的第一天是星期幾,某年某月的第一天是星期幾(范圍是0~6,其中0代表星期日)

int IsLeapYear; //是否為閏年,0表示不是閏年,1表示是閏年

int i,d,y; //臨時(shí)變量

char YN; //Yes No,程序是否要繼續(xù)

int Days[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

//Days[1~12]存儲(chǔ)每個(gè)月有多少天,其中二月的天數(shù)是可變的(閏年29天,平年28天),這里初始化為28天

printf(" C語(yǔ)言簡(jiǎn)單萬(wàn)年歷\n"); //打印標(biāo)題

XunHuan: //循環(huán)標(biāo)號(hào)(可以通過(guò)goto跳轉(zhuǎn)到這里)

printf("請(qǐng)輸入年份: "); //提示輸入年份(0~9999)

scanf("%d",Year); //把輸入的年份賦值給變量Year

printf("請(qǐng)輸入月份: "); //提示輸入月份(1~12)

scanf("%d",Month); //把輸入的月份賦值給變量Month

y=Year;

FirstDay_Year=5*(y/4)+(y%4)-(y/100)+(y/400);//蔡勒公式(計(jì)算某年的第一天是星期幾)

IsLeapYear=(y%4==4y%100!=100||y%400==0)?1:0;

//判斷是否為閏年

Days[2]=(IsLeapYear==1)?29:28; //閏年二月29天,非閏年二月28天

for(i=1,d=0;iMonth;i++)

d=d+Days[i];

FirstDay_Month=(d+FirstDay_Year)%7; //當(dāng)月的第一天是星期幾(0代表星期日)

printf("\n****************************************************\n");

printf("\t\t公元 %d 年 %2d 月",Year,Month); //打印年月

printf("\n****************************************************\n");

printf(" 星期日 星期一 星期二 星期三 星期四 星期五 星期六\n");

//打印星期表頭

for(i=0;iFirstDay_Month;i++)

printf("%7c",' '); //當(dāng)某月的第一天不是星期日時(shí)打印空格占位

for(d=1;d=Days[Month];d++) //循環(huán),從每個(gè)月的第一天開(kāi)始打印

{

printf("%7d",d);

if(((d+FirstDay_Month)%7)==0 dDays[Month])

printf("\n"); //當(dāng)輸出了星期六而且還未輸出所有天數(shù)時(shí),換行

}

printf("\n****************************************************\n");

printf("\n");

printf("是否繼續(xù)(Y/N)?\n");

scanf("%c",YN);

scanf("%c",YN);

if(YN=='Y' || YN=='y')

goto XunHuan;

}

講一下c語(yǔ)言中遞歸函數(shù)的使用方法

遞歸函數(shù)有三點(diǎn)要求:

1,遞歸的終止點(diǎn),即遞歸函數(shù)的出口

2,不斷的遞歸調(diào)用自身

3,遞歸函數(shù)主體內(nèi)容,即遞歸函數(shù)需要做的事情

ps:3一般可以放在2的前面或者后面,一般1放最前面。另外,2和3可以根據(jù)不同的需要合并,比如,有時(shí)候遞歸函數(shù)的主體就是返回調(diào)用下層函數(shù)所得到的結(jié)果。

具體例子如下:

void?fun(int?n)

{

if(n=0)?return;???//1?這是遞歸的終點(diǎn),即出口

fun(n-1);????????//2、遞歸函數(shù)自身的調(diào)用

coutnendl;?????//3?遞歸函數(shù)的主體內(nèi)容

}

2,3合并的情況

int?fun(int?n)

{

if(n=0)?return?0;

return?fun(n-1)+fun(n-2);??//2?3合并

}

求C語(yǔ)言萬(wàn)年歷程序 要求能滿足下列要求

C語(yǔ)言設(shè)計(jì)簡(jiǎn)單萬(wàn)年歷源代碼[含陽(yáng)歷陰歷轉(zhuǎn)化、密碼登陸功能]

C語(yǔ)言課程設(shè)計(jì)簡(jiǎn)單萬(wàn)年歷源代碼[含陽(yáng)歷陰歷轉(zhuǎn)化、密碼登陸功能]發(fā)布:極樂(lè)鳥(niǎo) | 發(fā)布時(shí)間: 2009年6月23日

萬(wàn)年歷

一.基本要求

1. 萬(wàn)年歷是簡(jiǎn)單實(shí)用的單機(jī)軟件。考慮到學(xué)生們對(duì)日歷的認(rèn)知比較熟悉,所以需要他們實(shí)現(xiàn)日歷的諸多功能。在編碼前先提供清晰的設(shè)計(jì)框架,再用C語(yǔ)言的程序源完成主要模塊的詳細(xì)設(shè)計(jì)。即:先構(gòu)想好流程圖,然后利用流程圖編寫(xiě)C語(yǔ)言源代碼,編寫(xiě)的源代碼在TC上運(yùn)行,運(yùn)行通過(guò)后再進(jìn)行測(cè)試。

2. 一人一組完成程序的分析和編碼。

3. 熟悉各個(gè)流程步驟,理解各個(gè)環(huán)節(jié)之間的控制流程。

4. 熟練掌握TC或Visual C++下C程序的運(yùn)行環(huán)境。

5. 熟練掌握C語(yǔ)言,調(diào)用子程序和函數(shù)進(jìn)行讀寫(xiě)數(shù)據(jù)的操作。程序編寫(xiě)過(guò)程中必須用到函數(shù)、指針、文件操作等C語(yǔ)言技能。

二、任務(wù)分解

本軟件能查詢(xún)0~20000年的公歷并能查詢(xún)1900-2200年的農(nóng)歷,是真正的“萬(wàn)年歷”。

1. 顯示封面模塊(初始界面)

(1)執(zhí)行本軟件后首先顯示歡迎信息、版本號(hào)、作者姓名、日期及其它信息。

(2)進(jìn)入方式:按回車(chē)進(jìn)入日歷系統(tǒng),按‘ESC’鍵退出。

2. 密碼檢測(cè)模塊

(1)進(jìn)入日歷系統(tǒng)時(shí),需要密碼驗(yàn)證,若密碼輸入正確則課選擇進(jìn)入日歷系統(tǒng)或進(jìn)入重設(shè)新密碼頁(yè)面,否則若密碼輸入連續(xù)3次錯(cuò)誤按任意鍵退出程序。

(2)若需重設(shè)新密碼,則按‘Y’鍵即進(jìn)入重設(shè)新密碼系統(tǒng)。

(3)在重設(shè)新密碼時(shí),要求輸入正確的舊密碼2次,才能輸入新密碼進(jìn)行重設(shè)。

(4)若輸入舊密碼3次錯(cuò)誤,重設(shè)新密碼失敗,按任意鍵退出到初始界面。

(5)定義文件指針,用來(lái)讀取密碼文件中的密碼數(shù)據(jù)和將新的密碼數(shù)據(jù)寫(xiě)入密碼文件。

3. 查詢(xún)顯示日歷模塊

(1)查詢(xún)并顯示某一個(gè)月的日歷(公歷);

(2)查詢(xún)并顯示某一年的日歷(公歷);

(3)查詢(xún)并顯示某一天是星期幾,屬于該月的第幾個(gè)星期;

(4)查詢(xún)并顯示某一天是該年的第幾天;

(5)查詢(xún)并顯示某一天對(duì)應(yīng)的農(nóng)歷是哪一天;

(6)能夠查詢(xún)中國(guó)傳統(tǒng)的24節(jié)氣所對(duì)應(yīng)的公歷和農(nóng)歷

(7)當(dāng)所查詢(xún)?nèi)諝v完成,按上下光標(biāo)鍵可以進(jìn)行向前向后翻屏查詢(xún);按‘ENTER’鍵重新輸入年月,進(jìn)行新的查詢(xún);按‘ESC’鍵退出程序。

4. 特殊功能模塊:用函數(shù)實(shí)現(xiàn)特殊功能子模塊(子程序)。

(1)通過(guò)文件操作設(shè)置自己的備忘錄;

(2)中國(guó)傳統(tǒng)節(jié)日自動(dòng)提醒或特殊顯示。

5. 學(xué)生們可以自由發(fā)揮增添更豐富的功能。

#include stdio.h

int day,year,month;

int isLeap()

{int isleap;

if(((year%4==0)!(year%100==0))||(year%400==0))isleap=1;

else isleap=0;

return isleap;}

int lastdayofmonth()

{int lastday,isleap;

switch (month)

{case 1: case 3: case 5: case 7:case 8: case 10: case 12: lastday=31;break;

case 4: case 6: case 9: case 11: lastday=30;break;

case 2: {isleap=isLeap();

if (isleap==1) lastday=29;

else lastday=28;}}

return lastday;}

int ValidDate()

{int valid;

int yearOK,monthOK,dayOK;

if ((year1811)(year=2012)) yearOK=1;

else yearOK=0;

if ((month0)(month=12)) monthOK=1;

else monthOK=0;

if ((day0)(day=lastdayofmonth())) dayOK=1;

else dayOK=0;

if(yearOK monthOK dayOK) valid=1;

else valid=0;

return valid;}

int getday(){printf("Enter a month/a day/a year");scanf("%d %d %d",month,day,year);

return ValidDate();}

void incrementdate()

{if (daylastdayofmonth()) day+=1;

else

{day=1;

if (month==12)

{month=1;year+=1;}

else month+=1;}}

void print()

if (ValidDate())printf("nextday is %d/%d/%d",month,day,year);elseprintf("Date error");}

void main(){getday();incrementdate();print();}

補(bǔ)充一下,又發(fā)現(xiàn)一個(gè)問(wèn)題。輸入之后雖然你做了輸入檢查,但是現(xiàn)在的寫(xiě)法,這個(gè)檢查起不到任何作用。可以把main里的getday();改寫(xiě)成if(getday()==0){printf("Date error");return;}意思是如果輸入的日期不正常的話打出出錯(cuò)信息并結(jié)束程序

主要功能包括

1.查詢(xún)某年某月每一天對(duì)應(yīng)星期幾

2.可以查詢(xún)某年某月的上個(gè)月或是下個(gè)月的日歷情報(bào)

3.查詢(xún)某年某月某日是這一年的第幾天,并查詢(xún)改天是星期幾

4.判斷該年是閏年還是平年,判斷這一年的生肖

#include stdio.h

#include conio.h

#include dos.h

void rili(int,int);

int runniansub(int);

int week(int,int,int);

int monthday[12]={31,28,31,30,31,30,31,31,30,31,30,31};

int main()

{ struct date d;

getdate(d);

printf("今天是:%d年 %d月 %d日\(chéng)n",d.da_year,d.da_mon,d.da_day);

rili(d.da_year,d.da_mon-1);

system("pause");

return 0; }

void rili(int year,int month)

{ int d,w,i,s,c,p;

char x;

while(month11) {

month-=12;

year++; }

while(month0) { year--;

month+=12; }

if(runniansub(year)) monthday[1]=29;

printf("%d年%d月\n",year,month+1);

printf("S M T W T F S\n");

s=week(year,month+1,1);

for(i=0; i3*s; i++ ) printf(" ");

c=s;

for(d=1;d=monthday[month];d++) {

if(c6) {

printf("\n");

c=0; }

c++;

printf("%d",d);

printf("%s",(d10)?" ":" "); }

printf("\n");

printf("下月N,上月P,退出Q");

x=getch();

printf("%c\n",x);

if(x=='N' || x=='n') { rili(year,month+1); }

else if(x=='P' || x=='p') { rili(year,month-1); }

else { printf("感謝使用!88\n"); return;} }

int runniansub(int year)

{ return ((year%4==0 year%100!=0) || (year%4==0 year%400==0)); }

int week(int y,int m,int d)

{ if((m==1)||(m==2)) {

m+=12;

y--; }

return ((d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)+1)%7;

#include stdio.h

int IsLeapYear(int); /*定義子函數(shù)*/

main()

{int i,day,year,temp,temp_i; /*定義變量*/

long int Year_days=0;

int Year_Start=1;

int Per_Year_Days;

int month_day[]={31,28,31,30,31,30,31,31,30,31,30,31,29};/*定義

月份*/

printf("We know that 2000.01.01 is saturday!\n");

printf("Please enter the year and month:"); /*提示信息*/

while(1)

{scanf("%d %d",year,temp);

if(getchar()=='q')

exit(0);

while(Year_Start year)

{ if(IsLeapYear(Year_Start)) /*調(diào)用IsLeapYear函數(shù)判斷是否為

閏年*/

Per_Year_Days=366; /*閏年一年366天*/

else

Per_Year_Days=365; /*平年一年365天*/

Year_days=Year_days + Per_Year_Days;

Year_Start++;

} /*輸出每個(gè)月的日歷*/

// for(temp=1;temp=12;temp++)

{switch(temp)

{ case 1: printf("January (%d) \n",year);break;

case 2: printf("February (%d) \n",year); break;

case 3: printf("March (%d) \n",year); break;

case 4: printf("April (%d) \n",year); break;

case 5: printf("May (%d) \n",year); break;

case 6: printf("June (%d) \n",year);break;

case 7: printf("July (%d) \n",year);break;

case 8: printf("Auguest (%d) \n",year); break;

case 9: printf("September (%d) \n",year);break;

case 10:printf("October (%d) \n",year);break;

case 11:printf("Novermber (%d) \n",year); break;

case 12:printf("December (%d) \n",year); break;

default:printf("error\n");

}

i=Year_days%7;

printf("Mon Tue Wed Thu Fri Sat Sun\n"); /*星期提示信息*/

if(i!=0)

for(temp_i=0;temp_ii;temp_i++)

printf(" ");

day=1;

if(IsLeapYear(year)temp==2)

while(day=month_day[12])

{if(day1)

if(Year_days%7==0)

printf("\n");

if(day=10)

printf("%d ",day);

else

printf("%d ",day);

Year_days++;

day++;}

else

while(day=month_day[temp-1])

{ if(day1)

if(Year_days%7==0)

printf("\n");

if(day=10)

printf("%d ",day);

else

printf("%d ",day);

Year_days++;

day++; } /*依次輸入日期*/

printf("\n") ;}}}

int IsLeapYear(int year) /*判斷是否是閏年*/

{ if((year%4==0)(year%100!=0)||(year%400==0))

return 1;

else

return 0;}}

#include stdio.h

int leap (int year)

{if(year%4==0year%100!=0||year%400==0) //判斷是否是閏年

return 1;

else return 0; }

int days_month (int month,int year) //判斷大月和小月

{ if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) //找出大月

return 31;

if(month==4||month==6||month==9||month==11) //找出小月

return 30;

if(month==2leap(year)==1) return 29; //判斷二月是29天還是29天

else return 28; }

int firstday(int month,int year)

{int w;

w=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1; //判斷每個(gè)月開(kāi)始的第一天是星期幾

return w; }

main()

{int i,j=1,k=1,a,b,month,year;

printf("\n input month and year:\n");

scanf("%d%d",month,year); //輸入月和年

b=days_month(month,year);

a=firstday (month,year);

printf(" Sun Mon Tue Wed Thu Fri Sat \n"); //輸出對(duì)應(yīng)當(dāng)月的日歷

if(a==7)

{for(i=1;i=b;i++)

{printf("%4d",i);

if(i%7==0)

{printf("\n"); } } }

if(a!=7)

{while (j=4*a)

{printf(" ");

j++; }

for(i=1;i=b;i++)

{printf("%4d",i);

if(i==7*k-a)

{printf("\n");

k++; } } }

printf("\n"); }

PS:這份是山東交通學(xué)院信息工程系電氣類(lèi)專(zhuān)業(yè)2009年6月C語(yǔ)言課程設(shè)計(jì)的題目之一。以上程序核心是一學(xué)妹寫(xiě)的,因?yàn)樗龑?xiě)出后出現(xiàn)了一些bug,本人負(fù)責(zé)了調(diào)試及bug修補(bǔ)工作。

網(wǎng)頁(yè)標(biāo)題:c語(yǔ)言遞歸函數(shù)求萬(wàn)年歷,c語(yǔ)言遞歸求冪
URL分享:http://chinadenli.net/article23/dsedpcs.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)營(yíng)銷(xiāo)型網(wǎng)站建設(shè)網(wǎng)站策劃企業(yè)建站面包屑導(dǎo)航網(wǎng)站營(yíng)銷(xiāo)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司