亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

C語言實現萬年歷小程序

2020-01-26 13:23:13
字體:
來源:轉載
供稿:網友

一、雜談

大一學了C之后一直困惑,C到底怎么用?它不像HTML那么直觀,也沒有SQL那么常用,更沒有Java那么功能強大,那他為何還存在,并依然火熱呢?

答案很簡單:編程語言是一家,C語言結構簡單,但所蘊含的邏輯思維和其他語言大致相同,適合初學者。

編程不是一蹴而就,能力需要日積月累,推薦想我一樣的初學者,大家自己動手玩玩簡單的C程序!

二、萬年歷

像這樣一個簡單的全年日歷,仔細觀察不難發現由每個月的日歷組成,每個月有最多6行,占6周,每周7天;

程序如下:

設定日歷大小:

int date[12][6][7];  //12個月,每月最多6行,每行7天int calendar[ ][12]={{31,28,31,30,31,30,31,31,30,31,30,31}, //平年   {31,29,31,30,31,30,31,31,30,31,30,31}};  //閏年int year;char title[]="SUN MON TUE WED THU FRI SAT";  //周幾int sw,leap,i,j,k,wd,day;          //變量// sw 周幾,leap 0平年 1閏年,i,j,k輔助變量,wd 第幾周,day 日

提示用戶輸入想要查詢的年份:(回車換行)

printf("Please input the year whose calendar you want to know: ");scanf("%d%*c",&year);

 再計算該年1月1 日是起于周幾:

(由于公元1月1日設為星期六,故3月1日為星期三。為使算法達到最簡,故本算法以“星期”為計算單位。且選3月1日為基月。

每 4年(3個平年+1個閏年)共208周+5天 =208*7+5=1461
每百年共100*(208周+5天)-1天=5217周+5天 (整百年暫設為平年)
每400年共4*(5217周+5天)+1天(整400年閏)=20871周+0天
即400年一輪回?。?nbsp;

long int getyear(int year,int month){ if(month<3) return year-1;  //以元年3月為基石 else return year;}long int getmonth(int month){ if(month<3) return month+13; //將月份調至下個月 else return month+1;}long int getday(int year,int month,int day){ return 1461L*getyear(year,month)/4+153L*getmonth(month)/5+day;  //計算距離元年3月1日天數  //計算方法:每四年一周期1461天(相當于計算平均每年多少天)   //每五個月一周期153天(相當于計算平均每月多少天)  }int getweekday(int year,int month,int day){ return(int)((getday(year,month,day)%7-2+7)%7);        //得該日期的星期數  //得到的天數除以7天取余,減去3月1日周三,其他均為保證正數1-7的附加計算}

判斷是否為閏年:

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;

填充該年日期:

sw=getweekday(year,1,1);for(i=0;i<12;i++) for(wd=0,day=1; day <= calendar[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][5][k]+date[i+6][5][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|"); } scanf("%*c"); }  puts("=================================================================|"); puts("/n Press any key to quit...");

結果為

完整代碼:

#include "stdio.h"long int getyear(int year,int month){ if(month<3) return year-1; else return year;} long int getmonth(int month){ if(month<3) return month+13; else return month+1;} long int getday(int year,int month,int day){ return 1461L*f(year,month)/4+153L*g(month)/5+day;} int getweekday(int year,int month,int day){ return(int)((n(year,month,day)%7-2+7)%7);} int date[12][6][7];int calender[ ][12]={{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";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;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][5][k]+date[i+6][5][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|"); } scanf("%*c"); }puts("=================================================================|");puts("/n Press any key to quit...");}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美色道久久88综合亚洲精品| 久久久久久久一区二区| 91人成网站www| 国产啪精品视频| 亚洲精品按摩视频| 96精品久久久久中文字幕| 96精品久久久久中文字幕| 日韩大胆人体377p| 日韩国产欧美精品在线| 日韩欧美第一页| 久久久久久有精品国产| 亚洲va码欧洲m码| 久久久欧美精品| 亚洲国语精品自产拍在线观看| 日韩成人小视频| 国产精品福利在线观看网址| 国产精品视频播放| 国产精品久久久久久中文字| 日韩在线欧美在线国产在线| 欧美精品在线网站| 亚洲自拍欧美另类| 91久久久精品| 青草青草久热精品视频在线观看| 久久久黄色av| 精品国产一区二区在线| 在线亚洲午夜片av大片| 亚洲va欧美va在线观看| 日韩欧美黄色动漫| 久久精品91久久久久久再现| 九九热在线精品视频| 在线精品国产欧美| 中文字幕不卡在线视频极品| 国产精品老牛影院在线观看| 国产一区二区三区视频在线观看| 一区二区三区国产在线观看| 黄色精品在线看| 国产精品羞羞答答| 亚洲欧洲一区二区三区久久| 夜夜躁日日躁狠狠久久88av| 欧美限制级电影在线观看| 欧美激情亚洲精品| 午夜精品久久久久久99热软件| 精品亚洲一区二区三区在线观看| 精品国产一区二区三区久久久狼| 亚洲free性xxxx护士hd| 久久久久这里只有精品| 欧美成人精品一区二区三区| 久久成人av网站| 91精品免费看| 精品成人在线视频| 精品国产鲁一鲁一区二区张丽| 久久久亚洲精选| 在线播放精品一区二区三区| 欧美精品成人在线| 成人亚洲综合色就1024| 国产精品xxx视频| 久久这里只有精品视频首页| 亚洲人成77777在线观看网| 精品国产福利在线| 久久人人爽人人爽人人片av高清| 精品在线小视频| 日韩精品免费一线在线观看| 国产精品精品一区二区三区午夜版| 97在线视频精品| 欧美日韩国产在线播放| 91久久精品国产| 91av视频在线免费观看| 中文字幕精品国产| 国产精品www网站| 欧美大人香蕉在线| 国产成人久久久| 在线观看中文字幕亚洲| 欧美xxxx18国产| 欧美一区视频在线| 久久精品国产99国产精品澳门| 国产suv精品一区二区三区88区| 97av在线视频免费播放| 国产欧美最新羞羞视频在线观看| 77777亚洲午夜久久多人| 久久国产精品久久久久久| 91极品视频在线| 日韩欧美在线视频日韩欧美在线视频| 九九热这里只有精品免费看| 中文字幕免费精品一区| 久久久精品在线| 红桃视频成人在线观看| 成人高清视频观看www| 欧美性感美女h网站在线观看免费| 岛国av午夜精品| 欧美在线视频观看| 日韩免费av在线| 欧美性猛交xxxx偷拍洗澡| 伊人久久大香线蕉av一区二区| 欧美激情综合色综合啪啪五月| 国产成人精品在线播放| 国产精品一区二区女厕厕| 国产综合久久久久久| 国产精品老牛影院在线观看| 日韩在线免费av| 欧美一区二区三区……| 欧美日本啪啪无遮挡网站| 精品动漫一区二区| 亚洲成**性毛茸茸| 欧美巨猛xxxx猛交黑人97人| 91视频免费在线| 国产精品狼人色视频一区| 欧美日韩国产999| 中文字幕精品国产| 茄子视频成人在线| 久久久中精品2020中文| 91日本在线观看| 亚洲国产精品字幕| 亚洲国产精品久久久久久| 色中色综合影院手机版在线观看| 成人两性免费视频| 国产日本欧美一区二区三区在线| 欧美极品美女视频网站在线观看免费| 亚洲国产另类 国产精品国产免费| 国产精品自拍偷拍视频| 欧美精品18videosex性欧美| 国内免费精品永久在线视频| 久久久爽爽爽美女图片| 久久频这里精品99香蕉| 欧美多人爱爱视频网站| 日韩免费av片在线观看| 日韩欧美在线看| 国产精品v片在线观看不卡| 欧美日韩国产精品一区二区三区四区| 日韩精品视频免费| 欧美最近摘花xxxx摘花| 在线丨暗呦小u女国产精品| 国产精品电影网站| 久久久国产成人精品| 欧美大尺度激情区在线播放| 精品自拍视频在线观看| 久久久久久久999| 欧美黑人xxxⅹ高潮交| 日本高清视频一区| 成人在线视频福利| 国产精品美女www爽爽爽视频| 日韩暖暖在线视频| 91成人在线播放| 97国产一区二区精品久久呦| 国产精品白嫩初高中害羞小美女| 久久97精品久久久久久久不卡| 欧美在线激情视频| 日韩av在线天堂网| 91精品啪在线观看麻豆免费| 久久久久www| 欧美日韩一二三四五区| 日本精品视频在线| 欧美色欧美亚洲高清在线视频| 日韩精品免费在线| 成人精品一区二区三区电影免费| 亚洲精品久久久久久久久久久久久| 搡老女人一区二区三区视频tv| 欧美裸身视频免费观看| 日韩美女视频免费看| 伊人成人开心激情综合网| 久久久久女教师免费一区| 久久久久九九九九| 神马国产精品影院av| 久久av在线播放| 色偷偷888欧美精品久久久|